Submission #1266897

#TimeUsernameProblemLanguageResultExecution timeMemory
1266897datluong_04Balloons (CEOI11_bal)C++20
100 / 100
86 ms11336 KiB
#include <bits/stdc++.h> using namespace std; #define ll long long #define maxn 200005 #define FOR(i , a , b) for(int i = a ; i <= b; i++) #define FAST ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0); long double x[maxn] , r[maxn] , R[maxn]; int main(){ FAST; int n; cin >> n; FOR(i , 1 , n){ ll _x , _r; cin >> _x >> _r; x[i] = (long double) _x; r[i] = (long double) _r; } stack<int> st; FOR(i , 1 , n){ long double Ri = r[i]; // ban kinh toi da ma bong bong htai co the bom duoc while(!st.empty()){ int j = st.top(); long double dx = (x[i] - x[j]); long double cand = (dx * dx) /( 4 * R[j]); if(Ri > cand) Ri = cand; // Ri = min(Ri , dx^2 / 4Rj); if(Ri > R[j]) st.pop(); else break; } R[i] = Ri; st.push(i); } FOR(i , 1 , n) cout << fixed << setprecision(3) << R[i] << "\n"; }
#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...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...