제출 #1186548

#제출 시각아이디문제언어결과실행 시간메모리
1186548asli_bgGift Exchange (JOI24_ho_t4)C++20
0 / 100
0 ms328 KiB
#include <bits/stdc++.h> using namespace std; #include <ext/pb_ds/assoc_container.hpp> using namespace __gnu_pbds; #define int long long typedef pair<int,int> pii; typedef vector<int> vi; typedef vector<pii> vii; typedef vector<bool> vb; typedef tree<pii,null_type,less<pii>,rb_tree_tag, tree_order_statistics_node_update> oset; #define fi first #define se second #define pb push_back #define pf push_front #define mid (l+r)/2 #define all(x) x.begin(),x.end() #define FOR(i,a) for(int i=0;i<(a);i++) #define FORE(i,a,b) for(int i=(a);i<(b);i++) #define cont(x) for(auto el:x) cout<<el<<' ';cout<<endl; #define contp(x) for(auto el:x) cout<<el.fi<<'-'<<el.se<<' ';cout<<endl; #define sp <<" "<< #define DEBUG(x) cout<<(#x) sp x<<endl #define carp(a,b) (((a%MOD)*(b%MOD))%MOD) #define topla(a,b) (((a%MOD)+(b%MOD))%MOD) const int INF=1e18; const int MAXN=2e5+5; const int MOD=998244353; int n; vi a,b; bool mm(pii a,pii b){ return a.se<b.se; } signed main(){ ios_base::sync_with_stdio(false); cin.tie(0); cout.tie(0); cin>>n; a.resize(n+1); b.resize(n+1); FORE(i,1,n+1) cin>>a[i]; FORE(i,1,n+1) cin>>b[i]; //build(); int q; cin>>q; while(q--){ int l,r; cin>>l>>r; map<int,int> say; vii bir; vi iki; FORE(i,l,r+1){ bir.pb({a[i],b[i]}); say[a[i]]++; iki.pb(a[i]); } sort(all(bir),mm); sort(all(iki)); bool f=true; int sz=bir.size(); int tut=-1; for(int i=sz-1;i>=0;i--){ if(bir[i].fi==iki.back() and say[iki.back()]==1){ tut=iki.back(); iki.pop_back(); } if(iki.empty() or bir[i].se>iki.back()){ f=false; break; } iki.pop_back(); if(tut!=-1){ iki.pb(tut); tut=-1; } } if(f) cout<<"Yes"<<endl; else cout<<"No"<<endl; } }
#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...