Cod sursa(job #2073134)

Utilizator Tache_RoxanaTache Roxana Tache_Roxana Data 22 noiembrie 2017 18:57:37
Problema Numarare triunghiuri Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.48 kb
#include <iostream>
#include <fstream>
#include <algorithm>

using namespace std;

int v[100001],n,i,j,k,rez;

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

int caut1(int x)
{
    int pas=1<<16,r=0;
    while(pas!=0)
    {
        if(r+pas<=n &&v[r+pas]<=x)r+=pas;
        pas/=2;
    }
    return r;
}

int main(){
f>>n;
for(i=1;i<=n;i++)f>>v[i];
sort(v+1,v+1+n);
for(i=1;i<n;i++)
    for(j=i+1;j<=n;j++){
        k=caut1(v[i]+v[j]);
        if(k>j)rez+=k-j;
}

g<<rez;
return 0;
}