CodeForces - 766B Mahmoud and a Triangle

Posted 如有一味绝境,非历十方生死

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了CodeForces - 766B Mahmoud and a Triangle相关的知识,希望对你有一定的参考价值。

【题意概述】

   给定一串数,从中挑三个,判断能否组成一个有正面积的三角形,如果能就输出YES,否则就输出NO
    

【题目分析】

   将 n 个数从大到小进行排列,三个三个往下去判断,只要后两个的和比第一个大的时候就满足条件。

 

【AC】

 1 #include<bits/stdc++.h>
 2 using namespace std;
 3 
 4 bool cmp(int a,int b) {
 5     return a > b;
 6 }
 7 int main() {
 8     int n;
 9     int num[99999];
10     int ans = false;
11     while(~scanf("%d",&n)) {
12         ans = false;
13         for(int i = 0; i < n; i++)
14              scanf("%d",&num[i]);
15              
16         sort(num,num+n,cmp);
17         
18 
19         if(n >= 3)
20             for(int i = 0; i < n-2; i++) 
21                 if(num[i+1]+num[i+2] > num[i]) {
22                     ans = true;
23                     break;
24                 }
25                  
26         if(ans) printf("YES\n");
27         else printf("NO\n");
28     }
29     return 0;
30 } 

 

以上是关于CodeForces - 766B Mahmoud and a Triangle的主要内容,如果未能解决你的问题,请参考以下文章

codeforces 862C. Mahmoud and Ehab and the xor

codeforces 766E Mahmoud and a xor trip

Codeforces Round #396 (Div. 2) C. Mahmoud and a Message DP

Codeforces 862B - Mahmoud and Ehab and the bipartiteness

E - Mahmoud and Ehab and the bipartiteness CodeForces - 862B (dfs黑白染色)

Codeforces Round #396 (Div. 2) C题Mahmoud and a Message(dp)解题报告