牛牛的三角形
判断能不能构成三角形,只需要最小的两边之和大于第三边就行了
我们可以先排好序,在进行比较,只需要输出一组即可
代码实现
#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)
