Cod sursa(job #3363827)

Utilizator msashaMoicianu Sasha msasha Data 23 august 2026 16:39:01
Problema Numarare triunghiuri Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.8 kb
#include <fstream>

using namespace std;

ifstream fin("nrtri.in");
ofstream fout("nrtri.out");

int main() {

    int n, v[800],total_triunghiuri = 0, st, dr, i;
    fin >> n;
    for ( i = 1; i <= n; i ++ ) {
        fin >> v[i];
    }
    bool sortat = 0;
    while ( !sortat ) {
        sortat = 1;
        for ( i = 1; i < n; i ++ ) {
            if ( v[i] > v[i+1] ) {
                swap(v[i], v[i+1]);
                sortat = 0;
            }
        }
    }
    for ( i = 1; i <= n - 2; i ++ ) {
        dr = i + 2;
        for ( st = i + 1; st <= n - 1; st ++ ) {
            while ( dr <= n && v[i] + v[st] >= v[dr] ) {
                dr++;
            }
            total_triunghiuri += ( dr - 1 - st );
        }
    }

    fout << total_triunghiuri;

    return 0;
}