Submission #1218396

#TimeUsernameProblemLanguageResultExecution timeMemory
1218396banganRadio Towers (IOI22_towers)C++20
0 / 100
198 ms1684 KiB
#include "towers.h" #include <bits/stdc++.h> using namespace std; #define pb push_back int i; vector<int> h; void init(int N, std::vector<int> H) { while (i+1 < N && H[i] < H[i+1]) i++; for (int j=0; j<N; j++) h.pb(H[j]); } int max_towers(int L, int R, int D) { if (R<=i || L>=i) return 0; int lo = L-1, hi = i; while (hi-lo > 1) { int mid = (lo+hi) / 2; h[mid] <= h[i]-D ? lo = mid : hi = mid; } cout << lo << endl; int ans = 0; if (lo >= L) ans += lo-L+1; lo = i, hi = R+1; while (hi-lo > 1) { int mid = (lo+hi) / 2; h[mid] <= h[i]-D ? hi = mid : lo = mid; } if (hi <= R) ans += R-hi+1; // cout << (hi) << endl; return max(ans, 1); }
#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...
#Verdict Execution timeMemoryGrader output
Fetching results...