#include <bits/stdc++.h>
using namespace std;
typedef vector<int> vi;
typedef pair<int, int> ii;
typedef vector<ii> vii;
int main(){
int n, m; cin >> n >> m;
vi w; w.assign(n, 0);
for (int i=0; i<n; i++) cin >> w[i];
for (int i=0; i<m; i++){
int l, r, k;
cin >> l >> r >> k; l--; r--;
//Solve
vii v; v.assign(r-l+1, ii());
int res=0;
for (int i=l; i<=r; i++) v[i-l]=ii(w[i], i);
sort(v.begin(), v.end());
for (int p=0; p<r-l+1; p++){
int a = v[p].first;
int b = v[p].second;
if (b==0) continue;
int c = w[max_element(w.begin()+l, w.begin()+l+b)-w.begin()];
if (a<c) res = max(res, a+c);
}
if (res<=k) cout << 1 << endl;
else cout << 0 << endl;
//cout << res << endl;
//EndSolve
}
}
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
1 ms |
256 KB |
Output is correct |
2 |
Correct |
0 ms |
256 KB |
Output is correct |
3 |
Incorrect |
4 ms |
256 KB |
Output isn't correct |
4 |
Halted |
0 ms |
0 KB |
- |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
1 ms |
256 KB |
Output is correct |
2 |
Correct |
0 ms |
256 KB |
Output is correct |
3 |
Incorrect |
4 ms |
256 KB |
Output isn't correct |
4 |
Halted |
0 ms |
0 KB |
- |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Runtime error |
652 ms |
8640 KB |
Execution killed with signal 11 (could be triggered by violating memory limits) |
2 |
Halted |
0 ms |
0 KB |
- |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Runtime error |
34 ms |
1272 KB |
Execution killed with signal 11 (could be triggered by violating memory limits) |
2 |
Halted |
0 ms |
0 KB |
- |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
1 ms |
256 KB |
Output is correct |
2 |
Correct |
0 ms |
256 KB |
Output is correct |
3 |
Incorrect |
4 ms |
256 KB |
Output isn't correct |
4 |
Halted |
0 ms |
0 KB |
- |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
1 ms |
256 KB |
Output is correct |
2 |
Correct |
0 ms |
256 KB |
Output is correct |
3 |
Incorrect |
4 ms |
256 KB |
Output isn't correct |
4 |
Halted |
0 ms |
0 KB |
- |