Pagini recente » Cod sursa (job #1880798) | Cod sursa (job #430430) | Cod sursa (job #1485556) | Cod sursa (job #245129) | Cod sursa (job #1748855)
#include <fstream>
using namespace std;
ifstream in("nrtri.in");
ofstream out("nrtri.out");
const int nmax=805;
int v[nmax];
void qs(int st,int dr)
{
int i=st,j=dr,mid;
mid=v[(i+j)/2];
while(i<=j)
{
while(v[i]<mid)
i++;
while(v[j]>mid)
j--;
if(i<=j)
{
swap(v[i],v[j]);
i++;
j--;
}
}
if(st<j)
qs(st,j);
if(i<dr)
qs(i,dr);
}
int main()
{
int n,cnt=0;
in>>n;
for(int i=1;i<=n;i++)
in>>v[i];
in.close();
qs(1,n);
for(int i=1;i<=n-2;i++)
for(int j=i+1;j<=n-1;j++)
for(int k=j+1;k<=n;k++)
{
if(v[i]+v[j]>=v[k]&&v[j]+v[k]>=v[i]&&v[i]+v[k]>=v[j])
cnt++;
else
break;///deja nu mai poate fi bun
}
out<<cnt<<"\n";
out.close();
return 0;
}