#include <bits/stdc++.h>
using namespace std;
using ll = long long;
const int N = 110000;
int n, h[N], opt;
void init(int N, vector<int> H) {
n = N;
for (int i = 1; i <= n; i++)
h[i] = H[i - 1];
opt = 1;
for (int i = 2; i <= n; i++)
if (h[i] > h[opt]) opt = i;
}
int max_towers(int L, int R, int D) {
L++; R++;
if (opt < L || R < opt || max(h[L], h[R]) > h[opt] - D)
return 1;
return 2;
}
/*
int main() {
int N, Q;
assert(2 == scanf("%d %d", &N, &Q));
std::vector<int> H(N);
for (int i = 0; i < N; ++i) {
assert(1 == scanf("%d", &H[i]));
}
init(N, H);
for (int i = 0; i < Q; ++i) {
int L, R, D;
assert(3 == scanf("%d %d %d", &L, &R, &D));
printf("%d\n", max_towers(L, R, D));
}
return 0;
}
//*/
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |