Task: | Mountain Biking |
Sender: | OOliOO_slayer |
Submission time: | 2015-11-25 17:28:14 +0200 |
Language: | C++ |
Status: | READY |
Result: | ACCEPTED |
test | verdict | time | |
---|---|---|---|
#1 | ACCEPTED | 0.04 s | details |
#2 | ACCEPTED | 0.06 s | details |
#3 | ACCEPTED | 0.06 s | details |
#4 | ACCEPTED | 0.06 s | details |
#5 | ACCEPTED | 0.06 s | details |
#6 | ACCEPTED | 0.05 s | details |
#7 | ACCEPTED | 0.05 s | details |
#8 | ACCEPTED | 0.06 s | details |
#9 | ACCEPTED | 0.06 s | details |
Code
#include <iostream> #include <vector> #include <string> #include <algorithm> #include <map> #include <sstream> #include <utility> #include <set> #include <iomanip> using namespace std; typedef long long LL; double f(double a, double L, double v0){ double t = (-2*v0 + sqrt(4*v0*v0 + 8*a*L))/(2*a); return v0 + a*t; } int main(){ cin.tie(0); ios_base::sync_with_stdio(0); double pi = 3.14159265358979323; int N; double g; cin >> N >> g; vector<double> thetas; vector<double> lengths; for(int i = 0; i < N; i++){ double L, angle; cin >> L >> angle; thetas.push_back(2*pi*angle/360.0); lengths.push_back(L); } for(int start = 0; start < N; start++){ double v = 0; for(int seg = start; seg < N; seg++){ double a = g * cos(thetas[seg]); v = f(a,lengths[seg], v); } cout << std::setprecision(15) << v << "\n"; } }
Test details
Test 1
Verdict: ACCEPTED
input |
---|
4 1 1000 89 1000 88 1000 87 1000 86 |
correct output |
---|
18.67856167518548 17.71958953754687 15.62641545506002 11.81155990918434 |
user output |
---|
18.6785616751855 17.7195895375469 15.62641545506 11.8115599091843 |
Test 2
Verdict: ACCEPTED
input |
---|
4 100 994 89 991 84 999 89 773 81 |
correct output |
---|
227.72535853692241 219.97568165830942 166.34830657806216 155.51452760182793 |
user output |
---|
227.725358536922 219.975681658309 166.348306578062 155.514527601828 |
Test 3
Verdict: ACCEPTED
input |
---|
4 1 603 1 11 20 778 2 313 1 |
correct output |
---|
58.37333588228029 46.92153047021062 46.70071502674894 25.01808660085541 |
user output |
---|
58.3733358822803 46.9215304702106 46.7007150267489 25.0180866008554 |
Test 4
Verdict: ACCEPTED
input |
---|
3 100 1000 1 1000 2 998 1 |
correct output |
---|
774.22044947696459 632.01880142685220 446.73213445331610 |
user output |
---|
774.220449476965 632.018801426852 446.732134453316 |
Test 5
Verdict: ACCEPTED
input |
---|
4 33 600 20 600 40 600 60 600 80 |
correct output |
---|
306.95871964523821 238.77149700733121 163.32932325706381 82.92447066825597 |
user output |
---|
306.958719645238 238.771497007331 163.329323257064 82.924470668256 |
Test 6
Verdict: ACCEPTED
input |
---|
4 81 627 80 822 60 411 40 801 20 |
correct output |
---|
507.11074231227801 489.41103887240717 415.86195422299554 349.19392013381482 |
user output |
---|
507.110742312278 489.411038872407 415.861954222996 349.193920133815 |
Test 7
Verdict: ACCEPTED
input |
---|
1 65.678904776 5999 83 |
correct output |
---|
309.895033063524 |
user output |
---|
309.895033063524 |
Test 8
Verdict: ACCEPTED
input |
---|
3 16.5485760467 9210 5 3641 10 7313 12 |
correct output |
---|
811.8442666570775 596.1763940359323 486.5699641893223 |
user output |
---|
811.844266657078 596.176394035932 486.569964189322 |
Test 9
Verdict: ACCEPTED
input |
---|
1 19.5935866382 6927 30 |
correct output |
---|
484.85276685524383 |
user output |
---|
484.852766855244 |