Submission #398754

# Submission time Handle Problem Language Result Execution time Memory
398754 2021-05-04T19:26:52 Z ritul_kr_singh Mobile (BOI12_mobile) C++17
100 / 100
754 ms 35308 KB
#include <bits/stdc++.h>
using namespace std;
#define int long long
#define sp << ' ' <<
#define nl << '\n'

vector<array<double, 2>> a;
int n; double l;

bool possible(double x){
	double last = 0, w;
	for(auto &i : a){
		if(x * x < i[1]) continue;
		w = sqrt(x * x - i[1]);
		if(last >= i[0] - w) last = max(last, i[0] + w);
	}
	return last >= l;
}

signed main(){
	cin.tie(0)->sync_with_stdio(0);
	cin >> n >> l;
	a.resize(n);
	for(auto &i : a) cin >> i[0] >> i[1], i[1] *= i[1];

	double low = 0, high = 4e9;
	for(int _=0; _<45; ++_){
		double mid = (low + high) / (double) 2.0;
		if(possible(mid)) high = mid - 1e-5;
		else low = mid;
	}

	cout << fixed << setprecision(5) << low;
}
# Verdict Execution time Memory Grader output
1 Correct 1 ms 204 KB Output is correct
2 Correct 1 ms 204 KB Output is correct
3 Correct 1 ms 204 KB Output is correct
4 Correct 1 ms 204 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 204 KB Output is correct
2 Correct 1 ms 204 KB Output is correct
3 Correct 1 ms 316 KB Output is correct
4 Correct 1 ms 204 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 2 ms 332 KB Output is correct
2 Correct 2 ms 332 KB Output is correct
3 Correct 2 ms 332 KB Output is correct
4 Correct 2 ms 336 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 4 ms 332 KB Output is correct
2 Correct 4 ms 380 KB Output is correct
3 Correct 4 ms 328 KB Output is correct
4 Correct 4 ms 460 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 4 ms 332 KB Output is correct
2 Correct 4 ms 460 KB Output is correct
3 Correct 4 ms 332 KB Output is correct
4 Correct 4 ms 460 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 4 ms 332 KB Output is correct
2 Correct 4 ms 460 KB Output is correct
3 Correct 4 ms 332 KB Output is correct
4 Correct 4 ms 464 KB Output is correct
5 Correct 4 ms 332 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 54 ms 2260 KB Output is correct
2 Correct 58 ms 2268 KB Output is correct
3 Correct 35 ms 1664 KB Output is correct
4 Correct 57 ms 2624 KB Output is correct
5 Correct 29 ms 1484 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 47 ms 2164 KB Output is correct
2 Correct 46 ms 2116 KB Output is correct
3 Correct 52 ms 2348 KB Output is correct
4 Correct 54 ms 2700 KB Output is correct
5 Correct 61 ms 3060 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 55 ms 2252 KB Output is correct
2 Correct 59 ms 2364 KB Output is correct
3 Correct 57 ms 2500 KB Output is correct
4 Correct 75 ms 3776 KB Output is correct
5 Correct 55 ms 2592 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 73 ms 2656 KB Output is correct
2 Correct 72 ms 3268 KB Output is correct
3 Correct 64 ms 2884 KB Output is correct
4 Correct 76 ms 3904 KB Output is correct
5 Correct 64 ms 3012 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 78 ms 2644 KB Output is correct
2 Correct 72 ms 3272 KB Output is correct
3 Correct 64 ms 2884 KB Output is correct
4 Correct 78 ms 3776 KB Output is correct
5 Correct 65 ms 3024 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 315 ms 9728 KB Output is correct
2 Correct 368 ms 9796 KB Output is correct
3 Correct 368 ms 9784 KB Output is correct
4 Correct 363 ms 9540 KB Output is correct
5 Correct 328 ms 9792 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 372 ms 9764 KB Output is correct
2 Correct 386 ms 9780 KB Output is correct
3 Correct 319 ms 9800 KB Output is correct
4 Correct 355 ms 9800 KB Output is correct
5 Correct 337 ms 9796 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 381 ms 11348 KB Output is correct
2 Correct 447 ms 11236 KB Output is correct
3 Correct 433 ms 11460 KB Output is correct
4 Correct 441 ms 11076 KB Output is correct
5 Correct 390 ms 11460 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 442 ms 11232 KB Output is correct
2 Correct 461 ms 11460 KB Output is correct
3 Correct 386 ms 11360 KB Output is correct
4 Correct 442 ms 11076 KB Output is correct
5 Correct 402 ms 11356 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 458 ms 12868 KB Output is correct
2 Correct 513 ms 12740 KB Output is correct
3 Correct 506 ms 12740 KB Output is correct
4 Correct 533 ms 12684 KB Output is correct
5 Correct 448 ms 12868 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 526 ms 12796 KB Output is correct
2 Correct 528 ms 12916 KB Output is correct
3 Correct 454 ms 12932 KB Output is correct
4 Correct 508 ms 12740 KB Output is correct
5 Correct 465 ms 12616 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 506 ms 14400 KB Output is correct
2 Correct 582 ms 14244 KB Output is correct
3 Correct 582 ms 14244 KB Output is correct
4 Correct 590 ms 14276 KB Output is correct
5 Correct 534 ms 14276 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 595 ms 14400 KB Output is correct
2 Correct 605 ms 14276 KB Output is correct
3 Correct 519 ms 14276 KB Output is correct
4 Correct 580 ms 14276 KB Output is correct
5 Correct 549 ms 14228 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 642 ms 17496 KB Output is correct
2 Correct 731 ms 17476 KB Output is correct
3 Correct 725 ms 30428 KB Output is correct
4 Correct 745 ms 35268 KB Output is correct
5 Correct 663 ms 29528 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 741 ms 17476 KB Output is correct
2 Correct 754 ms 29268 KB Output is correct
3 Correct 669 ms 28372 KB Output is correct
4 Correct 739 ms 35308 KB Output is correct
5 Correct 671 ms 30660 KB Output is correct