Submission #1071988

#TimeUsernameProblemLanguageResultExecution timeMemory
1071988vjudge1Hedgehog Daniyar and Algorithms (IZhO19_sortbooks)C++17
17 / 100
3062 ms193620 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[1] =0 ; for(int i= 1 ; i <= n; i++){ cin>> w[i]; if(i > 1 ) { p[i] = p[i - 1]; if(w[i]> w[i-1])p[i]++; } 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 ;q ++){ if(p[r[i]] - p[l[i]]==r[i]-l[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...