Cod sursa(job #1573876)

Utilizator EuSebastianGidei Sebastian EuSebastian Data 19 ianuarie 2016 23:46:28
Problema Numarare triunghiuri Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.68 kb
#include <iostream>
#include <fstream>
#include <algorithm>
#include <vector>

#define NMAX 820

using namespace std;

ifstream f("nrtri.in");
ofstream g("nrtri.out");

vector<int> vect;
int main()
{
    int n,x,rez;
    f>> n;
    for (int i = 0; i < n; ++i)
    {
        f>> x;
        vect.push_back(x);
    }

    sort(vect.begin(), vect.end());
    rez = 0;
    int k;
    for (int i = 0; i < n; ++i)
        for (int j = i + 1; j < n; ++j)
        {
            k = upper_bound(vect.begin(), vect.end(), vect[i] + vect[j]) - vect.begin() - 1;
            if (k >= n) continue;
            rez += max(0, k - j);
        }
    g<<rez;
    return 0;
}