Pagini recente » Cod sursa (job #162424) | Cod sursa (job #1910851) | Cod sursa (job #504505) | Cod sursa (job #1051957) | Cod sursa (job #1398271)
#include<iostream>
#include<fstream>
using namespace std;
ifstream fin("nrtri.in");
ofstream fout("nrtri.out");
int v[810],n,x;
long long s;
void citire()
{
fin>>n;
for(int a1=1;a1<=n;a1++)
{
fin>>v[a1];
}
}
int poz(int p,int u)
{int piv,aux,k;
piv=v[p];
while (p<u)
{ if (v[p]>v[u]){aux=v[p];
v[p]=v[u];
v[u]=aux;}
if (v[p]==piv)
u--;
else p++;
}
k=p;
return k;
}
void quick(int p,int u)
{int k;
if (p<u) {k=poz(p,u);
quick(p,k-1);
quick(k+1,u);}
}
int main()
{
citire();
quick(1,n);
for(int a1=1;a1<=n-2;a1++)
for(int a2=a1+1;a2<=n-1;a2++)
for(int a3=a2+1;a3<=n;a3++)
{
if(v[a3]<=v[a1]+v[a2])
{
s++;
}
else break;
}
fout<<s;
}