Chương trình:
program bai_giai;
uses crt;
var n,m,t,giam,k:integer;
begin
clrscr;
readln(m,n,t);
k:=n;
while k>m do
begin
giam:=giam+1;
k:=k-m-1;
end;
write((n-giam)*t);
readln;
end.
Một số test
2 3 100 `->` 200 (Vì mua 2 tặng 1 là 3 nên chỉ cần mua 2)
3 4 100 `->` 300 (vì mua 3 tặng 1 nên được 4 nên chỉ cần mua 3 cây)
3 10 100 `->` 800 (vì mua 6 tặng 2 là 8, mua thêm 2 là 10 cây nên mua 8 cây)
3 17 100 `->` 1300 (vì mua 12 tặng 4 là 16, mua thêm 1 là 17 cây nên mua 13 cây)