Cod sursa(job #1344475)

Utilizator iulianrotaruRotaru Gheorghe-Iulian iulianrotaru Data 16 februarie 2015 19:18:02
Problema Medie Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.57 kb
#include<fstream>
#include<algorithm>
#define LL long long
using namespace std;
ifstream f("medie.in"); ofstream g("medie.out");
int n,i,j,v,vmax;
LL nr,fr[7001];
int main()
{   f>>n;
    for(i=1;i<=n;++i)
        {   f>>v; ++fr[v];
            if(vmax<v) vmax=v;
        }
    for(i=1;i<=vmax;++i)
        if(fr[i])
        {   if(fr[i]>2) nr += fr[i]*(fr[i]-1)*(fr[i]-2)/2;
            v=min(i-1,vmax-i);
            for(j=i-v;j<i;++j)
                if(fr[j] && fr[2*i-j]) nr += fr[i]*fr[j]*fr[2*i-j];
        }
    g<<nr<<'\n';
    g.close(); return 0;
}