Submission #1071664

#TimeUsernameProblemLanguageResultExecution timeMemory
1071664vjudge1Hedgehog Daniyar and Algorithms (IZhO19_sortbooks)C++17
17 / 100
310 ms41472 KiB
#include<bits/stdc++.h> using namespace std; #define int long long #define nn "\n"; const int N = 2e5 + 8 , inf = 1e9+7 ; int n , m , q ; signed main() { ios_base::sync_with_stdio(0), cin.tie(0); cin>> n >> q; int w[n+1] , l[q+1] , r[q+1] , k[q+1] , p[n+1]; int mx1 = max(n , q ); int mx2 =0 ; p[0] =0 ; for(int i= 1 ; i <= n; i++){ cin>> w[i]; p[i] = p[i-1]; if(w[i]< mx2){ mx2 = max(mx2 , w[i]); p[i]++; } } for(int i =1 ; i <= q; i++){ cin>> l[i]>> r[i]>> k[i]; } if(mx1 <= 5000){ for(int i =1 ; i <= q; i++){ int mx =w[l[i]] , cnt =0 ; for(int j =l[i]+1 ; j <= r[i] ; j++){ if(w[j]< mx ){ cnt = max(cnt , w[j]+mx); } else mx = w[j]; } if(cnt <= k[i] ){ cout << 1 << nn } else cout << 0 << nn } } else{ for(int i =1 ; i <= q ; i++){ if(p[r[i]] - p[l[i] - 1]==0 || l[i]==r[i])cout << 1<< nn else cout << 0 << nn } } }
#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...