Cod sursa(job #806110)
Utilizator | Data | 1 noiembrie 2012 20:43:23 | |
---|---|---|---|
Problema | Numarare triunghiuri | Scor | 70 |
Compilator | c | Status | done |
Runda | Arhiva de probleme | Marime | 0.92 kb |
#include <stdio.h>
int v[801];
int main(){
int n,i,j,l,s;
FILE *fin,*fout;
fin=fopen("nrtri.in","r");
fout=fopen("nrtri.out","w");
fscanf(fin,"%d",&n);
if(n==1||n==2)
fprintf(fout,"0");
else {
for(i=0;i<n;i++)
fscanf(fin,"%d",&v[i]);
s=0;
for(i=0;i<n-2;i++){
for(j=i+1;j<n-1;j++){
for(l=j+1;l<n;l++){
if(v[i]>=v[j]){
if(v[l]>=v[i]){
if(v[l]<=v[i]+v[j])
s++;
}else if(v[i]<=v[l]+v[j])
s++;
}else {if(v[l]>=v[j]){
if(v[l]<=v[i]+v[j])
s++;
}else if(v[j]<=v[l]+v[i])
s++;
}
}
}
}
fprintf(fout,"%d",s);
}
return 0;
}