QOJ.ac

QOJ

IDProblemSubmitterResultTimeMemoryLanguageFile sizeSubmit timeJudge time
#116750#5152. Circular Caramel Cookiebatrr#AC ✓15ms3756kbC++141.6kb2023-06-30 01:29:492023-06-30 01:29:52

Judging History

你现在查看的是最新测评结果

  • [2023-08-10 23:21:45]
  • System Update: QOJ starts to keep a history of the judgings of all the submissions.
  • [2023-06-30 01:29:52]
  • 评测
  • 测评结果:AC
  • 用时:15ms
  • 内存:3756kb
  • [2023-06-30 01:29:49]
  • 提交

answer

#include <bits/stdc++.h>

#define f first
#define s second
#define pb push_back
#define mp make_pair

using namespace std;

typedef long long ll;
typedef pair<int, int> pii;
typedef pair<long long, long long> pll;

const int N = 300500, inf = 1e9, mod = 998244353;
const ll INF = 1e18;

int sum(int a, int b) {
    a += b;
    if (a >= mod)
        a -= mod;
    return a;
}

int sub(int a, int b) {
    a -= b;
    if (a < 0)
        a += mod;
    return a;
}

int mult(int a, int b) {
    return 1ll * a * b % mod;
}

int bp(int a, int b) {
    int res = 1;
    while (b) {
        if (b & 1)
            res = mult(res, a);
        a = mult(a, a);
        b >>= 1;
    }
    return res;
}

int inv(int x) {
    return bp(x, mod - 2);
}
ll s;
typedef long double ld;
const ld eps = 1e-9;
ll calc(ld F) {
    ll cur = 0;
    for (int p = 1; ; p++) {
//        cout << p << " ? " << endl;
        ld T = F * F - (ld)p * p;
        if (T < eps) break;
        T = sqrtl(T) + 3;
        ll x = T;
        while (x * x + (ll) p * p > F * F) x--;
        cur += x;
    }
    return 4 * cur;
}
void solve() {
    cin >> s;
    ld l = 0;
    ld r = 1e6;
    for (int iter = 0; iter < 60; iter++) {
        ld mid = (l + r) / 2;
        if (calc(mid) > s) r = mid;
        else l = mid;
    }
    cout << fixed << setprecision(12) << (l + r) / 2 << '\n';
}

int main() {
#ifdef DEBUG
    freopen("input.txt", "r", stdin);
#endif
    ios_base::sync_with_stdio(false);
    int t = 1;
//    cin >> t;
    for (int i = 1; i <= t; i++) {
//        cout << "Case #" << i << endl;
        solve();
    }
}

Details

Tip: Click on the bar to expand more detailed information

Test #1:

score: 100
Accepted
time: 5ms
memory: 3756kb

input:

11

output:

2.236067977500

result:

ok found '2.2360680', expected '2.2360680', error '0.0000000'

Test #2:

score: 0
Accepted
time: 9ms
memory: 3656kb

input:

59

output:

5.000000000000

result:

ok found '5.0000000', expected '5.0000000', error '0.0000000'

Test #3:

score: 0
Accepted
time: 8ms
memory: 3648kb

input:

1

output:

1.414213562373

result:

ok found '1.4142136', expected '1.4142136', error '0.0000000'

Test #4:

score: 0
Accepted
time: 9ms
memory: 3640kb

input:

2

output:

1.414213562373

result:

ok found '1.4142136', expected '1.4142136', error '0.0000000'

Test #5:

score: 0
Accepted
time: 8ms
memory: 3688kb

input:

3

output:

1.414213562373

result:

ok found '1.4142136', expected '1.4142136', error '0.0000000'

Test #6:

score: 0
Accepted
time: 8ms
memory: 3640kb

input:

4

output:

2.236067977500

result:

ok found '2.2360680', expected '2.2360680', error '0.0000000'

Test #7:

score: 0
Accepted
time: 15ms
memory: 3672kb

input:

1000000000

output:

17841.881318964096

result:

ok found '17841.8813190', expected '17841.8813190', error '0.0000000'

Test #8:

score: 0
Accepted
time: 8ms
memory: 3584kb

input:

16

output:

3.162277660168

result:

ok found '3.1622777', expected '3.1622777', error '0.0000000'

Test #9:

score: 0
Accepted
time: 8ms
memory: 3672kb

input:

60

output:

5.099019513593

result:

ok found '5.0990195', expected '5.0990195', error '0.0000000'

Test #10:

score: 0
Accepted
time: 8ms
memory: 3688kb

input:

276

output:

10.049875621121

result:

ok found '10.0498756', expected '10.0498756', error '0.0000000'

Test #11:

score: 0
Accepted
time: 6ms
memory: 3648kb

input:

476

output:

13.038404810405

result:

ok found '13.0384048', expected '13.0384048', error '0.0000000'

