0
点赞
收藏
分享

微信扫一扫

组装三角形C++版

牛牛手里有N根木棒,分别编号为1~N,现在他从N根里想取出三根木棒,使得三根木棒构成一个三角形,你能计算出牛牛有多少种取法吗?(考虑两种取法中使用的木棒编号有一个不一样就认为是不同的取法)。
输入描述:
首先输入一个正整数N,接下来的一行共有N个正整数表示每个木棒的长度。

N ≤ 50, 木棒的长度 ≤ 10000.

输出描述:
输出一个整数表示方法数。
示例1
输入
5
1 2 3 4 5
输出
3
```c++
#include<iostream>
#include<string>
using namespace std;
bool triangle(int a,int b,int c)
{
bool bl=0;
if(a + b > c && a + c > b && b + c >a) bl=1;
return bl;
}
int main()
{
int s[60],n,t=0;
int i,j,k;
cin>>n;
for(i=0;i<n;i++)cin>>s[i];
for(i=0;i<n-2;i++)
{
for(j=i+1;j<n;j++)
{
for(k=j+1;k<n;k++)
{
if(triangle(s[i],s[j],s[k])==1) t++;
}
}
}
cout<<t;
return 0;
}

举报

相关推荐

0 条评论