답안 #713623

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
713623 2023-03-22T16:39:29 Z Azther0z Balloons (CEOI11_bal) C++11
100 / 100
592 ms 7172 KB
#include <bits/stdc++.h>
using namespace std;
double cal(double x1,double x2,double r1)
{
	return (x2-x1)*(x2-x1)/(4*r1);
}
int main()
{
	int n;
	cin >> n;
	stack<pair<double,double>> stk; //{x,r}
	vector<double> result;
	while(n--)
	{
		double x,r;
		cin >> x >> r;
		double maxr=r;
		while(!stk.empty())
		{
			maxr=min(maxr,cal(stk.top().first,x,stk.top().second));
			if(maxr>=stk.top().second)
				stk.pop();
			else
				break;
		}
		stk.push({x,maxr});
		result.push_back(maxr);
	}
	cout << fixed << setprecision(3);
	for(auto r:result) 
		cout << r << endl;
}
# 결과 실행 시간 메모리 Grader output
1 Correct 1 ms 212 KB 10 numbers
# 결과 실행 시간 메모리 Grader output
1 Correct 1 ms 212 KB 2 numbers
# 결과 실행 시간 메모리 Grader output
1 Correct 2 ms 304 KB 505 numbers
# 결과 실행 시간 메모리 Grader output
1 Correct 6 ms 340 KB 2000 numbers
# 결과 실행 시간 메모리 Grader output
1 Correct 54 ms 924 KB 20000 numbers
# 결과 실행 시간 메모리 Grader output
1 Correct 161 ms 1904 KB 50000 numbers
2 Correct 151 ms 2064 KB 49912 numbers
# 결과 실행 시간 메모리 Grader output
1 Correct 286 ms 3488 KB 100000 numbers
# 결과 실행 시간 메모리 Grader output
1 Correct 332 ms 4032 KB 115362 numbers
2 Correct 364 ms 4432 KB 119971 numbers
# 결과 실행 시간 메모리 Grader output
1 Correct 472 ms 5244 KB 154271 numbers
2 Correct 558 ms 7172 KB 200000 numbers
# 결과 실행 시간 메모리 Grader output
1 Correct 572 ms 6296 KB 200000 numbers
2 Correct 592 ms 7080 KB 199945 numbers