Submission #1236586

#TimeUsernameProblemLanguageResultExecution timeMemory
1236586AlgorithmWarriorHomework (CEOI22_homework)C++20
0 / 100
203 ms250112 KiB
#include <bits/stdc++.h> using namespace std; struct answer{ int l,r,n; }; answer solve(string& sir,int& id){ if(sir[id]=='?') return {1,1,1}; bool tip; if(sir[id+1]=='a') tip=1; else tip=0; id+=4; answer ans1=solve(sir,id); ++id; answer ans2=solve(sir,id); ++id; int l,r,n; if(tip){ l=ans1.l+ans2.l; r=max(ans1.n+ans2.r,ans1.r+ans2.n); } else{ l=min(ans1.l,ans2.l); r=ans1.r+ans2.r-1; } n=ans1.n+ans2.n; return {l,r,n}; } int main() { string s; int id=0; cin>>s; answer ans=solve(s,id); cout<<ans.r-ans.l+1; 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...