Cod sursa(job #2278736)

Utilizator BanescuEduard123Banescu Eduard BanescuEduard123 Data 8 noiembrie 2018 15:10:41
Problema Numarare triunghiuri Scor 0
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.7 kb
#include <iostream>
#include <fstream>
#include <algorithm>

using namespace std;

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

int main()
{
    int n,i,a[3005],sol=0,j;
    f>>n;
    for(i=1; i<=n; i++)
        f>>a[i];

    sort(a+1,a+n+1);

    for(i=1;i<=n-2;i++)
        for(j=i+1;j<=n-1;j++)
            {
            int d=a[i]+a[j];
            int st=1,dr=n,mid;
            while(st<=dr)
            {
                mid=(st+dr)/2;
                if(a[mid]>d)
                    {sol++;break;}
                if(a[mid]>d)
                    dr=mid-1;
                else
                    st=mid+1;
            }
            }
    g<<sol;
    return 0;
}