[编程题] 组装三角形
2017-04-06 本文已影响0人
yuanxiaolan
牛牛手里有N根木棒,分别编号为1~N,现在他从N根里想取出三根木棒,使得三根木棒构成一个三角形,你能计算出牛牛有多少种取法吗?(考虑两种取法中使用的木棒编号有一个不一样就认为是不同的取法)。
输入描述:
首先输入一个正整数N,接下来的一行共有N个正整数表示每个木棒的长度。
N ≤ 50, 木棒的长度 ≤ 10000.
输出描述:
输出一个整数表示方法数。
输入例子:
5
1 2 3 4 5
输出例子:
3
import java.util.Scanner;
public class Main{
public static void main(String arg[]){
Scanner sc=new Scanner(System.in);
int count=0;
int N=sc.nextInt();
int[] a=new int[N];
for(int i=0;i<N;i++){
a[i]=sc.nextInt();
}
for(int i=0;i<=N-3;i++){
for(int j=i+1;j<=N-1;j++)
for(int k=j+1;k<=N-1;k++){
if((a[i]+a[j])>a[k]&&(a[i]+a[k])>a[j]&&(a[j]+a[k])>a[i])
count++;
else
continue;
}
}
System.out.println(count);
}
}