Pagini recente » Cod sursa (job #2751186) | Cod sursa (job #1230202) | Cod sursa (job #2151485) | Cod sursa (job #321472) | Cod sursa (job #1573974)
#include <iostream>
#include <algorithm>
#include<fstream>
using namespace std;
int a[810];
int cautare_bin(int st, int dr, int s)
{
int mijloc,poz;
int stanga=st;
mijloc=(st+dr)/2;
while(st<=dr)
{
if(a[mijloc]<=s)
{
st=mijloc+1;
poz=mijloc;
mijloc=(st+dr)/2;
}
else
{
dr=mijloc-1;
mijloc=(st+dr)/2;
}
}
if(stanga==st)
return 0;
return poz-stanga+1;
}
int main()
{
int n,sol=0;
ifstream f("nrtri.in");
ofstream g("nrtri.out");
f>>n;
for(int i=1; i<=n; i++)
f>>a[i];
sort(a+1, a+n+1);
for(int i=1; i<=n; i++)
for(int j=i+1; j<=n; j++)
{
int s=a[i]+a[j];
sol+=cautare_bin(j+1,n,s);
}
g<<sol;
f.close();
g.close();
return 0;
}