Pagini recente » Cod sursa (job #2761433) | Cod sursa (job #1114455) | Cod sursa (job #693917) | Cod sursa (job #1304301) | Cod sursa (job #1213662)
#include <cstdio>
#include <algorithm>
using namespace std;
int n,A[30013],i,j,sol(0);
void openIOFiles()
{
freopen("nrtri.in","r",stdin);
freopen("nrtri.out","w",stdout);
}
void readIFILE()
{
scanf("%d",&n);
for (int i=1;i<=n;++i) scanf("%d",&A[i]);
}
int binary(int x,int n)
{
int step,i;
for (step=1;step<n;step<<=1);
for (i=0;step>0;step>>=1)
if (i+step<=n && A[i+step]<x) i+=step;
return i;
}
int main()
{
openIOFiles();
readIFILE();
sort(A+1,A+n+1);
for (i=n;i>=3;--i)
for (j=i-1;j>=2;--j)
if (A[binary(A[i]-A[j],j-1)+1]=A[i]-A[j]) ++sol;
printf("%d",sol);
return 0;
}