Pagini recente » Cod sursa (job #403903) | Cod sursa (job #3174505) | Cod sursa (job #2828105) | Cod sursa (job #796727) | Cod sursa (job #629084)
Cod sursa(job #629084)
#include<fstream>
#include<cstdlib>
#include<algorithm>
using namespace std;
fstream f("nrtri.in");
ofstream h("nrtri.out");
long n, i;
long a[808];
void read()
{
f>>n;
for (i=1; i<=n; i++)
f>>a[i];
}
void rez()
{
long st,dr,m,j,s,num=0;
sort(a+1,a+1+n);
for (i=1;i<n;i++)
for (j=i+1;j<n;j++)
{
st=j+1;
dr=n;
s=a[i]+a[j];
while(st<=dr)
{
m=(st+dr)/2;
if (a[m]>s)
{
dr=m-1;
}
else
st=m+1;
}
if (a[m]<=s)
num=num+m-j;
else
num=num+m-1-j;
}
h<<num;
}
int main ()
{
read();
rez();
f.close();
h.close();
return 0;
}