Cod sursa(job #2020011)

Utilizator CiprianC111Constantinescu Ciprian CiprianC111 Data 9 septembrie 2017 11:24:58
Problema Numarare triunghiuri Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.7 kb
#include <cstdio>
#include <vector>
#include <algorithm>

using namespace std;

vector <int>v;
vector <int>::iterator it, it1, poz;

int main()
{
    freopen("nrtri.in", "r", stdin);
    freopen("nrtri.out", "w", stdout);
    int n, x, nr = 0;
    scanf("%d", &n);
    for(int i = 0; i < n; i++)
    {
        scanf("%d", &x);
        v.push_back(x);
    }
    for(it = v.begin(); it != v.end() - 1; it++)
    {
        for(it1 = it + 1; it1 != v.end(); it1++)
        {
            poz = upper_bound(v.begin(), v.end(), (*it) + (*it1));
            if((*it) <= (*poz) + (*it1) and (*it1) <= (*poz) + (*it))
                nr++;
        }
    }
    printf("%d", nr);
    return 0;
}