Pagini recente » Rezultatele filtrării | Cod sursa (job #3185874)
#include <iostream>
#include <fstream>
#include <algorithm>
using namespace std;
ifstream fin ("nrtri.in");
ofstream fout ("nrtri.out");
int t[1000005];
int main()
{
int i, j, k, ct=0,nrnr,l,r,mij,poz;
fin >> nrnr;
for (i=1;i<=nrnr;i++)
{
fin >> t[i];
}
sort (t+1,t+nrnr+1);
for (i=1;i<=nrnr;i++)
{
for (j=i+1;j<=nrnr;j++)
{
poz=j;
l=j+1;
r=nrnr;
while (l<=r)
{
mij=(l+r)/2;
if (t[mij]<=t[i]+t[j])
{
poz=mij;
l=mij+1;
}
else
{
r=mij-1;
}
}
ct=ct+poz-j;
}
}
fout << ct;
return 0;
}