Cod sursa(job #1233918)

Utilizator isav_costinVlad Costin Andrei isav_costin Data 26 septembrie 2014 12:43:43
Problema Numarare triunghiuri Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.81 kb
#include<stdio.h>

int v[801];
int main()
{
    freopen( "nrtri.in", "r", stdin );
    freopen( "nrtri.out", "w", stdout );
    int n, i, j, k=0, nrtri=0, st=1, aux;
    scanf( "%d", &n );
    for( i=1; i<=n; i++ )
        scanf( "%d", &v[i] );
    i=1;
    do
    {
        st=0;
        for( i=1; i<n; i++ )
            if( v[i]>v[i+1] )
            {
                aux=v[i];
                v[i]=v[i+1];
                v[i+1]=aux;
                st=1;
            }
    }
    while( st==1 );
    nrtri=0;
    for( i=0; i<n; i++ )
    {
        k=i+2;
        for( j=i+1; j<n; j++ )
        {
            while( k<=j )
                k++;
            while( k<n && v[i]+v[j]>=v[k] )
                k++;
            if( k>j )
                nrtri=nrtri+k-j-1;
        }
    }
    printf( "%d", nrtri );
    return 0;
}