Pagini recente » Cod sursa (job #3262285) | Cod sursa (job #2179948) | Cod sursa (job #3237191) | Cod sursa (job #2507643) | Cod sursa (job #457192)
Cod sursa(job #457192)
#include<stdio.h>
#include<algorithm>
int b[100];
using namespace std;
int main()
{
freopen("nrtri.in","r",stdin);
freopen("nrtri.out","w",stdout);
int c=0,a,d,i,j,n,m,u,p,x,y;
scanf("%d",&n);
for(i=1;i<=n;i++)
scanf("%d",&b[i]);
sort(b+1,b+n+1);
for(i=1;i<=n;i++)
for(j=1;j<=n;j++)
{
u=n;
p=1;
x=b[i]+b[j];
y=b[j]-b[i];
while(u>=p)
{
m=(u+p)/2;
if(b[m]<=x&&y>=b[m])
u=m-1;
else
p=m+1;
}
if(p<u)
a=m;
else
a=0;
u=n;
p=1;
while(u>=p)
{
m=(u+p)/2;
if(b[m]<x&&y>=b[m])
u=m-1;
else
p=m+1;
}
if(p<u)
d=m;
else
d=n+1;
if(d>=a&&a!=0&&d!=n+1)
c=c+d-a+1;
}
printf("%d",c/3);
return 0;
}