#include "towers.h"
#include <bits/stdc++.h>
using namespace std;
const int inf = 2e9;
const int maxn = 1e5 + 10;
vector<int> h, bit( maxn );
void update( int id, int val ){ for( int i = id; i < maxn; i += i&-i ) bit[i] += val; }
int query( int id ){ int sum = 0; for( int i = id; i > 0; i -= i&-i ) sum += bit[i]; return sum; }
void init(int n, vector<int> H) {
h = H;
for( int i = 1; i + 1 < n; i++ ) if( h[i] < h[i - 1] && h[i] < h[i + 1] ) update( i, 1 );
}
int max_towers(int l, int r, int d) {
if( l == r ) return 1;
int resp = query(r - 1) - query(l);
if( h[l] < h[l + 1] ) resp++;
if( h[r] < h[r - 1] ) resp++;
return resp;
}
# | 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... |