比赛 |
NOIP2008集训模拟2 |
评测结果 |
AAAAAAAAAAAAAAAAAAAA |
题目名称 |
沙漠赛道 |
最终得分 |
100 |
用户昵称 |
francis |
运行时间 |
0.000 s |
代码语言 |
Pascal |
内存使用 |
0.00 MiB |
提交时间 |
2008-11-11 09:03:55 |
显示代码纯文本
program mirage;
const
fin='mirage.in';
fou='mirage.out';
var
l,a,b:array[1..4]of real;
mo:array[1..100000]of real;
k:array[1..100000]of byte;
n,ad,bd,i,j:longint;
last,num,hl,al,bl,ag,bg,m0,m1,aa,bb:real;
f1,f2:text;
procedure init;
begin
assign(f1,fin);
assign(f2,fou);
reset(f1); rewrite(f2);
for i:=1 to 4 do read(f1,a[i]);
for i:=1 to 4 do read(f1,b[i]);
read(f1,ad,bd,n);
for i:=1 to n do
begin
read(f1,mo[i],k[i]);
if k[i]=0 then m0:=m0+mo[i];
if k[i]=1 then m1:=m1+mo[i];
end;
end;
procedure pj;
begin
for i:=1 to n do
l[3]:=l[3]*exp(num*ln(mo[i]));
end;
procedure main;
begin
aa:=ad/(ad+bd); ag:=(1-a[1])*(1-a[2])*(1-a[3])*(1-a[4]);
bb:=bd/(ad+bd); bg:=(1-b[1])*(1-b[2])*(1-b[3])*(1-b[4]);
al:=aa*ag+(1-bg)*ag*bb;
bl:=bb*bg+(1-ag)*bg*aa;
hl:=(1-ag)*(1-bg);
l[1]:=(m0+m1)-m0*2;
l[2]:=(m0+m1)-m1*2;
num:=1/n; l[3]:=1;
pj;
l[3]:=(m0+m1)-n*l[3];
last:=l[1]*al+l[2]*bl+l[3]*hl;
end;
procedure print;
begin
writeln(f2,al:0:2,' ',bl:0:2,' ',hl:0:2);
write(f2,last:0:2);
close(f1); close(f2);
end;
begin
init;
main;
print;
end.