QOJ.ac
QOJ
ID | 题目 | 提交者 | 结果 | 用时 | 内存 | 语言 | 文件大小 | 提交时间 | 测评时间 |
---|---|---|---|---|---|---|---|---|---|
#501149 | #5152. Circular Caramel Cookie | Ink_bai | WA | 0ms | 3872kb | C++20 | 2.2kb | 2024-08-02 14:51:27 | 2024-08-02 14:51:28 |
Judging History
answer
// #include <bits/stdc++.h>
// #define G2 1.41421356237
// #define int long long
// using namespace std;
// signed main() {
// int n;
// cin >> n;
// if(n % 4 == 0) n += 1;
// long double l = 1, r = n;
// if(l <= G2) l = G2;
// // cout << l << ' ' << r << endl;
// while (l + 1e-9 < r) {
// long double m = (l + r) / 2;
// // cout << l << ' ' << r << ' ' << m << endl;
// int sum = 0, t = 1;
// if(m > 100) t = m - 10;
// for(int i = t + 1; i <= m; i++) {
// for(int j = 1; j <= m; j++) {
// if(i*i + j*j <= m*m) {
// sum++;
// // cout << i << ' ' << j << endl;
// }
// }
// }
// for(int i = t + 1; i <= m; i++) {
// for(int j = 1; j <= t; j++) {
// if(i*i + j*j <= m*m) {
// sum++;
// }
// }
// }
// sum += t * t;
// // cout << sum << endl;
// if(sum * 4 >= n) {
// r = m;
// } else {
// l = m;
// }
// }
// cout << fixed << setprecision(10) << l << endl;
// return 0;
// }
#pragma GCC optimize("Ofast")
#include <bits/stdc++.h>
#define G2 1.41421356237
#define int long long
using namespace std;
signed main() {
ios::sync_with_stdio(0);
cin.tie(0);
cout.tie(0);
int n;
cin >> n;
if(n % 4 == 0) n += 1;
long double l = 1, r = n;
if(l <= G2) l = G2;
while (r - l < 1e-7) {
long double m = (l + r) / 2;
int sum = 0;
int m_int = (int)m;
int tt = 1;
if(n >= 10000) tt = m_int/G2;
else tt = m_int;
for (int i = 1; i <= tt; ++i) {
int max_j = sqrt(m * m - i * i);
sum += max_j;
}
if(n >= 10000) sum = 2 * sum - tt * tt;
sum *= 4;
if(sum >= n) {
r = m;
} else {
l = m;
}
}
cout << fixed << setprecision(10) << l << endl;
return 0;
}
詳細信息
Test #1:
score: 0
Wrong Answer
time: 0ms
memory: 3872kb
input:
11
output:
1.4142135624
result:
wrong answer 1st numbers differ - expected: '2.2360680', found: '1.4142136', error = '0.3675445'