Cod sursa(job #2847085)

Utilizator Schweppesnick gurr Schweppes Data 10 februarie 2022 10:48:44
Problema Numarare triunghiuri Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.57 kb
#include <bits/stdc++.h>
using namespace std;
ifstream fin("nrtri.in");
ofstream fout("nrtri.out");
int main(){
    int n,a[1000],st,dr,mij,ans(0);
    fin>>n;
    for(int i=1;i<=n;i++)fin>>a[i];
    sort(a+1,a+n+1);
    for(int i=1;i<=n-2;i++){
        for(int j=i+1;j<=n-1;j++){
            // 2 3 4 7
            st=j+1,dr=n;
            while(st<=dr){
                mij=(st+dr)/2;
                if(a[mij]>a[i]+a[j])dr=mij-1;
                else st=mij+1;
            }
            ans+=dr-j;
        }
    }
    fout << ans;
return 0;
}
// 3 4 4 3 3 2 3