Submission #1183060

#TimeUsernameProblemLanguageResultExecution timeMemory
1183060od_aliBalloons (CEOI11_bal)C++20
40 / 100
2095 ms11332 KiB
#pragma GCC optimize("Ofast") #include <bits/stdc++.h> #define He_he_boy ios_base::sync_with_stdio(0), cin.tie(0), cout.tie(0) #define ld long double #define pb push_back #define pf push_front #define eb emplace_back #define fi first #define se second #define ull unsigned long long #define all(a) a.begin(), a.end() #define rall(a) a.rbegin(), a.rend() #define mx_e max_element #define open freopen("fcolor.in", "r", stdin); #define close freopen("fcolor.out", "w", stdout); #define endl cout << '\n' #define run(a) for (ll w23 = 1; w23 <= a; w23++) typedef long long ll; using namespace std; const ld eps = 0.00001, Pi = 3.14159275358979323846; const ll mod = 1e9 + 7; ll mod2 = 998244353, tt; /// -------------------------------------------------------- ld dist(ld x, ld y, ld x2, ld y2){ return sqrt((x - x2) * (x - x2) + (y - y2) * (y - y2)); } void Ali() { ll n; cin >> n; ld x[n + 10] = {}, r2[n + 10] = {}; ld ans[n + 19] = {}; for(ll i = 1;i <= n;i ++){ cin >> x[i] >> r2[i]; ans[i] = x[i]; } ll ot[n + 10] = {}; ot[1] = r2[1]; ans[1] = r2[1]; for(ll i = 2;i <= n;i ++){ ld g =r2[i]; for(ll j = i - 1;j >= 1;j --){ ld l = 0, r = r2[i]; while(l + eps < r){ ld mid = (l + r) / 2.0; if(dist(x[j], ans[j], x[i], mid) <= ans[j] + mid){ r = mid; } else{ l = mid; } } g = min(g, r); } ans[i] = g; } cout << fixed << setprecision(6); for(ll i = 1;i <= n;i ++){ cout << ans[i] << '\n'; } } /// -------------------------------------------------------- int main() { // open // close; He_he_boy; ll gg = 1; tt = 0; //cin >> gg; while (gg--) { Ali(); // cout << '\n'; } /* **PLUS ULTRA** */ }
#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...