Cod sursa(job #1692483)

Utilizator MihneaGhiraMihnea MihneaGhira Data 20 aprilie 2016 22:20:05
Problema Numarare triunghiuri Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.63 kb
#include<fstream>
#include<algorithm>
using namespace std;
ifstream fin("nrtri.in");
ofstream fout("nrtri.out");
int N,i,j,nr,st,dr,mid;
int v[801];
int main(){
    fin>>N;
    for(i=1;i<=N;i++)
        fin>>v[i];
    sort(v+1,v+N+1);
    for(i=1;i<N;i++){
        for(j=i+1;j<=N;j++){
            st=1;
            dr=N;
            while(st<=dr){
                mid=st+(dr-st)/2;
                if(v[mid]>v[i]+v[j])
                    dr=mid-1;
                else
                    st=mid+1;
            }
            if(v[st]>=v[i]+v[j])
                nr++;
        }
    }
    fout<<nr;
    return 0;
}