Cod sursa(job #457245)
| Utilizator | Data | 18 mai 2010 17:42:48 | |
|---|---|---|---|
| Problema | Numarare triunghiuri | Scor | 100 |
| Compilator | cpp | Status | done |
| Runda | Arhiva de probleme | Marime | 0.41 kb |
#include<algorithm>
#include<stdio.h>
using namespace std;
int main()
{
int v[801],n,i,j,r=0,k;
freopen("nrtri.in","r",stdin);
freopen("nrtri.out","w",stdout);
scanf("%d",&n);
for(i=1;i<=n;i++)
scanf("%d",&v[i]);
sort(&v[1],&v[n+1]);
for (i=1;i<n-1;i++)
{
k=i+2;
for(j=i+1;j<n;j++)
{
while(k<=n && v[i]+v[j]>=v[k])
++k;
r+=k-1-j;
}
}
printf("%d",r);
return 0;
}
