Cod sursa(job #3360598)

Utilizator MirceaRegeleCeapaMircea Gheorghe MirceaRegeleCeapa Data 15 iulie 2026 11:09:31
Problema Numarare triunghiuri Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.64 kb
#include <fstream>
#include <algorithm>
#define NMAX 800
using namespace std;
ifstream fin("nrtri.in");
ofstream fout("nrtri.out");
int v[NMAX+1];
int main()
{
    int n,i,j,x,st,dr,mij,ans=0;
    fin>>n;
    for(i=1;i<=n;i++)
    fin>>v[i];
    sort(v+1,v+n+1);
    for(i=1;i<n-1;i++){
        for(j=i+1;j<n;j++){
            x=v[i]+v[j];
            st=j;
            dr=n+1;
            while(dr-st>1){
                mij=(st+dr)/2;
                if(v[mij]<=x){
                    st=mij;
                }
                else
                dr=mij;
            }
           if(v[i]+v[j]>=v[st])
           ans+=st-j;
        }
    }
    fout<<ans;
}