关注
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
相关推荐
查看3道真题和解析 点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 如果春招能重来,我会___ #
3786次浏览 40人参与
# 想做Agent可以做哪些岗位? #
1874次浏览 23人参与
# 联宝杯大学生创新大赛,你的技术值得产业级答案 #
42408次浏览 496人参与
# 这个offer值得去吗? #
1537次浏览 22人参与
# 面试官拷打AI项目都会问什么? #
1553次浏览 80人参与
# 除了线上,还能去哪些地方投简历 #
2846次浏览 30人参与
# 你觉得最好用的AI编程工具是_ #
758次浏览 23人参与
# mt对你说过最有启发的一句话 #
115043次浏览 870人参与
# 你会因为行情,降低找工作标准吗? #
6940次浏览 77人参与
# 如何排解工作中的焦虑 #
324710次浏览 2791人参与
# 工作两年想退休了 #
272187次浏览 2057人参与
# 银行笔面经互助 #
195702次浏览 1324人参与
# 双非本科的出路是什么? #
230649次浏览 1657人参与
# 你的第一家实习公司是什么档次? #
73324次浏览 342人参与
# 你和你的mentor相处模式是__ #
5411次浏览 43人参与
# 你的mentor是什么样的人? #
61520次浏览 795人参与
# 科大讯飞求职进展汇总 #
384201次浏览 3069人参与
# 实习第一天,你在干什么 #
3341次浏览 23人参与
# 哪些公司在招寒假实习? #
95370次浏览 768人参与
# 秋招投递记录 #
416971次浏览 3283人参与
# 如果公司降薪,你会跳槽吗? #
160831次浏览 950人参与
