Submission #1104152

# Submission time Handle Problem Language Result Execution time Memory
1104152 2024-10-23T03:36:30 Z YudoTLE Balloons (CEOI11_bal) C++17
20 / 100
120 ms 7628 KB
#include <bits/stdc++.h>
using namespace std;

using ll = long long;
using db = double;
using ldb = long double;
using vi = vector<int>;
using vll = vector<ll>;
using vdb = vector<db>;
using vldb = vector<ldb>;
using vb = vector<bool>;
using pi = pair<int, int>;
using pll = pair<ll, ll>;

#define fi first
#define se second
#define pb push_back
#define all(x) x.begin(), x.end()
#define rall(x) x.rbegin(), x.rend()


void solve()
{
	int n; cin >> n;
	vll x(n); vldb r(n);
	for (int i = 0; i < n; i++)
		cin >> x[i] >> r[i];

	auto cmp = [&](int src, int i1, int i2)
	{
		ll dx1 = abs(x[src] - x[i1]);
		ll dx2 = abs(x[src] - x[i2]);

		ldb c1 = dx1 * dx1 / r[i1];
		ldb c2 = dx2 * dx2 / r[i2];

		return c1 <= c2;
	};

	vi stk{0};
	for (int i = 1; i < n; i++)
	{
		while (stk.size() > 1 && cmp(i, stk[stk.size() - 2], stk.back()))
			stk.pop_back();
		
		ll dx = abs(x[stk.back()] - x[i]);
		r[i] = min(r[i], dx * dx / (r[stk.back()] * 4));
		stk.pb(i);
	}

	cout << fixed << setprecision(4);
	for (int i = 0; i < n; i++)
		cout << r[i] << " \n"[i==n-1];
}

int main()
{
	ios_base::sync_with_stdio(false), cin.tie(0);

	int t = 1;
	// cin >> t;
	while (t--) solve();

	return 0;
}
# Verdict Execution time Memory Grader output
1 Correct 1 ms 336 KB 10 numbers
# Verdict Execution time Memory Grader output
1 Correct 1 ms 336 KB 2 numbers
# Verdict Execution time Memory Grader output
1 Incorrect 2 ms 508 KB 17th numbers differ - expected: '213.0000000000', found: '234.0000000000', error = '21.0000000000'
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 3 ms 336 KB 504th numbers differ - expected: '160.9360000000', found: '163.0000000000', error = '2.0640000000'
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 14 ms 1104 KB 653rd numbers differ - expected: '96.2810000000', found: '123.0000000000', error = '26.7190000000'
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 31 ms 2140 KB 14174th numbers differ - expected: '0.7720000000', found: '1.3705000000', error = '0.5985000000'
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 71 ms 4220 KB 7447th numbers differ - expected: '0.9750000000', found: '8.0000000000', error = '7.0250000000'
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 73 ms 4808 KB 4793rd numbers differ - expected: '0.9540000000', found: '10.6223000000', error = '9.6683000000'
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 98 ms 6084 KB 1734th numbers differ - expected: '1856.0220000000', found: '1865.0000000000', error = '8.9780000000'
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 120 ms 7628 KB 2735th numbers differ - expected: '1883.4630000000', found: '1899.0000000000', error = '15.5370000000'
2 Halted 0 ms 0 KB -