Cod sursa(job #135664)

Utilizator rethosPaicu Alexandru rethos Data 14 februarie 2008 08:49:40
Problema Numarare triunghiuri Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.54 kb
#include <stdio.h>
#define NMAX 801
FILE *f=fopen("nrtri.in","rt");
FILE *g=fopen("nrtri.out","wt");
int n,l[NMAX];
long long nr;
void swap(int &x,int &y)
{ int aux;
  aux=x;
  x=y;
  y=aux;
}
int main()
{ int i,j,k;
  fscanf(f,"%d",&n);
  for (i=1;i<=n;i++) fscanf(f,"%d",&l[i]);
  fclose(f);
  for (i=1;i<n;i++) for (j=i+1;j<=n;j++)if (l[i]>l[j]) swap(l[i],l[j]);
  for (i=1;i<n;i++)
	for (j=i+1;j<=n;j++)
		{ for (k=j+1;k<=n&&l[k]<=l[i]+l[j];k++) ;
		  k--;
		  nr+=k-j;
		}
  fprintf(g,"%lld",nr);
  fclose(f);
  return 0;
}