Pagini recente » Cod sursa (job #1355875) | Cod sursa (job #2680700) | Cod sursa (job #1608794) | Cod sursa (job #2898168) | Cod sursa (job #1426334)
#include <fstream>
#include <algorithm>
#define MAXIM 1001
using namespace std;
ifstream in("nrtri.in");
ofstream out("nrtri.out");
int N,sol,V[MAXIM];
void read_data()
{
in>>N;
for(int i=1;i<=N;i++)
in>>V[i];
}
void solve()
{
sort(V+1,V+N+1);
for(int i=1;i<=N;i++)
{
for(int j=i+1;j<=N;j++)
{
int m,st,dr;
st=j+1;dr=N;
while(st<=dr)
{
m=(st+dr)/2;
if(V[m]<=V[i]+V[j]) st=m+1; else dr=m-1;
}
sol+=dr-j;
}
}
out<<sol;
}
int main()
{
read_data();
solve();
return 0;
}