Pagini recente » Cod sursa (job #1631646) | Cod sursa (job #1697050) | Cod sursa (job #1277632) | Cod sursa (job #2637396) | Cod sursa (job #1233460)
#include <stdio.h>
#include <algorithm>
using namespace std;
#define MAX 800
int v[MAX+2];
bool sort1(int x,int y)
{
return x<y;
}
int min(int x, int y)
{
if(x<y)
return x;
else
return y;
}
/*void qsort(int begin, int end){
int aux,b=begin,e=end,
piv=v[(begin+end)/2];
while(b<=e){
while(v[b++]<piv);
while(v[e--]>piv);
if(b<=e){
aux=v[b];
v[b]=v[e];
v[e]=aux;
b++;e--;
}
}
if(begin<e) qsort(begin,e);
if(b<end) qsort(b,end);
} */
int main()
{
FILE *fin,*fout;
fin=fopen("nrtri.in","r");
fout=fopen("nrtri.out","w");
int i,j,n,p,u,m,val,cnt=0,nr,k,ok;
fscanf(fin,"%d",&n);
for(i=0;i<n;i++)
fscanf(fin,"%d",&v[i]);
sort(&v[0],&v[n],sort1);
for(i=0;i<n;i++)
for(j=i+1;j<n;j++){
k=j+1;
ok=1;
while(ok==1 && k<n){
ok=0;
if(v[i]+v[j]>=v[k]){
cnt++;
ok=1;
}
k++;
}
}
fprintf(fout,"%d",cnt);
return 0;
}