Cod sursa(job #240836)

Utilizator SheepBOYFelix Liviu SheepBOY Data 8 ianuarie 2009 19:59:34
Problema Numarare triunghiuri Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.89 kb
 #include<stdio.h>  
 #include<stdlib.h>
 /*int compar(const void *a,const void *b)
 {
	 if(*(int *)a>*(int *)b)
		return 1;
	 if(*(int *)a==*(int *)b)
		 return 0;
	 if(*(int *)a<*(int *)b)
		 return -1;
 }*/
 int main()  
 {  
     int nr=0,i,j,k,n,v[801];\  
      freopen("nrtri.in","r",stdin);  
      freopen("nrtri.out","w",stdout);  
      scanf("%d",&n);  
      for(i=0;i<n;++i)  
          scanf("%d",v+i);  
	//  qsort(v,n,sizeof(v),compar);
	  int aux,sort=0;
	  while(!sort)
	  {
		  sort=1;
		  for(i=0;i<n-1;++i)
		if(v[i]>v[i+1])
		  {
			  aux=v[i];
			  v[i]=v[i+1];
			  v[i+1]=aux;
			  sort=0;
		  }
	  }
      for(i=0;i<n-2;++i)  
          for(j=i+1;j<n-1;++j)  
              for(k=n-1;k>=j+1;--k)  
                  if(v[i]+v[j]>v[k])  
                     {nr+=(k-j+1);break;} 
                  printf("%d",nr);  
      return 0;  
  }