var n: longint;
x,d,t,v: longint; { so doan X D T V }
dx,dd,dt,dv: longint; { cheu dai moi doan }
nx,nt,nd,nv: longint; { so doan X D T V can chon }
sdx,sdt,sdd,sdv:longint;
procedure nhap;
begin
readln(x,dx);
readln(d,dd);
readln(t,dt);
readln(v,dv);
end;
function Ucln(a,b: longint): longint;
var r: longint;
begin
while (b <> 0) do
begin
r := a mod b;
a := b;
b := r;
end;
exit(a)
end;
(*------------------------------------
Bcnn(a,b) = (a * b)/Ucln(a,b)
-------------------------------------*)
function Bcnn(a,b: longint): longint;
begin
exit(a * (b div Ucln(a,b)));
end;
function Min(a,b: longint): longint;
begin
if a<b then exit(a)
else exit(b);
end;
procedure XuLi;
var b, nxt, ndv: longint;
begin
b := Bcnn(dx,dt);
nx := b div dx; { so doan xanh trong 1 bo xanh - tim }
nt := b div dt; { so doan tim trong 1 bo xanh - tim }
nxt := Min(x div nx, t div nt); { so bo xanh - tim }
sdx := nxt * nx; { so doan xanh can chon }
sdt := nxt * nt; { so doan tim can chon }
b := Bcnn(dd,dv);
nd := b div dd; { so doan do trong 1 bo do - vang }
nv := b div dv; { so doan vang trong 1 bo do - vang }
ndv := Min(d div nd, v div nv);{ so bo do vang }
sdd := ndv * nd; { so doan do can chon }
sdv := ndv * nv; { so doan vang can chon }
writeln(sdx*dx*sdd*dd);{ dien tich }
// writeln(sdx,' ',sdd,' ',sdt,' ',sdv); { so doan moi loai }
end;
BEGIN
assign(input, 'xdtv1.inp'); reset(input);
assign(output, 'xdtv1.out'); rewrite(output);
nhap; XuLi;
END.
* Chuyên dạy lập trình ONLINE cho học sinh THCS, THPT *.
Mọi giao lưu, trao đổi, xin liên hệ: Lê Quang Vinh - zalo: 037.803.8755.
Page: Lớp học Code Sky
Group FB1: Ôn thi HSG9 - THTB - TS10 chuyên tin
Group FB2: Học Scratch - Ôn thi Tin học trẻ bảng A
Thứ Sáu, 13 tháng 5, 2022
XAUDTV1 Pascal
Đăng ký:
Đăng Nhận xét (Atom)
Không có nhận xét nào:
Đăng nhận xét
Lưu ý: Chỉ thành viên của blog này mới được đăng nhận xét.