【題解】Codeforces 1323C. Unusual Competitions

【題目敘述】http://codeforces.com/contest/1323/problem/C

#include <iostream>
using namespace std;
 
int n, cnt, ans, pre;
string s;
 
int main() {
    cin >> n;
    cin >> s;
    pre = -1;
    for (int i = 0; i < n; i++){
        if (s[i] == '(') cnt++;
        else cnt--;
        if (~pre && cnt == 0){
            ans += i-pre+1;
            pre = -1;
        }
        if (cnt < 0 && pre == -1){
            pre = i;
        }
    }
    if (cnt != 0) cout << -1 << "\n";
    else cout << ans << "\n";
}
分享本文 Share with friends