Submission #7042097


Source Code Expand

#include<iostream>
#include <iomanip>
#include<algorithm>
#include<cmath>
using namespace std;

double calcb(long long r,long long n, long long k){
    long double p = (float)r/n;
    // 2倍にして返していることに注意。
    // さらに2倍
    float ans;
    if (n*k < 0) {
        cout << "error:" << n << " " << k << endl;
    }
    ans = sqrt(k*(n-k)) * p; // (r/n);
    return 4 * ans;
}

int main() {
    cout << setprecision(20); //
    long long r,n,m;
    long double g=0;
    cin >> r >> n >> m;
    for (int i=1;i<=n+m-1;i++) {
        if (i<=m) {g += calcb(r,n,i);}
        else if (i <= n-1) {g += max(calcb(r,n,i),calcb(r,n,i-m));}
        else {g += calcb(r,n,i-m);}
    }
    cout << g << endl;
    return 0;
}

Submission Info

Submission Time
Task B - ステップカット
User tmentaiko
Language C++14 (GCC 5.4.1)
Score 200
Code Size 770 Byte
Status AC
Exec Time 3 ms
Memory 256 KB

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 200 / 200
Status
AC × 3
AC × 16
Set Name Test Cases
Sample 00_example_01.txt, 00_example_02.txt, 00_example_03.txt
All 00_example_01.txt, 00_example_02.txt, 00_example_03.txt, 10_rand_01.txt, 10_rand_02.txt, 10_rand_03.txt, 10_rand_04.txt, 10_rand_05.txt, 10_rand_06.txt, 10_rand_07.txt, 10_rand_08.txt, 20_hand_01.txt, 20_hand_02.txt, 20_hand_03.txt, 20_hand_04.txt, 20_hand_05.txt
Case Name Status Exec Time Memory
00_example_01.txt AC 1 ms 256 KB
00_example_02.txt AC 1 ms 256 KB
00_example_03.txt AC 3 ms 256 KB
10_rand_01.txt AC 1 ms 256 KB
10_rand_02.txt AC 1 ms 256 KB
10_rand_03.txt AC 2 ms 256 KB
10_rand_04.txt AC 1 ms 256 KB
10_rand_05.txt AC 1 ms 256 KB
10_rand_06.txt AC 1 ms 256 KB
10_rand_07.txt AC 2 ms 256 KB
10_rand_08.txt AC 1 ms 256 KB
20_hand_01.txt AC 3 ms 256 KB
20_hand_02.txt AC 3 ms 256 KB
20_hand_03.txt AC 3 ms 256 KB
20_hand_04.txt AC 1 ms 256 KB
20_hand_05.txt AC 1 ms 256 KB