Cod sursa(job #2615923)

Utilizator MSergiu_01Sergiu Mihaila MSergiu_01 Data 15 mai 2020 20:37:22
Problema Numarare triunghiuri Scor 0
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.82 kb
#include <iostream>
#include <fstream>

using namespace std;

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

int v[801], n, i, j;
int cautare(int p, int u)
{
    int m;
    m=(p+u)/2;
    while (p<=u)
    {
        if ((v[m]<=v[i]+v[j] && v[m+1]>v[i]+v[j]) || (v[m]<=v[i]+v[j] && m==n-1))
            return m;
        else if (v[m]<=v[i]+v[j] && v[m+1]<=v[i]+v[j])
        {
            p=m+1;
            m=(p+u)/2;
        }
        else
        {
            u=m-1;
            m=(p+u)/2;
        }
    }
    return 0;
}
int main()
{
    int nr = 0;
    fin >> n;
    for(int i = 0 ; i <= n; i++)
        fin >> v[i];
    for (i=0; i<n-2; ++i)
        for (j=0; j<n-1; ++j)
        {
            if(cautare(1,n) > 1 )
                nr++;
        }
    fout << nr;

    return 0;
}