There are 2 towns, A and B, which are 1000 km apart. There are 3000 kg of coal and a train in Town A. The train can carry a maximum of 1000kg of coal. The train uses up 1 kg of coal to travel 1 km. What is the maximum amount of coal you can bring to Town B.
Clue: You can drop or pick up the coal along the way. You can move back and forth between the towns.
Theo anh em kết quả của bài này là bao nhiêu?
[VIE] Có 2 thị trấn, A và B, trong đó có 1.000 km ngoài. Có 3000 kg than và một chuyến tàu ở Town A. Con tàu có thể chở tối đa 1000kg than. tàu sẽ sử dụng hết 1 kg than để đi 1 km. Số lượng than tối đa bạn có thể mang đến Town B là bao nhiêu?
Gợi ý: Bạn có thể thả hoặc nhặt than trên đường đi. Bạn có thể di chuyển qua lại giữa các thị trấn.
Dùng code để chạy thôi.
Mỗi lần tàu sẽ chở tối đa than nếu có thể và có lời (số than >2) tới 1Km tiếp theo
coal=3000
for i in range(1000):
move=coal//1000 # so luot di chuyen - moi lan 1000 than
mod=coal%1000 # so du con lai
coal=move*1000-(2*move-1) # sau khi chuyen cac se 1000 than, so than con lai o o tiep theo
if mod>2:
coal+=mod-2 # xet so than du - 2 boi 1 di 1 ve
print(coal)
ket qua: 533
1 Like
83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?