Test #12:

score: 0
Accepted
time: 8ms
memory: 3648kb

input:

1860

output:

25.019992006394

result:

ok found '25.0199920', expected '25.0199920', error '0.0000000'

Test #13:

score: 0
Accepted
time: 9ms
memory: 3640kb

input:

2837456

output:

951.008412160481

result:

ok found '951.0084122', expected '951.0084122', error '0.0000000'

Test #14:

score: 0
Accepted
time: 15ms
memory: 3756kb

input:

871234652

output:

16653.642724641357

result:

ok found '16653.6427246', expected '16653.6427246', error '0.0000000'

Test #15:

score: 0
Accepted
time: 12ms
memory: 3580kb

input:

345230848

output:

10483.500274240470

result:

ok found '10483.5002742', expected '10483.5002742', error '0.0000000'

Test #16:

score: 0
Accepted
time: 13ms
memory: 3688kb

input:

506145784

output:

12693.594368814532

result:

ok found '12693.5943688', expected '12693.5943688', error '0.0000000'

Test #17:

score: 0
Accepted
time: 12ms
memory: 3636kb

input:

253745836

output:

8987.840063107487

result:

ok found '8987.8400631', expected '8987.8400631', error '0.0000000'

Test #18:

score: 0
Accepted
time: 10ms
memory: 3652kb

input:

659345872

output:

14487.745200685992

result:

ok found '14487.7452007', expected '14487.7452007', error '0.0000000'

Test #19:

score: 0
Accepted
time: 11ms
memory: 3636kb

input:

193830482

output:

7855.448300383627

result:

ok found '7855.4483004', expected '7855.4483004', error '0.0000000'

Test #20:

score: 0
Accepted
time: 5ms
memory: 3640kb

input:

981273

output:

559.504244845381

result:

ok found '559.5042448', expected '559.5042448', error '0.0000000'

Test #21:

score: 0
Accepted
time: 9ms
memory: 3640kb

input:

8732419

output:

1667.851312317738

result:

ok found '1667.8513123', expected '1667.8513123', error '0.0000000'

Test #22:

score: 0
Accepted
time: 6ms
memory: 3660kb

input:

9812379

output:

1767.942306750987

result:

ok found '1767.9423068', expected '1767.9423068', error '0.0000000'

Test #23:

score: 0
Accepted
time: 10ms
memory: 3672kb

input:

98273476

output:

5593.614663167280

result:

ok found '5593.6146632', expected '5593.6146632', error '0.0000000'

Test #24:

score: 0
Accepted
time: 11ms
memory: 3756kb

input:

897972343

output:

16907.244512338491

result:

ok found '16907.2445123', expected '16907.2445123', error '0.0000000'

Test #25:

score: 0
Accepted
time: 6ms
memory: 3656kb

input:

28736734

output:

3025.066114979969

result:

ok found '3025.0661150', expected '3025.0661150', error '0.0000000'

Test #26:

score: 0
Accepted
time: 10ms
memory: 3636kb

input:

88234239

output:

5300.238862541951

result:

ok found '5300.2388625', expected '5300.2388625', error '0.0000000'

Test #27:

score: 0
Accepted
time: 15ms
memory: 3688kb

input:

928379434

output:

17191.110289914378

result:

ok found '17191.1102899', expected '17191.1102899', error '0.0000000'

Test #28:

score: 0
Accepted
time: 9ms
memory: 3752kb

input:

23765822

output:

2751.073245117258

result:

ok found '2751.0732451', expected '2751.0732451', error '0.0000000'

Test #29:

score: 0
Accepted
time: 9ms
memory: 3660kb

input:

3427481

output:

1045.143530812873

result:

ok found '1045.1435308', expected '1045.1435308', error '0.0000000'

Test #30:

score: 0
Accepted
time: 11ms
memory: 3584kb

input:

234987432

output:

8649.266327267301

result:

ok found '8649.2663273', expected '8649.2663273', error '0.0000000'

Test #31:

score: 0
Accepted
time: 9ms
memory: 3756kb

input:

3242949

output:

1016.643988818111

result:

ok found '1016.6439888', expected '1016.6439888', error '0.0000000'

Test #32:

score: 0
Accepted
time: 12ms
memory: 3684kb

input:

238423423

output:

8712.268877852657

result:

ok found '8712.2688779', expected '8712.2688779', error '0.0000000'

Test #33:

score: 0
Accepted
time: 9ms
memory: 3648kb

input:

23784378

output:

2752.147706791915

result:

ok found '2752.1477068', expected '2752.1477068', error '0.0000000'

Test #34:

score: 0
Accepted
time: 10ms
memory: 3672kb

input:

83246355

output:

5148.270486289546

result:

ok found '5148.2704863', expected '5148.2704863', error '0.0000000'