QOJ.ac
QOJ
ID | 题目 | 提交者 | 结果 | 用时 | 内存 | 语言 | 文件大小 | 提交时间 | 测评时间 |
---|---|---|---|---|---|---|---|---|---|
#226796 | #5152. Circular Caramel Cookie | Fyind# | WA | 23ms | 3792kb | C++23 | 913b | 2023-10-26 16:32:34 | 2023-10-26 16:32:34 |
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;
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: 23ms
memory: 3596kb
input:
11
output:
2.236068
result:
ok found '2.2360680', expected '2.2360680', error '0.0000000'
Test #2:
score: 0
Accepted
time: 23ms
memory: 3672kb
input:
59
output:
5.000000
result:
ok found '5.0000000', expected '5.0000000', error '0.0000000'
Test #3:
score: 0
Accepted
time: 19ms
memory: 3616kb
input:
1
output:
1.414214
result:
ok found '1.4142140', expected '1.4142136', error '0.0000003'
Test #4:
score: 0
Accepted
time: 23ms
memory: 3612kb
input:
2
output:
1.414214
result:
ok found '1.4142140', expected '1.4142136', error '0.0000003'
Test #5:
score: 0
Accepted
time: 23ms
memory: 3668kb
input:
3
output:
1.414214
result:
ok found '1.4142140', expected '1.4142136', error '0.0000003'
Test #6:
score: -100
Wrong Answer
time: 23ms
memory: 3792kb
input:
4
output:
1.414214
result:
wrong answer 1st numbers differ - expected: '2.2360680', found: '1.4142140', error = '0.3675443'