Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include<bits/stdc++.h>
- using namespace std;
- #define int long long
- int is_correct_bracket_seq(string s, stack<char> bracket) {
- int ans = 0;
- for (int i = 0; i < s.size(); i++) {
- if (s[i] == '(') {
- bracket.push(s[i]);
- }else{
- if(bracket.empty()){
- return 0;
- }else if (s[i] == ')' && bracket.top() == '('){
- ans++;
- bracket.pop();
- }else{
- break;
- }
- }
- }
- return ans;
- }
- signed main(){
- ios::sync_with_stdio(false);cin.tie(nullptr);cout.tie(nullptr);
- string s;
- cin >> s;
- int mx = 0, cnt = 1;
- stack<char> v;
- for(int i = 0; i < s.size(); i++){
- int ans = is_correct_bracket_seq(s.substr(i, s.size()), v);
- if(ans > mx){
- mx = ans;
- cnt = 1;
- }else if(ans == mx){
- cnt++;
- }
- }
- if(mx == 0){
- cout << 0 << ' ' << 1;
- }else cout << mx << " " << cnt;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement