Cod sursa(job #62044)

Utilizator petrePajarcu Alexandru-Petrisor petre Data 21 mai 2007 18:08:47
Problema Medie Scor 50
Compilator fpc Status done
Runda Arhiva de probleme Marime 0.84 kb
var f,g:text;
x:array[1..9000] of longint;
a,c:array[1..7000] of longint;
max,n,i,j,k,l:longint;
function min(a,b:longint):longint;
begin
if a<b then min:=a
        else min:=b;
end;
begin
assign(f,'medie.in');
assign(g,'medie.out');
reset(F);
rewrite(G);
readln(f,n);
max:=0;
for i:=1 to n do
    begin
    read(f,l);
    inc(a[l]);
    if a[l]=1 then begin
                        inc(k);
                        x[k]:=l;
                        end;
    end;
n:=k;
for i:=1 to n-1 do
for j:=i+1 to n do
begin
l:=x[i]+x[j];
k:=x[i];
max:=x[j];
        if l mod 2=0 then
        c[l div 2]:=c[l div 2]+a[k]*a[max];
end;
k:=0;
for i:=1 to n do
     begin
     l:=x[i];
     j:=a[l];
     if j>2 then
     k:=k+(j*(j-1)*(j-2)) div 2+j*c[l]

     else k:=k+j*c[l];
     end;

writeln(g,k);
close(F);
close(G);
end.