Pagini recente » Clasamentul arhivei de probleme | Istoria paginii runda/minus | Cod sursa (job #1750065) | Cod sursa (job #2629094) | Cod sursa (job #1391265)
#include <iostream>
#include <fstream>
using namespace std;
ifstream f("nrtri.in");
ofstream g("nrtri.out");
int bule(int (&v)[1000], int n)
{
int ok,i,aux;
do
{
ok=1;
for(i=1; i<=n-1; i++)
if(v[i]>v[i+1])
{
ok=0;
aux=v[i];
v[i]=v[i+1];
v[i+1]=aux;
}
}
while(ok!=1);
}
int main()
{
int N,v[1000],i,t=0,k,j,x,rez=0;
f>>N;
for (i=1; i<=N; i++)
f>>v[i];
bule (v,N);
for (i=1; i<=N-2; i++)
{
k=i+2;
for (j=i+1; j<=N-1; j++)
{
x=v[i]+v[j];
while (x>=v[k]&&k<=N)
k++;
if (k>j-1)
rez+=k-j-1;
}
}
g << rez << endl;
return 0;
}