Submission #1302370

#TimeUsernameProblemLanguageResultExecution timeMemory
1302370Jawad_Akbar_JJHomework (CEOI22_homework)C++20
100 / 100
61 ms54392 KiB
#include <iostream> using namespace std; int N, id; string s; pair<int, int> get(){ if (s[id] == '?'){ id++, N++; return {1, 1}; } int s1, s2; char c = s[id + 1]; id += 4, s1 = N; auto [l1, r1] = get(); id++, s1 = N - s1, s2 = N; auto [l2, r2] = get(); id++, s2 = N - s2; if (c == 'i') return {min(l1, l2), r1 + r2 - 1}; int l3 = s1 - r1 + 1, r3 = s1 - l1 + 1; int l4 = s2 - r2 + 1, r4 = s2 - l2 + 1; int L = min(l3, l4), R = r3 + r4 - 1, S = s1 + s2; return {S - R + 1, S - L + 1}; } int main(){ ios_base::sync_with_stdio(false); cin.tie(NULL); cin>>s; auto [l, r] = get(); cout<<r - l + 1<<'\n'; }
#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...