
关注
include <bits/stdc++.h>
using namespace std;
#define int long long
(54686)#define vi vector<int>
#define pi acos(-1)
double ebs = 1e-6;
double getM1(double s) {
return sqrt(s * 4 * pi);
}
double getM2(double s, int x) {
return sqrt(s * x * 4 * tan(pi / x));
}
void solve() {
int n, len;
cin >> n >> len;
vi a(n);
for (int i = 0; i < n; i++) {
cin >> a[i];
}
auto check = [&](double x) {
double sum = 0;
for (int i = 0; i < n; i++) {
if (a[i] == -1) {
sum += getM1(x);
} else {
sum += getM2(x, a[i]);
}
}
return sum <= len;
};
double l = 0, r = len / 4.0 / pi * len;
while (r - l >= ebs) {
double m = (l + r) / 2;
if (check(m)) l = m;
else r = m;
}
cout << l << '\n';
}
signed main() {
ios::sync_with_stdio(false);
cin.tie(nullptr);
solve();
}
// S1 = x * (n / x)^2 / 4tan(2pi / x / 2) = n * n / x / 4tan(pi / x)
// n^2 = S1 * x * 4tan(pi / x)
// S2 = (n / 2pi)^2 * pi = n * n / 4pi
// n^2 = S2 * 4pi
查看原帖
点赞 2
牛客热帖
更多
正在热议
更多
# 笔试 #
2348950次浏览 27367人参与
# 蔚来求职进展汇总 #
84933次浏览 746人参与
# 牛友故事会 #
507120次浏览 11583人参与
# 找工作有哪些冷知识 #
17120次浏览 208人参与
# 你最希望上岸的公司是? #
112111次浏览 621人参与
# 产品2023笔面经 #
46790次浏览 422人参与
# 谈薪时HR压价该怎么应对 #
189478次浏览 3048人参与
# 关于春招你都做了哪些准备? #
77516次浏览 506人参与
# 得物求职进展汇总 #
84502次浏览 764人参与
# 小米提前批笔试难吗 #
30717次浏览 342人参与
# 实习期间如何提升留用概率? #
32157次浏览 436人参与
# 上班苦还是上学苦呢? #
210558次浏览 1280人参与
# CVTE工作体验 #
8806次浏览 20人参与
# 秋招被确诊为…… #
151870次浏览 696人参与
# 实习中的菜狗时刻 #
326614次浏览 3086人参与
# 机械人的offer怎么选 #
127905次浏览 734人参与
# 生物制药/化工校招攻略 #
38351次浏览 271人参与
# 高学历就一定能找到好工作吗? #
44159次浏览 570人参与
# 面试题刺客退退退 #
244534次浏览 3511人参与
# 你觉得材料专业有必要实习嘛 #
11003次浏览 57人参与