[Offer收割]编程练习赛41 register

Ended

Participants:163

Verdict:Wrong Answer
Score:0 / 100
Submitted:2017-12-24 13:11:52

Lang:G++

Edit
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
#include <iostream>
#include <string>
#include <algorithm>
#include <cstring>
using namespace std;
char newString[5000100];
int main()
{
    //freopen("E:\\input.txt", "r", stdin);
    memset(newString, '\0', sizeof(newString));
    string str;
    getline(cin, str);
    int left = 0;
    int right = str.size() - 1;
    bool inOrder = true;
    int newLeft = 0;
    int newRight = str.size() - 1;
    while (left < right)
    {
        int leftBrack = str.find('(', left);
        int rightBrack = str.rfind(')', right);
        if (leftBrack == -1)
        {
            for (int i = 0; i <= right - left; i++)
                newString[newLeft + i] = str[left + i];
            break;
        }
        if (leftBrack > rightBrack) {
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX