Cod sursa(job #1741210)

Utilizator BogauuuBogdan Ivancu Bogauuu Data 13 august 2016 12:45:30
Problema Numarare triunghiuri Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.66 kb
#include <fstream>
#include <algorithm>

using namespace std;

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

int n,i,st,dr,mid,s,nr,a[802],j;

int main()
{
    fin >> n;
    for (i=1;i<=n;i++)
        fin >> a[i];
    sort (a+1,a+n+1);
    for (i=1;i<=n-2;i++){
        for (j=i+1;j<=n-1;j++){
            s=a[i]+a[j];
            st=j+1;
            dr=n;
            while (st<=dr){
               mid=(st+dr)/2;
               if (s>a[mid])
                   dr=mid-1;
               else
                   st=mid+1;
            }
            if (s>=a[dr])
                nr++;
        }
    }
    fout << nr;

    return 0;
}