YACS(上海计算机学会竞赛平台)一星级题集——多边形的判定
2023-12-22 08:41:05
题目描述
给定?n?个整数 a[1]?,a[2]?,…,a[n]?,每个数字表示一条线段的长度,请问能否用这些线段,围成一个封闭的?n?边形?
n?条线段能围成?n?边形的充分必要条件是:任何一条线段的长度都严格小于剩余 n?1?条线段的长度之和。
输入格式
第一行:单个整数n
第二行:n?个整数?1,2,…,a[1]?,a[2]?,…,a[n]?
输出格式
如果可以围成?n?边形,输出?Yes
,否则输出?No
。
数据范围
1≤a[i]?≤1,000,000,000;
对于30%?的数据,1≤n≤100;
对于?60% 的数据,1≤n≤5,000;
对于?100%?的数据,1≤n≤100,000;
样例数据
输入
6? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?|? ? ? ? ? ? ? ? ?3
1 3 5 2 4 6? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? |? ? ? ? ? ? ? ? ?1 1 2
输出
Yes? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?|? ? ? ? ? ? ? ? ? No
代码实现
#include<bits/stdc++.h>
using namespace std;
int n;
long long a[100005],sum;
int main() {
cin>>n;
for(int i=1;i<=n;i++)
{
cin>>a[i];
sum+=a[i];
}
for(int i=1;i<=n;i++)
{
if(a[i]>=sum-a[i])
{
cout<<"No";
return 0;
}
}
cout<<"Yes";
return 0;
}
文章来源:https://blog.csdn.net/A3024857/article/details/135144181
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!