Cod sursa(job #2834246)

Utilizator MariusDinsorea32DinsoreanMarius MariusDinsorea32 Data 16 ianuarie 2022 18:17:12
Problema Numarare triunghiuri Scor 0
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.66 kb
#include <iostream>
#include <fstream>
#include <algorithm>
using namespace std;

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

int n, i, j, l, r, mid, v[804], rez;

int main()
{
    fin >> n;
    for(i = 1; i <= n; i++)
        fin >> v[i];
    sort(v + 1, v + n + 1);
    for(i = 1; i < n - 1; i++){
        for(j = i + 1; j < n; j++){
            l = j + 1;
            r = n;
            while(l <= r)
            {
                mid = l + (r - l) / 2;
                if(v[i] + v[j] >= v[mid]) r = mid - 1;
                else l = mid + 1;
            }
            rez += r - j;
        }
    }
    fout << rez + 1;
    return 0;
}