Submission #1343831

#TimeUsernameProblemLanguageResultExecution timeMemory
1343831nguyenkhangninh99Homework (CEOI22_homework)C++20
100 / 100
106 ms116984 KiB
#include <bits/stdc++.h>
using namespace std;
int x = 0, n;
string s;

array<int, 3> Form(){
    if(s[x] == '?') return {1, 1, 1};
    
    x++;
    char o = s[x];
    x += 3;
    array<int, 3> l = Form();
    x += 2;
    array<int, 3> r = Form(); 
    x++;
    if(o == 'i') return {min(l[0], r[0]), l[1] + r[1] - 1, l[2] + r[2]};
    return {l[0] + r[0], max(l[1] + r[2], r[1] + l[2]), l[2] + r[2]};
}

signed main(){
    ios_base::sync_with_stdio(false);
    cin.tie(0); cout.tie(0);

    cin >> s;
    n = count(s.begin(), s.end(), '?');
    auto [l, r, k] = Form();
    cout << r - l + 1;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...