Cod sursa(job #269148)

Utilizator yonutzTalos Ionut yonutz Data 2 martie 2009 16:23:28
Problema Numarare triunghiuri Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.97 kb
#include <fstream.h>
int n,i,a[1000];
long counter=0;
void citeste()
{
     ifstream fin("nrtri.in");
     fin>>n;
     for(i=1;i<=n;i++)
       fin>>a[i];
       
     fin.close();
     }
void swap(int i,int j)
{int aux;
     aux=a[i];a[i]=a[j];a[j]=aux;}

void sorteaza()
{int i,j;
     for(i=1;i<n;i++)
       for(j=i+1;j<=n;j++)
          if (a[i]>a[j])
            swap(i,j);
            }
     void calculeaza()
     {int i,j,k,s_ij;
          for(i=1;i<=n-2;i++)
             for(j=i+1;j<=n-1;j++)
                {   s_ij=a[i]+a[j];
                                  for(k=j+1;k<=n&&s_ij>=a[k];k++)
                                         counter++;
                 }
                                         
             }
     void afiseaza()
     {
          ofstream fout("nrtri.out");
          fout<<counter;
          fout.close();
          }
int main(){
    
    citeste();
    sorteaza();
    calculeaza();
    afiseaza();
}