Submission #1170003

#TimeUsernameProblemLanguageResultExecution timeMemory
1170003aentrenusTwo Antennas (JOI19_antennas)C++20
2 / 100
3092 ms2372 KiB
#include<bits/stdc++.h> using namespace std; using ll = long long; using ull = unsigned long long; using vi = vector<int>; using vl = vector<ll>; using vb = vector<bool>; using pii = pair<int, int>; using pll = pair<ll, ll>; using str = string; #define all(a) a.begin(), a.end() #define print(a) for (auto elem:a) cout<<elem<<' '; cout<<'\n' #define segprep(b) resize(1<<((int)ceil(log2(b.size()))+1)) #define FOR(a) for (int _ = 0; _ < a; _++) struct antenna{ int h, a, b; }; int n; vector<antenna> ants; int ans_range(const int &l, const int &r){ int best = -1; for (int i = l; i < r; i++){ for (int j = max(l, i-ants.at(i).b); j <= i-ants.at(i).a; j++){ if ((j+ants.at(j).a <= i) && (i <= j+ants.at(j).b)){ best = max(best, abs(ants.at(i).h-ants.at(j).h)); } } for (int j = i+ants.at(i).a; j <= min(r-1, i+ants.at(i).b); j++){ if ((j-ants.at(j).a >= i) && (i >= j-ants.at(j).b)){ best = max(best, abs(ants.at(i).h-ants.at(j).h)); } } } return best; } void solve1(){ int q; cin>>q; int l, r; while(q--){ cin>>l>>r; cout<<ans_range(l-1, r)<<'\n'; } } int main(){ ios_base::sync_with_stdio(0); cin.tie(0); cin>>n; ants.resize(n); for (auto &[h, a, b]:ants){ cin>>h>>a>>b; } solve1(); }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...