Submission #1136949

#TimeUsernameProblemLanguageResultExecution timeMemory
1136949ariukHomework (CEOI22_homework)C++20
100 / 100
136 ms54424 KiB
#include<bits/stdc++.h> using namespace std; typedef long long ll; string s; int n, x; int L, R; void solve(int &x) { if(s[x] == '?'){ L = 1; R = n; return; } x++; char c = s[x]; int l1, r1, l2, r2; x += 3; solve(x); l1 = L; r1 = R; x += 2; solve(x); l2 = L; r2 = R; x++; if(c == 'i'){ L = min(l1, l2); R = r1 + r2 - n - 1; }else{ L = l1 + l2; R = max(r1, r2); } } int main(){ cin >> s; for(int i = 0; i < s.size(); i++){ if (s[i] == '?') n++; } int x = 0; solve(x); cout << R - L + 1 << endl; return 0; }
#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...