Pagini recente » Cod sursa (job #138673) | Cod sursa (job #591296) | Cod sursa (job #2676288) | Cod sursa (job #965892) | Cod sursa (job #674396)
Cod sursa(job #674396)
#include <iostream>
#include <fstream>
#include <algorithm>
using namespace std;
ifstream in("nrtri.in");
ofstream out("nrtri.out");
const int N=801;
int v[N],n;
/*int cautbin (int x)
{
int i,pas=1<<16;
for(i=0;pas!=0;pas>>=1)
{
if(i+pas<=n && v[i+pas]<=x)
{
i+=pas;
}
}
return i;
}*/
int main()
{
int i,j,rez=0,k;
in>>n;
for(i=1;i<=n;i++)
in>>v[i];
sort(&v[1],&v[n+1]);
for(i=1;i<n-1;i++)
{
for(j=i+1,k=i+2;j<n;j++)
{
//k=cautbin(v[i]+v[j]);
//if(k>j)
//{
// rez+=k-j;
//out<<v[i]<<" "<<v[j]<<" -> "<<k-j<<"\n";
//}
while(k<=n && v[k]<=v[i]+v[j])
{
k++;
}
rez+=k-j-1;
}
}
out<<rez;
return 0;
}