Submission #15188

#TimeUsernameProblemLanguageResultExecution timeMemory
15188myungwoo맛있는 과자 (kriii3_A)C++14
33 / 33
0 ms1204 KiB
#pragma warning(disable:4996) #include <stdio.h> #include <math.h> #include <algorithm> using namespace std; double a, b, c; int n; long long k; long long comb[41][41]; int main() { scanf("%lf%lf%d%lld", &a, &b, &n, &k); c = sqrt(a*a + b*b); if (a>b) swap(a, b); a /= c; b /= c; comb[0][0] = 1; for (int i=1; i<=n; i++) { comb[i][0] = 1; for (int j=1; j<=i; j++) comb[i][j] = comb[i-1][j-1] + comb[i-1][j]; } for (int i=n; i>=0; i--) { if (k <= comb[n][i]) { int ae = 2*(n-i)+1, be = 2*i+1; double ans = 2 * log(c) + ae * log(a) + be * log(b) - log(2.); printf("%.15lf\n", ans); break; } else k -= comb[n][i]; } return 0; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...