Submission #1138389

#TimeUsernameProblemLanguageResultExecution timeMemory
1138389eri16Homework (CEOI22_homework)C++20
0 / 100
123 ms38548 KiB
#include <bits/stdc++.h>
using namespace std;
string a;
int x,n;

int L,R,l1,l2,r1,r2;

void solve (int &x){
    if (a[x]=='?'){
        L=1;        
        R=n;
        return;
    }
    x++;
    char c=a[x];
    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;
    }
    if (c=='a'){
        R=max(r1,r2);
        L=l1+l2;
    }
    
    
}


int main()
{
    cin>>a;
    for (int i=0; i<a.size(); i++){
        if (a[i]=='?'){n++;}
    }
    int z=0;
    solve (z);
    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...