QOJ.ac
QOJ
ID | 题目 | 提交者 | 结果 | 用时 | 内存 | 语言 | 文件大小 | 提交时间 | 测评时间 |
---|---|---|---|---|---|---|---|---|---|
#226812 | #5152. Circular Caramel Cookie | Fyind# | AC ✓ | 36ms | 3924kb | C++23 | 918b | 2023-10-26 16:45:47 | 2023-10-26 16:45:48 |
Judging History
answer
#include <bits/stdc++.h>
using namespace std;
#define _ <<" "<<
#define sz(x) ((int) (x).size())
typedef pair<int, int> pii;
typedef long long ll;
const int maxn = 1e5 + 5;
int n, m;
ll s;
ll calc(ll r2, ll i) {
ll ret = 0;
ll L = 0, R = sqrt(r2)*2+5;
while (L < R) {
ll M = (L+R)/2+1;
if (M*M + i*i > r2) R = M-1;
else L = M;
}
return L;
}
bool check(ll r2) {
if (sqrt(r2) >= maxn*2) return true;
ll cur = 0;
for (ll i = 1;i*i <= r2; ++i) {
cur += calc(r2, i);
}
cur *= 4;
return cur >= s;
}
int main() {
ios_base::sync_with_stdio(0);
cin.tie(0);
cin >> s; s++;
ll L = 1, R = LLONG_MAX/4;
while (L < R) {
ll M = (L+R)/2;
if (check(M)) R = M;
else L = M+1;
}
cout << fixed << setprecision(6) << sqrt((long double) L ) << '\n';
return 0;
}
详细
Test #1:
score: 100
Accepted
time: 22ms
memory: 3924kb
input:
11
output:
2.236068
result:
ok found '2.2360680', expected '2.2360680', error '0.0000000'
Test #2:
score: 0
Accepted
time: 23ms
memory: 3820kb
input:
59
output:
5.000000
result:
ok found '5.0000000', expected '5.0000000', error '0.0000000'
Test #3:
score: 0
Accepted
time: 22ms
memory: 3880kb
input:
1
output:
1.414214
result:
ok found '1.4142140', expected '1.4142136', error '0.0000003'
Test #4:
score: 0
Accepted
time: 22ms
memory: 3824kb
input:
2
output:
1.414214
result:
ok found '1.4142140', expected '1.4142136', error '0.0000003'
Test #5:
score: 0
Accepted
time: 23ms
memory: 3836kb
input:
3
output:
1.414214
result:
ok found '1.4142140', expected '1.4142136', error '0.0000003'
Test #6:
score: 0
Accepted
time: 22ms
memory: 3864kb
input:
4
output:
2.236068
result:
ok found '2.2360680', expected '2.2360680', error '0.0000000'
Test #7:
score: 0
Accepted
time: 36ms
memory: 3900kb
input:
1000000000
output:
17841.881319
result:
ok found '17841.8813190', expected '17841.8813190', error '0.0000000'
Test #8:
score: 0
Accepted
time: 22ms
memory: 3680kb
input:
16
output:
3.162278
result:
ok found '3.1622780', expected '3.1622777', error '0.0000001'
Test #9:
score: 0
Accepted
time: 22ms
memory: 3896kb
input:
60
output:
5.099020
result:
ok found '5.0990200', expected '5.0990195', error '0.0000001'
Test #10:
score: 0
Accepted
time: 19ms
memory: 3776kb
input:
276
output:
10.049876
result:
ok found '10.0498760', expected '10.0498756', error '0.0000000'
Test #11:
score: 0
Accepted
time: 22ms
memory: 3836kb
input:
476
output:
13.038405
result:
ok found '13.0384050', expected '13.0384048', error '0.0000000'
Test #12:
score: 0
Accepted
time: 19ms
memory: 3836kb
input:
1860
output:
25.019992
result:
ok found '25.0199920', expected '25.0199920', error '0.0000000'
Test #13:
score: 0
Accepted
time: 19ms
memory: 3832kb
input:
2837456
output:
951.008412
result:
ok found '951.0084120', expected '951.0084122', error '0.0000000'
Test #14:
score: 0
Accepted
time: 34ms
memory: 3896kb
input:
871234652
output:
16653.642725
result:
ok found '16653.6427250', expected '16653.6427246', error '0.0000000'
Test #15:
score: 0
Accepted
time: 26ms
memory: 3824kb
input:
345230848
output:
10483.500274
result:
ok found '10483.5002740', expected '10483.5002742', error '0.0000000'
Test #16:
score: 0
Accepted
time: 32ms
memory: 3900kb
input:
506145784
output:
12693.594369
result:
ok found '12693.5943690', expected '12693.5943688', error '0.0000000'
Test #17:
score: 0
Accepted
time: 28ms
memory: 3816kb
input:
253745836
output:
8987.840063
result:
ok found '8987.8400630', expected '8987.8400631', error '0.0000000'
Test #18:
score: 0
Accepted
time: 33ms
memory: 3916kb
input:
659345872
output:
14487.745201
result:
ok found '14487.7452010', expected '14487.7452007', error '0.0000000'
Test #19:
score: 0
Accepted
time: 27ms
memory: 3820kb
input:
193830482
output:
7855.448300
result:
ok found '7855.4483000', expected '7855.4483004', error '0.0000000'
Test #20:
score: 0
Accepted
time: 19ms
memory: 3920kb
input:
981273
output:
559.504245
result:
ok found '559.5042450', expected '559.5042448', error '0.0000000'
Test #21:
score: 0
Accepted
time: 23ms
memory: 3860kb
input:
8732419
output:
1667.851312
result:
ok found '1667.8513120', expected '1667.8513123', error '0.0000000'
Test #22:
score: 0
Accepted
time: 23ms
memory: 3924kb
input:
9812379
output:
1767.942307
result:
ok found '1767.9423070', expected '1767.9423068', error '0.0000000'
Test #23:
score: 0
Accepted
time: 26ms
memory: 3824kb
input:
98273476
output:
5593.614663
result:
ok found '5593.6146630', expected '5593.6146632', error '0.0000000'
Test #24:
score: 0
Accepted
time: 35ms
memory: 3816kb
input:
897972343
output:
16907.244512
result:
ok found '16907.2445120', expected '16907.2445123', error '0.0000000'
Test #25:
score: 0
Accepted
time: 24ms
memory: 3904kb
input:
28736734
output:
3025.066115
result:
ok found '3025.0661150', expected '3025.0661150', error '0.0000000'
Test #26:
score: 0
Accepted
time: 26ms
memory: 3924kb
input:
88234239
output:
5300.238863
result:
ok found '5300.2388630', expected '5300.2388625', error '0.0000000'
Test #27:
score: 0
Accepted
time: 35ms
memory: 3780kb
input:
928379434
output:
17191.110290
result:
ok found '17191.1102900', expected '17191.1102899', error '0.0000000'
Test #28:
score: 0
Accepted
time: 24ms
memory: 3776kb
input:
23765822
output:
2751.073245
result:
ok found '2751.0732450', expected '2751.0732451', error '0.0000000'
Test #29:
score: 0
Accepted
time: 23ms
memory: 3904kb
input:
3427481
output:
1045.143531
result:
ok found '1045.1435310', expected '1045.1435308', error '0.0000000'
Test #30:
score: 0
Accepted
time: 28ms
memory: 3860kb
input:
234987432
output:
8649.266327
result:
ok found '8649.2663270', expected '8649.2663273', error '0.0000000'
Test #31:
score: 0
Accepted
time: 23ms
memory: 3816kb
input:
3242949
output:
1016.643989
result:
ok found '1016.6439890', expected '1016.6439888', error '0.0000000'
Test #32:
score: 0
Accepted
time: 28ms
memory: 3836kb
input:
238423423
output:
8712.268878
result:
ok found '8712.2688780', expected '8712.2688779', error '0.0000000'
Test #33:
score: 0
Accepted
time: 24ms
memory: 3864kb
input:
23784378
output:
2752.147707
result:
ok found '2752.1477070', expected '2752.1477068', error '0.0000000'
Test #34:
score: 0
Accepted
time: 25ms
memory: 3680kb
input:
83246355
output:
5148.270486
result:
ok found '5148.2704860', expected '5148.2704863', error '0.0000000'