Cod sursa(job #1233937)

Utilizator AlexandraMafteiAlexandra Maftei AlexandraMaftei Data 26 septembrie 2014 13:19:11
Problema Numarare triunghiuri Scor 0
Compilator c Status done
Runda Arhiva de probleme Marime 0.87 kb
# include <stdio.h>

int v[800];
int main () {
    FILE *fin, *fout;
    int n, i, j, k, nrtri, aux;

    fin = fopen ( "nrtri.in", "r" );
    fscanf ( fin, "%d", &n );
    for ( i = 0; i < n; i++ )
        fscanf ( fin, "%d", &v[i] );
    //sortam v
    for ( i = 0; i < n; i++)
        for ( j = i + 1; j < n ; j ++ )
            if ( v[j] > v[i] ) {
                aux = v[j];
                v[j] = v[i];
                v[i] = aux;
            }

    for ( i = 0 ; i + 2 < n ; i ++ ) {
        k = i + 2;
        for ( j = i + 1 ; j + 1 < n ; j ++ ) {
            while ( k <= j )
                k++;
            while ( k < n && v[k] <= v[i] + v[j] );
                k++;
            if ( k > j )
                nrtri = k - j - 1;
        }
    }

    fclose (fin);
    fout = fopen ( "nrtri.out", "w" );
    fscanf ( fopen, " %d ", nrtri );
    fclose ( fout );

    return 0;
    }