Pagini recente » Cod sursa (job #974144) | Cod sursa (job #589874) | Cod sursa (job #527396) | Cod sursa (job #2310913) | Cod sursa (job #234948)
Cod sursa(job #234948)
#include <iostream.h>
#include <fstream.h>
fstream f("nrtri.in", ios::in);
fstream g("nrtri.out", ios::out);
int l[801];
int bs(int i, int j, int x)
{
int mij, last=0;
while(i<=j){
mij=i+(j-i)/2;
if (l[mij]>x)j=mij-1;
else {i=mij+1;
last=mij;
}
}
return last;
}
int main()
{
int i=0, j=0, n, k=0, c, a, b, nr;
f>>n;
for (i=1;i<=n;i++) f>>l[i];
for(i=1;i<=n-2;i++)
for(j=i+1;j<=n-1;j++)
{c=l[i]+l[j];
a=j+1;
b=bs(j,n,c);
if (b>0) nr=b-a+1;
k=k+nr;
}
g<<k;
f.close();
g.close();
return 0;
}