关注
#include<iostream>
#include<cmath>
#include<algorithm>
#include<vector>
using namespace std;
int main() {
int n; cin >> n;
vector<double> a(n);
cin >> a[0];
bool flag = 0;
double du = a[0] + 180; int index;
for (int i = 1; i < n; i++) {
scanf("%lf", &a[i]);
//cin >> a[i]; 这里只能通过60%
if (flag)
continue;
if (a[i] > du) {
flag = 1;
index = i;
}
}
if (flag == 0) {
printf("%.8f", a[n - 1] - a[0]);
return 0;
}
double res = a[index-1] - a[0];
int j = index;
for (int i = 0; i < index; i++) {
if (j == n - 1) {
double tmp = a[j] - a[i];
if (tmp > 180)
tmp = 360 - tmp;
res = max(res, tmp);
}
else {
double tmp = a[j] - a[i], tr = tmp;
while (tmp <= 180 && j<n - 1) {
tr = tmp;
j++; tmp = a[j] - a[i];
}
if(tmp>180)
tmp = 360 - tmp;
if (tr > 180)
tr = 360 - tr;
tr = max(tr, tmp);
if (tr > res)
res = tr;
}
}
res = max(res, a[n - 1] - a[index]);
printf("%.8f", res);
return 0;
} 复杂度O(n)
查看原帖
点赞 评论
相关推荐
点赞 评论 收藏
分享
点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 简历第一个项目做什么 #
3843次浏览 63人参与
# 工作压力大,你会干什么? #
5923次浏览 147人参与
# MiniMax求职进展汇总 #
1530次浏览 25人参与
# 实习的你做了哪些离谱的工作 #
5175次浏览 75人参与
# 找实习记录 #
12512次浏览 238人参与
# 为了入行xx岗,我学了__ #
2901次浏览 45人参与
# AI让你的思考变深了还是变浅了? #
2208次浏览 64人参与
# 租房找室友 #
58106次浏览 238人参与
# 邪修省钱套路 #
4021次浏览 141人参与
# 如果不上班,你会去做什么 #
3286次浏览 112人参与
# 参加哪些竞赛对找工作有帮助? #
4991次浏览 95人参与
# 我的付费上班经历 #
7739次浏览 130人参与
# 职场上哪些行为很加分? #
314226次浏览 3549人参与
# 如果再来一次,你还会选择这个工作吗? #
779147次浏览 6251人参与
# 学历对求职的影响 #
587503次浏览 4001人参与
# 携程工作体验 #
20594次浏览 73人参与
# 产品实习,你更倾向大公司or小公司 #
193604次浏览 2074人参与
# 你们公司哪个部门最累? #
37466次浏览 255人参与
# 一上班就想____,这正常吗? #
13866次浏览 142人参与
# 用一句话形容你的团队氛围 #
34919次浏览 276人参与
# 你们的毕业论文什么进度了 #
1236929次浏览 9938人参与