Cod sursa(job #585145)
| Utilizator | Data | 28 aprilie 2011 09:34:32 | |
|---|---|---|---|
| Problema | Numarare triunghiuri | Scor | 100 |
| Compilator | cpp | Status | done |
| Runda | Arhiva de probleme | Marime | 0.54 kb |
#include<cstdio>
using namespace std;
int n,t[805],rez;
void bs()
{int ok,j,a;
do
{ok=0;
for(j=0;j<n-1;++j)
if(t[j]>t[j+1])
{a=t[j];
t[j]=t[j+1];
t[j+1]=a;
ok=1;
}
}while(ok);
}
int main()
{FILE* i=fopen("nrtri.in","r");
FILE* o=fopen("nrtri.out","w");
fscanf(i,"%d",&n);
for(int k=0;k<n;++k)fscanf(i,"%d",&t[k]);
bs();
int j,l;
for(int k=0;k<n-2;++k)
for(j=k+1;j<n-1;++j)
for(l=j+1;l<n && t[k]+t[j]>=t[l];++l)
++rez;
fprintf(o,"%d",rez);
fclose(i);
fclose(o);
return 0;
}
