Submission #570658

#TimeUsernameProblemLanguageResultExecution timeMemory
570658RandomLBBalloons (CEOI11_bal)C++17
100 / 100
246 ms6732 KiB
#include <bits/stdc++.h> #include <ext/pb_ds/assoc_container.hpp> using namespace std; using namespace __gnu_pbds; typedef long long ll; typedef long double ld; typedef pair<int, int> pi; typedef pair<ll, ll> pll; template<class T> using indexed_set = tree<T, null_type, less_equal<T>, rb_tree_tag, tree_order_statistics_node_update>; #define fbo find_by_order //(k-indexed val with 0-indexing) #define ook order_of_key //(num of vals in set that are strictly less) #define ms(x, a) memset(x, a, sizeof(x)) #define siz(x) (int)x.size() #define len(x) (int)x.length() #define pb push_back #define all(x) x.begin(), x.end() #define rall(x) x.rbegin(), x.rend() #define F first #define S second #define deb(...) logger(#__VA_ARGS__, __VA_ARGS__) template<typename ...Args> void logger(string vals, Args&&... values){ cout << vals << " = "; string delim = ""; (...,(cout << delim << values, delim = ", ")); cout << endl; } const int INF = 0x3f3f3f3f; const ll LLINF = 0x3f3f3f3f3f3f3f3f; const int MOD = 1e9+7; //=========================================== inline ld lim(ld pp, pair<ld, ld> cir){ return (cir.F-pp)*(cir.F-pp)/(4*cir.S); } int main(){ cin.tie(0)->sync_with_stdio(0); //freopen("test.txt", "r", stdin); int n; cin >> n; vector<pair<ld, ld>> q; for (int i = 1; i <= n; i++){ ld x, r; cin >> x >> r; while (siz(q)){ r = min(r, lim(x, q.back())); if (r >= q.back().S) q.pop_back(); else break; } cout << fixed << setprecision(9) << r << "\n"; q.push_back({x, r}); } }
#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...