제출 #879059

#제출 시각아이디문제언어결과실행 시간메모리
879059Elvin_FritlHedgehog Daniyar and Algorithms (IZhO19_sortbooks)C++17
17 / 100
3045 ms15216 KiB
#include <bits/stdc++.h> using namespace std; #define io \ ios_base::sync_with_stdio(0); \ cin.tie(0); \ cout.tie(0); typedef long long ll; ll bp(ll n,ll m){ if(m == 0){ return 1; } if(m == 1){ return n; } if(m%2==0){ return bp(n*n,m/2); } return n*bp(n,m-1); } const int N = 1020, M = 33, inf = 1e9 + 99; const ll inff = 1e12; void solve() { int n, q; cin >> n >> q; vector<int> v(n); for(int i=0;i<n;i++) { cin >> v[i]; } map<pair<int,int>,int> m1 , m2; while(q--) { int l, r, k; cin >> l >> r >> k; if(m1[{l,r}] != 0 && (int)m1[{l,r}] <= k) { cout << 1 << endl; continue; } if(m2[{l,r}] >= k && m2[{l,r}] > 0) { cout << 0 << endl; continue; } int mx = v[l - 1], res = 0,ans = 1; for(int i=l;i<r;i++) { if(mx > v[i]) { res = max(res, mx + v[i]); } mx = max(mx, v[i]); if(res > k) { ans = 0; } } if(ans == 0) { m2[{l,r}] = k; } else{ m1[{l,r}] = k; } cout << ans << '\n'; } } int main() { io; int t = 1; /// cin >> t; while(t--) { solve(); } return 0; }
#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...