제출 #1284857

#제출 시각아이디문제언어결과실행 시간메모리
1284857Faisal_SaqibGift Exchange (JOI24_ho_t4)C++20
0 / 100
2596 ms4176 KiB
#include <bits/stdc++.h> using namespace std; #define ll long long const int N=1e5+10; int a[N],b[N],sz=0; pair<int,int> tmp1[N],tmp[N]; bool recur(int l,int r) { if(l==r) return 0; bool ans=a[tmp1[l].second]>tmp1[r].first; for(int j=l;j<r and !ans;j++) { if(recur(l,j) and recur(j+1,r)) { return 1; } } return ans; } int main() { ios::sync_with_stdio(0); cin.tie(0); cout.tie(0); // freopen("input.txt", "r", stdin); // freopen("output.txt", "w", stdout); ll n; cin>>n; for(int i=1;i<=n;i++) { cin>>a[i]; } for(int i=1;i<=n;i++) { cin>>b[i]; } ll q; cin>>q; while(q--) { ll l,r; cin>>l>>r; sz=0; // set<pair<ll,ll>> tep; for(int i=l;i<=r;i++) { // tep.insert({a[i],i}); // tmp[++sz]=a[i]; tmp1[++sz]={b[i],i}; } // sort(tmp+1,tmp+sz+1); sort(tmp1+1,tmp1+sz+1); // int cur=2; // bool pos=(a[tmp1[1].second]>tmp1[sz].first); // for(int i=sz-2;i>=2;i--) // { // pos|=(a[tmp1[1].second]>tmp1[i].first and a[tmp1[i+1].second]>tmp1[sz].first); // } cout<<(recur(1,sz)?"Yes":"No")<<endl; } } // 5 3 6 // 1 2 4
#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...