Cod sursa(job #2891357)

Utilizator Stefanstef99Stefan Puica Stefanstef99 Data 18 aprilie 2022 12:15:29
Problema Numarare triunghiuri Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.58 kb
#include <bits/stdc++.h>

using namespace std;

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

int a[805],ct,n,st,dr;

void cb(int i,int j)
{
    st=i+1;
    dr=n;
    int mij;
    while(st<=dr)
    {
        mij=(st+dr)/2;
        if(a[mij]>a[i]+a[j]) dr=mij-1;
        else st=mij+1;
    }
}

int main()
{
    int i,j;
    fin>>n;
    for(i=1;i<=n;i++) fin>>a[i];
    sort(a+1,a+n+1);
    for(i=1;i<=n;i++)
    {
        for(j=i+1;j<=n;j++)
        {
            cb(i,j);
            ct+=dr-j;
        }
    }
    fout<<ct;
    return 0;
}