Cod sursa(job #2655250)

Utilizator mihnea_buzoiuMihnea Buzoiu mihnea_buzoiu Data 3 octombrie 2020 18:35:38
Problema Numarare triunghiuri Scor 0
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.65 kb
#include <stdio.h>
#include <algorithm>

using namespace std;

int main()
{
    FILE * fin = fopen("nrtri.in", "r");
    FILE * fout = fopen("nrtri.out", "w");

    int v[801], n=0;
    fscanf(fin, "%d", &n);
    for (int i=0; i<n; i++)
        fscanf(fin, "%d", &v[i]);

    sort(v, v+n);

    int tri=0;
    for (int i=0; i<n-2; i++){
        int k=i+2;
        for (int j=i+1; j<n-1; j++){
            if (k>j)
                tri+=k-j-1;

            while(k<n && v[i]+v[j]>=v[k]){
                k++;
                tri++;
            }
        }
    }

    fprintf(fout, "%d", tri);

    fclose(fin);
    fclose(fout);
}