#include <bits/stdc++.h>
#define INF 1000000021
#define MOD 1000000007
#define pb push_back
#define sqr(a) (a)*(a)
#define M(a, b) make_pair(a,b)
#define int long long
#define T(a, b, c) make_pair(a, make_pair(b, c))
#define F first
#define S second
#define all(x) x.begin(), x.end()
#define rall(x) x.rbegin(), x.rend()
#define deb(x) cerr << #x << " = " << x << '\n'
#define N 222222
using namespace std;
//using namespace __gnu_pbds;
typedef long double ld;
typedef pair<int,int> pii;
typedef vector<int> vi;
//typedef tree<int, null_type, less<int>, rb_tree_tag, tree_order_statistics_node_update> indexed_set;
const ld pi = 2 * acos(0.0);
//int month[] = {0,31,28,31,30,31,30,31,31,30,31,30,31};
int gcd(int a, int b) {
return b ? gcd (b, a % b) : a;
}
int binpow (int a, int n) {
if (n == 0)
return 1LL;
if (n % 2 == 1)
return ((binpow (a, n-1)%MOD) * 1LL * a)%MOD;
else {
int b = binpow (a, n/2)%MOD;
return (b * b)%MOD;
}
}
//void swap(int &a, int &b){
// b = (a+b) - (a=b);
//}
void solve(){
int n, m;
cin >> n >> m;
vi a(N);
for(int i = 0; i < n; i++){
cin >> a[i];
}
while(m--){
int l, r, k;
cin >> l >> r >> k;
int check = 0, temp = 0;
for (size_t i = 0; i < r; i++)
{
if(check > k) break;
if(temp > a[i]) check = max(check, temp + a[i]);
temp = max(temp, a[i]);
}
cout << (check <= k) << "\n";
}
}
signed main(){
ios::sync_with_stdio(0);
cin.tie(0);
cout.tie(0);
int t = 1;
// cin >> t;
while(t--){
solve();
cout << "\n";
/*
READ IT WHEN YOUR CODE RETURNS WRONG ANSWER, IT CAN HELP YOU
REMEMBER:
1. Array's length can be smaller than you need in your problem
2. Type INT can be smaller than you need in problem so use Long Long
3. Size of string array is smaller than char matrix
*/
}
return 0;
}
Compilation message
sortbooks.cpp: In function 'void solve()':
sortbooks.cpp:59:30: warning: comparison of integer expressions of different signedness: 'size_t' {aka 'long unsigned int'} and 'long long int' [-Wsign-compare]
59 | for (size_t i = 0; i < r; i++)
| ~~^~~
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
1 ms |
1996 KB |
Output is correct |
2 |
Correct |
1 ms |
1980 KB |
Output is correct |
3 |
Incorrect |
1 ms |
1996 KB |
Output isn't correct |
4 |
Halted |
0 ms |
0 KB |
- |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
1 ms |
1996 KB |
Output is correct |
2 |
Correct |
1 ms |
1980 KB |
Output is correct |
3 |
Incorrect |
1 ms |
1996 KB |
Output isn't correct |
4 |
Halted |
0 ms |
0 KB |
- |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Runtime error |
23 ms |
4112 KB |
Execution killed with signal 11 |
2 |
Halted |
0 ms |
0 KB |
- |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Incorrect |
2081 ms |
3288 KB |
Output isn't correct |
2 |
Halted |
0 ms |
0 KB |
- |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
1 ms |
1996 KB |
Output is correct |
2 |
Correct |
1 ms |
1980 KB |
Output is correct |
3 |
Incorrect |
1 ms |
1996 KB |
Output isn't correct |
4 |
Halted |
0 ms |
0 KB |
- |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
1 ms |
1996 KB |
Output is correct |
2 |
Correct |
1 ms |
1980 KB |
Output is correct |
3 |
Incorrect |
1 ms |
1996 KB |
Output isn't correct |
4 |
Halted |
0 ms |
0 KB |
- |