Submission #899199

#TimeUsernameProblemLanguageResultExecution timeMemory
899199AIF_is_carvingInside information (BOI21_servers)C++17
2.50 / 100
128 ms6484 KiB
#include <bits/stdc++.h>
typedef long long ll;

using namespace std;

const int N=2e5+5;
map<int, int> graph;

int main() {
    ios_base::sync_with_stdio(false);
    cin.tie(NULL);

    int n, k; cin>>n>>k;
    graph[1]=1;
    int count=1;

    for(int i=0; i<n+k-1; i++){
        char c; cin>>c;
        if(c=='S'){
            count+=1;
            int u, v; cin>>u>>v;
            graph[max(u,v)]=count;
        }
        else if(c=='Q'){
            int v, chunk; cin>>v>>chunk;
            if(graph[v]==0){
                if(v==chunk) cout<<"yes"<<"\n";
                else cout<<"no"<<"\n";
            }
            else{
                if(graph[chunk]==0) cout<<"no"<<"\n";
                else{
                    if(v==1) cout<<"yes"<<"\n";
                    else if(graph[v]>=graph[chunk]) cout<<"yes"<<"\n";
                    else cout<<"no"<<"\n";
                }
            }
        }
        else{
            int chunk; cin>>chunk;
            if(graph[chunk]==0){
                cout<<1<<"\n";
            }
            else{
                if(chunk==1){
                    int ans=graph.size();
                    cout<<ans<<"\n";
                } 
                else {
                    int ans=graph.size()-graph[chunk]+2;
                    cout<<ans<<"\n";
                }
            }
        }
    }

    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...
#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...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...