Pagini recente » Cod sursa (job #1934844) | Cod sursa (job #664489) | Cod sursa (job #1391824) | Cod sursa (job #3206969) | Cod sursa (job #1974535)
#include <iostream>
#include <fstream>
using namespace std;
ifstream f("nrtri.in");
ofstream g("nrtri.out");
int n,x[800];
int cautbin(int left,int right, int s){
int hi,lo;
lo=left;
hi=right;
while(hi-lo>1){
int mid=(lo+hi)/2;
if(x[mid]<=s)
lo=mid;
else hi=mid;
}
return lo;
}
int tr()
{
int poz1,poz2,poz3,nr=0;
for( poz1=0;poz1<n;poz1++){
for(poz2=poz1+1;poz2<n;poz2++){
poz3=cautbin(poz2,n,x[poz1]+x[poz2]);
nr+=poz3-poz2;
}
}
return nr;
}
int main()
{
f>>n;
for(int i=0;i<n;i++){
f>>x[i];
}
g<<tr();
return 0;
}