Pagini recente » Diferente pentru problema/sms intre reviziile 7 si 8 | Diferente pentru problema/ape intre reviziile 5 si 4 | Cod sursa (job #2197043) | Cod sursa (job #1585016) | Cod sursa (job #1401831)
#include <fstream>
#include <algorithm>
using namespace std;
#define NMax 805
ifstream f("nrtri.in");
ofstream g("nrtri.out");
int n;
int v[NMax];
int bs(int x)
{
int j,step;
for(step=1;step<=n;step<<=1);
for(j=0;step;step>>=1) if(j+step<=n && v[j+step]<=x) j+=step;
return j;
}
int sol;
int main()
{
int i,j;
f>>n;
for(i=1;i<=n;++i) f>>v[i];
sort(v+1,v+n+1);
for(i=1;i<n;++i) for(j=i+1;j<=n;++j) sol += bs(v[i]+v[j])-j;
g<<sol<<"\n";
f.close();
g.close();
return 0;
}