Cod sursa(job #1766284)

Utilizator mihaitamoglanmihai moglan mihaitamoglan Data 27 septembrie 2016 20:01:43
Problema Numarare triunghiuri Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.72 kb
#include <bits/stdc++.h>
#include <fstream>

using namespace std;

int bat3(int t[802],int st,int fn, int sum){
    int pivot=(st+fn)/2;
    while (fn>=st){
    pivot=(st+fn)/2;
    if (t[pivot]<=sum){
         st=pivot+1;
    }
    else{
        fn=pivot-1;
    }
    }

return st-1;
}

int main()
{   int t[802];
    long long k=0,m,n,sum;
    int i,j;
    ifstream in("ntri.in");
    ofstream out("ntri.out");
    in>>n;
    for (i=0;i<n;i++){
        in>>t[i];
    }
    sort(t,t+1+n);
    for(i=0;i<n-2;i++){
        for(j=i+1;j<n-1;j++){
           sum=t[i]+t[j];
            m=bat3(t,j+1,n,sum);
            if ((m != i)&&(m != j)){k=k+1;}
        }
    }
    out<<k;


    return 0;
}