| Task: | Car |
| Sender: | Jerry Mesimäki |
| Submission time: | 2016-09-05 17:28:47 +0300 |
| Language: | C++ |
| Status: | READY |
| Result: | ACCEPTED |
| test | verdict | time | |
|---|---|---|---|
| #1 | ACCEPTED | 0.05 s | details |
| #2 | ACCEPTED | 0.06 s | details |
| #3 | ACCEPTED | 0.06 s | details |
| #4 | ACCEPTED | 0.05 s | details |
| #5 | ACCEPTED | 0.06 s | details |
| #6 | ACCEPTED | 0.05 s | details |
| #7 | ACCEPTED | 0.05 s | details |
| #8 | ACCEPTED | 0.05 s | details |
| #9 | ACCEPTED | 0.06 s | details |
| #10 | ACCEPTED | 0.05 s | details |
| #11 | ACCEPTED | 0.06 s | details |
| #12 | ACCEPTED | 0.06 s | details |
| #13 | ACCEPTED | 0.05 s | details |
| #14 | ACCEPTED | 0.06 s | details |
| #15 | ACCEPTED | 0.05 s | details |
| #16 | ACCEPTED | 0.06 s | details |
Code
#include <bits/stdc++.h>
using namespace std;
double calcVal(double init)
{
return exp(init) + sqrt(init);
}
double diff(double a, double b)
{
return abs(a-b);
}
int main() {
double d;
cin >> d;
double ma = 6;
double mi = 0;
double best = 999999;
double bestX = 3;
double minDiff = 0.0000000001;
while (true) {
double curX = (ma+mi) / 2.00;
double curD = calcVal(curX);
double diffDs = diff(curD, d);
if (diffDs < minDiff) break;
if (diffDs < best) {
best = diffDs;
bestX = curX;
}
if (curD > d) {
ma = curX;
} else {
mi = curX;
}
}
cout.precision(9);
cout << bestX << "\n";
return 0;
}Test details
Test 1
Verdict: ACCEPTED
| input |
|---|
| 9.6472003657 |
| correct output |
|---|
| 2.1037405000 |
| user output |
|---|
| 2.1037405 |
Test 2
Verdict: ACCEPTED
| input |
|---|
| 2.6194457635 |
| correct output |
|---|
| 0.6091893001 |
| user output |
|---|
| 0.6091893 |
Test 3
Verdict: ACCEPTED
| input |
|---|
| 26.6287362847 |
| correct output |
|---|
| 3.2123120855 |
| user output |
|---|
| 3.21231209 |
Test 4
Verdict: ACCEPTED
| input |
|---|
| 85.2060675748 |
| correct output |
|---|
| 4.4200888266 |
| user output |
|---|
| 4.42008883 |
Test 5
Verdict: ACCEPTED
| input |
|---|
| 251.5414091766 |
| correct output |
|---|
| 5.5182249635 |
| user output |
|---|
| 5.51822496 |
Test 6
Verdict: ACCEPTED
| input |
|---|
| 1.4659661390 |
| correct output |
|---|
| 0.1169203746 |
| user output |
|---|
| 0.116920375 |
Test 7
Verdict: ACCEPTED
| input |
|---|
| 4.5758663516 |
| correct output |
|---|
| 1.2417146831 |
| user output |
|---|
| 1.24171468 |
Test 8
Verdict: ACCEPTED
| input |
|---|
| 2.5017283201 |
| correct output |
|---|
| 0.5611260051 |
| user output |
|---|
| 0.561126005 |
Test 9
Verdict: ACCEPTED
| input |
|---|
| 382.9940176537 |
| correct output |
|---|
| 5.9416345784 |
| user output |
|---|
| 5.94163458 |
Test 10
Verdict: ACCEPTED
| input |
|---|
| 6.9450515856 |
| correct output |
|---|
| 1.7281886061 |
| user output |
|---|
| 1.72818861 |
Test 11
Verdict: ACCEPTED
| input |
|---|
| 9.3722280680 |
| correct output |
|---|
| 2.0710457980 |
| user output |
|---|
| 2.0710458 |
Test 12
Verdict: ACCEPTED
| input |
|---|
| 43.7237043698 |
| correct output |
|---|
| 3.7326974052 |
| user output |
|---|
| 3.73269741 |
Test 13
Verdict: ACCEPTED
| input |
|---|
| 121.0792191810 |
| correct output |
|---|
| 4.7782264834 |
| user output |
|---|
| 4.77822648 |
Test 14
Verdict: ACCEPTED
| input |
|---|
| 1.5574455956 |
| correct output |
|---|
| 0.1533964268 |
| user output |
|---|
| 0.153396427 |
Test 15
Verdict: ACCEPTED
| input |
|---|
| 38.9204870549 |
| correct output |
|---|
| 3.6114610786 |
| user output |
|---|
| 3.61146108 |
Test 16
Verdict: ACCEPTED
| input |
|---|
| 8.2852091835 |
| correct output |
|---|
| 1.9308899819 |
| user output |
|---|
| 1.93088998 |
