zoukankan      html  css  js  c++  java
  • hdu 5655 CA Loves Stick

    题意

    给你四个木棍的长度,问你这四根木棍能不能组成一个四边形。

    思路

    四边形成立的条件比较简单,就是任意三边之和大于第四边。

    但是这道题目有两个坑。

    一是输入的四条边中可能会出现长度为0的边。

    二是四个数据都比较大,直接加减都容易爆long long。我的解决方案是使用unsighed long long,sort后判断a[0]+a[1] < a[2] + a[3]。

    AC代码:

     1 #include <iostream>
     2 #include <cstdio>
     3 #include <cstring>
     4 #include <algorithm>
     5 #include <set>
     6 #include <map>
     7 using namespace std;
     8 unsigned long long  a[6];
     9 int main()
    10 {
    11     int t;
    12     scanf("%d",&t);
    13     while(t--){
    14        scanf("%I64u%I64u%I64u%I64u",&a[0],&a[1],&a[2],&a[3]);
    15        sort(a,a+4);
    16 
    17        if(a[0]>0 && a[0]+a[1]>a[3]-a[2]){
    18            printf("Yes
    ");
    19        }else{
    20            printf("No
    ");
    21        }
    22 
    23     }
    24     return 0;
    25 }
  • 相关阅读:
    OpenFlow 消息
    Revolving Digits
    Tavas and Malekas
    Prefixes and Suffixes
    快速构造后缀自动机
    REBXOR
    BZOJ3689 异或之
    BZOJ3689 异或之
    最长路径异或和
    BZOJ 1355 [Baltic2009] Bazinga
  • 原文地址:https://www.cnblogs.com/UniqueColor/p/5422661.html
Copyright © 2011-2022 走看看