Pagini recente » Cod sursa (job #332538) | Cod sursa (job #2275413) | Cod sursa (job #2447232) | Cod sursa (job #1180707) | Cod sursa (job #358184)
Cod sursa(job #358184)
#include <stdlib.h>
#include <stdio.h>
#define N 810
int sir[N];
int comp(const void *a,const void *b)
{return (*(int*)a- *(int*)b);
}
int main()
{FILE *fin,*fout;
int i,j,l,k,n,sum,dif,s,y;
fin=fopen("nrtri.in","r");
fout=fopen("nrtri.out","w");
if(!(fin&&fout))
return 0;
printf("\n");
fscanf(fin,"%d",&n);
for (i=0;i<n;i++)
{fscanf(fin,"%d",&sir[i]);
}
qsort(sir,n,sizeof(int),comp);
for (i=0,s=0;i<n;i++)
{for (j=i+1;j<n;j++)
{y=0;
sum=sir[i]+sir[j];
dif=abs(sir[i]-sir[j]);
for (l=0;l<n&&dif>sir[l];l++){}
for (k=n-1;k>=0&&sum<sir[k];k--){}
if(l<=i&&i<=k)y--;
if(l<=j&&j<=k)y--;
y+=k-l+1;
printf("%d %d %d %d %d\n",i,j,l,k,y);
s+=y;
}
}
fprintf(fout,"%d\n",s/3);
fclose(fout);
return 0;
}