您的位置:首页 > 其它

HDU 5655 CA Loves Stick

2016-04-03 11:36 218 查看
题目地址:http://acm.hdu.edu.cn/showproblem.php?pid=5655

思路:只要有一个边大于其他三边的和就不能组成四边形,可以先排序一下,然后做减法,做加法有可能超long long

AC代码:

#include <iostream>
#include <cstdio>
#include <cstdlib>
#include <algorithm>
#include <queue>
#include <stack>
#include <map>
#include <cstring>
#include <climits>
#include <cmath>
#include <cctype>
const int inf = 0x3f3f3f3f;//1061109567
typedef long long LL;
#define lson l,m,rt<<1
#define rson m+1,r,rt<<1|1
using namespace std;
LL a[4];
int main()
{
int t;
scanf("%d",&t);
while(t--)
{
bool flag = false;
for(int i=0; i<4; i++)
{
scanf("%I64d",&a[i]);
if(a[i] == 0)
flag = true;
}
if(flag)
{
printf("No\n");
continue;
}
sort(a,a+4);
LL sum = a[3];
int i;
for(i=0; i<3; i++)
{
sum -= a[i];
if(sum < 0)
break;
}
if(i != 3)
printf("Yes\n");
else
printf("No\n");
}
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: