题目链接:这里
题意 : 问你能否从n个数字中抽出来三个,使得可以构成不退化的三角形。
解法 : 只要排个序,然后判断a[i],a[i-1],a[i+1]能否组成三角形就好了,这样贪心肯定是对的。考虑排序之后a,b,c,d,如果a,b,c不能构成三角形,那么a,b,d肯定更不能构成三角形。

//CF 766B

#include <bits/stdc++.h>
using namespace std;
const int maxn = 1e5+7;
int n, a[maxn];

int main(){
    cin >> n;
    for(int i = 1; i <= n; i++) cin >> a[i];
    sort(a+1, a+n+1);
    int flag = 0;
    for(int i = 2; i <= n-1; i++){
        if(a[i]+a[i-1] > a[i+1]) flag = 1;
    }
    if(flag) puts("YES");
    else puts("NO");
}