Submission #1078845

#TimeUsernameProblemLanguageResultExecution timeMemory
1078845LittleOrangeRadio Towers (IOI22_towers)C++17
4 / 100
645 ms1368 KiB
#include "towers.h" #include <vector> #include<bits/stdc++.h> using namespace std; using ll = int; ll n; vector<ll> h; ll mx; struct obj{ ll v,c; bool operator<(const obj &o) const{ return v<o.v; } bool operator>(const obj &o) const{ return v>o.v; } }; void init(int N, std::vector<int> H) { n = N; h = H; for(ll i = 0;i<n;i++) if((i==0||(h[i-1]<h[i]))&&(i==n-1||h[i]>h[i+1])) mx = i; } int max_towers(int L, int R, int D) { /*ll l = L, r = R, d = D; ll ans = 1; vector<obj> a,b; a.push_back({0,0}); for(ll i = l;i<=r;i++){ ll cur = 0; obj oa = {h[i],cur+1}; while(a.size()&&a.back().v>=h[i]) a.pop_back(); a.push_back(oa); }*/ return 1+(L<mx&&mx<R&&max(h[L],h[R])<=h[mx]-D); }
#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...