Submission #1153683

#TimeUsernameProblemLanguageResultExecution timeMemory
1153683irmuunGift Exchange (JOI24_ho_t4)C++20
0 / 100
28 ms2628 KiB
#include <bits/stdc++.h>

using namespace std;

#define ll long long
#define pb push_back
#define ff first
#define ss second
#define all(s) s.begin(),s.end()
#define rall(s) s.rbegin(),s.rend()

int main(){
    ios_base::sync_with_stdio(false); cin.tie(0); cout.tie(0);
    ll n;
    cin>>n;
    ll a[n+5],b[n+5];
    ll pre[n+5];
    pre[0]=0;
    for(ll i=1;i<=n;i++){
        cin>>a[i];
    }
    pre[0]=0;
    for(ll i=1;i<=n;i++){
        cin>>b[i];
        pre[i]=pre[i-1]+(a[i]-1==b[i]?1:0);
    }
    ll q;
    cin>>q;
    while(q--){
        ll l,r;
        cin>>l>>r;
        if(pre[r]-pre[l-1]==0){
            cout<<"Yes\n";
        }
        else{
            cout<<"No\n";
        }
        // ll m=r-l+1;
        // pair<ll,ll>pr[m+5];
        // for(ll i=1;i<=m;i++){
        //     pr[i]={b[(l-1)+i],a[(l-1)+i]};
        // }
        // sort(pr+1,pr+m+1);
        // bool ok=true;
        // for(ll i=1;i<=m;){
        //     ll R=i,mx=pr[i].ss;
        //     while(R<m&&pr[R+1].ff<mx){
        //         R++;
        //         mx=max(mx,pr[R].ss);
        //     }
        //     if(R==i){
        //         ok=false;
        //     }
        //     i=R+1;
        // }
        // cout<<(ok?"Yes\n":"No\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...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...