记录编号 |
29388 |
评测结果 |
AAAAAAAAAA |
题目名称 |
八 |
最终得分 |
100 |
用户昵称 |
Des. |
是否通过 |
通过 |
代码语言 |
Pascal |
运行时间 |
0.005 s |
提交时间 |
2011-10-22 13:55:27 |
内存使用 |
0.25 MiB |
显示代码纯文本
program eight;
uses math;
var f,g:array[1..15]of longint;
a:array[1..15]of int64;
t,k,m,n,i,j,x,y:longint;
function gcd(a,b:int64):int64;
begin
if a mod b=0 then exit(b) else exit(gcd(b,a mod b));
end;
procedure sou(i,s,d:int64);
var t,k:longint;
j:int64;
begin
if i>n then exit;
j:=(s*a[i])div gcd(max(a[i],s),min(a[i],s));
if j<=y then
begin
f[d]:=f[d]+x div j;
g[d]:=g[d]+y div j;
sou(i+1,j,d+1);
end;
sou(i+1,s,d);
end;
begin
assign(input,'eight.in');
reset(input);
assign(output,'eight.out');
rewrite(output);
readln(n);
for t:=1 to n do
read(a[t]);
readln(x,y);
sou(1,8,1);
i:=x div 8;
j:=y div 8;
for t:=1 to n do
if odd(t) then
begin
i:=i-f[t];
j:=j-g[t];
end
else
begin
i:=i+f[t];
j:=j+g[t];
end;
if j-i>=0 then
writeln(j-i)
else writeln(0);
close(output);
end.