牛牛的三角形

链接

判断能不能构成三角形,只需要最小的两边之和大于第三边就行了

我们可以先排好序,在进行比较,只需要输出一组即可

代码实现

#include<bits/stdc++.h>
using namespace std;
int main(){
    int n;
    cin>>n;
    vector<long>ans;
    for(int i=0;i<n;i++){ 
        int num;cin>>num;
        ans.push_back(num);
    }
    sort(ans.begin(),ans.end());
    for(int i=0;i<n-2;i++){
        if(ans[i]+ans[i+1]>ans[i+2]){
            cout<<ans[i]<<" "<<ans[i+1]<<" "<<ans[i+2];
            return 0;
        }
    }
    cout<<"No solution";
}

时间复杂度:O(n log n)

空间复杂度:O(n)

全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务