-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathuva 11715.cpp
47 lines (40 loc) · 1.03 KB
/
uva 11715.cpp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
#include<bits/stdc++.h>
using namespace std;
int main() {
int T;
int c = 0;
double u, v, t, a, s;
while (cin >> T) {
if (T == 0)
break;
c++;
cout << "Case " << c << ": ";
switch (T) {
case 1:
cin >> u >> v >> t;
a = (v - u) / t;
s = u * t + 0.5 * a * t * t;
cout << setprecision(3) << fixed << s << " " << a << endl;
break;
case 2:
cin >> u >> v >> a;
t = (v - u) / a;
s = u * t + 0.5 * a * t * t;
cout << setprecision(3) << fixed << s << " " << t << endl;
break;
case 3:
cin >> u >> a >> s;
t = (-u + sqrt(u * u + 2 * a * s)) / a;
v = a * t + u;
cout << setprecision(3) << fixed << v << " " << t << endl;
break;
case 4:
cin >> v >> a >> s;
t = (-v + sqrt(v * v - 2 * a * s)) / -a;
u = v - a * t;
cout << setprecision(3) << fixed << u << " " << t << endl;
break;
}
}
return 0;
}