Pagini recente » Cod sursa (job #1910236) | Cod sursa (job #1926059) | Cod sursa (job #598332) | Cod sursa (job #1631702) | Cod sursa (job #288696)
Cod sursa(job #288696)
{dezastru preONI2007}
{$N+}
var a:array[1..25] of real;
st:array[0..25] of byte;
marc:array[1..25] of boolean;
suma:extended;
nr,n,k:byte;
f,g:text;
procedure citire;
var i:byte;
begin
assign(f,'dezastru.in'); reset(f);
readln(f,n,k);
for i:=1 to n do read(f,a[i]);
close(f);
end;
procedure back(p:integer);
var i,j:byte;
begin
for i:=st[p-1]+1 to n do
begin
st[p]:=i;
if not marc[st[p]] then
begin
marc[st[p]]:=true;
if p=k then
begin
inc(nr);
for j:=1 to p-1 do
suma:=suma+a[st[j]]*a[st[j+1]];
end
else back(p+1);
marc[st[p]]:=false;
end;
end;
end;
procedure afisare;
var val:extended;
begin
assign(g,'dezastru.out'); rewrite(g);
val:=suma/nr;
writeln(g,val:2:6);
close(g);
end;
begin
suma:=0;
nr:=0;
citire;
back(1);
afisare;
end.