Cod sursa(job #2445169)

Utilizator AdryanR8iurian adrian razvan AdryanR8 Data 2 august 2019 22:07:07
Problema Factorial Scor 0
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.72 kb
#include <iostream>
#include <fstream>
#include <algorithm>
using namespace std;

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

int n,nrtri;
int B[801];

int BS(int x,int st,int dr){
    int rez=-1;
    while(st<=dr){
        int mij=st+(dr-st)/2;
        if(B[mij]<=x){
            rez=mij;
            st=mij+1;
        }
        else
            dr=mij-1;
    }
    return rez;
}

int main(){
    in>>n;
    for(int i=1;i<=n;++i)
        in>>B[i];
    sort(B+1,B+n+1);
    for(int i=1;i<n-1;++i)
        for(int j=i+1;j<n;++j){
            int x=B[i]+B[j];
            int rez=BS(x,j+1,n);
            if(rez>0)
                nrtri+=rez-j;
        }
    out << nrtri;
    return 0;
}