Làm sao để có câu trả lời hay nhất?
16/06/2023
LamHung01
16/06/2023
17/06/2023
Đầu vào: Số nguyên dương n
Tìm số lượng tờ tiền loại 1 xu (count1) và loại 2 xu (count2) sao cho chênh lệch giữa hai số lượng này là ít nhất
count1 = n // 1 # Số tờ tiền loại 1 xu tối đa có thể có
count2 = 0 # Số tờ tiền loại 2 xu ban đầu
min_diff = n # Chênh lệch tối thiểu
while count1 >= 0:
remaining = n - (count1 * 1 + count2 * 2) # Số tiền còn lại sau khi trừ đi số tờ tiền loại 1 xu và loại 2 xu
if remaining >= 0 and remaining < min_diff:
min_diff = remaining
optimal_count1 = count1
optimal_count2 = count2
count1 -= 1 # Giảm số tờ tiền loại 1 xu
count2 += 1 # Tăng số tờ tiền loại 2 xu
# Kết quả: số tờ tiền loại 1 xu và loại 2 xu Nam trả để mua gói kẹo
print(optimal_count1, optimal_count2)
Nếu bạn muốn hỏi bài tập
Các câu hỏi của bạn luôn được giải đáp dưới 10 phút
CÂU HỎI LIÊN QUAN
Top thành viên trả lời