Pagini recente » Cod sursa (job #2033208) | Cod sursa (job #1079226) | Cod sursa (job #2846712) | Cod sursa (job #1762161) | Cod sursa (job #293042)
Cod sursa(job #293042)
#include <stdio.h>
#include <algorithm>
using namespace std;
int i,j,l,n,nr,a[801],m;
int cautbin(int s,int d)
{
int m,g=-1;
while(s<=d)
{
m=(s+d)/2;
if(a[i]+a[j]>=a[m] && a[i]+a[m]>=a[j] && a[j]+a[m]>=a[i])
{
d=m-1;
g=1;
}
else
s=m+1;
}
return g;
}
int main()
{
freopen("nrtri.in","r",stdin);
freopen("nrtri.out","w",stdout);
scanf("%d",&n);
for(i=1;i<=n;i++)
scanf("%d",&a[i]);
sort(a+1,a+n+1);
for(i=1;i<=n;i++)
for(j=i+1;j<=n;j++)
if(cautbin(j+1,n)!=-1)
nr++;
printf("%d",nr);
return 0;
}