Ngô Thuỳ Chi Tin học

Trong siêu thị, khách hàng sẽ tính tiền tại quầy thu ngân

Trong siêu thị, khách hàng sẽ tính tiền tại quầy thu nhân. Sau khi tính tiền nhân viên thu thông báo số tiền phải trả của khách là S đồng, khách đưa P đồng (S, P là bội của 1000). Em hãy lập trình giúp nhân viên thu nhân tính và trả lại tiền thừa (nếu có) sao cho số tờ tiền là ít nhất. Biết rằng tại quầy thu ngân có đủ loại mệnh giá triền và số tờ là vô hạn.

Mô tả đầu vào

Dòng đầu tiên ghi giá trị là tổng số tiền phải trả của khách hàng.

Dòng thứ hai ghi giá trị là tổng số tiền khách hàng đưa.

Mô tả đầu ra

Gồm n dòng, mỗi dòng gồm 2 số k1, k2 cách nhau một khoảng trắng với k1 là mệnh giá tiền, k2 là số tờ tiền có trong cách đưa tiền thừa của nhân viên thu ngân thoả yêu cầu đề bài.

Test case mẫu

Đầu vào mẫu 1

1500000

1500000

Đầu ra mẫu 1

0

Đầu vào mẫu 2

755000

1000000

Đầu ra mẫu 2

200000 1

20000 2

5000 1

3
3 Câu trả lời
  • Gấu chó
    Gấu chó

    def tinh_tien_thua(S, P):


    # S: số tiền phải trả


    # P: số tiền khách đưa


    tien_thua = P - S # tính số tiền thừa


    tien_menh_gia = [500, 1000, 2000, 5000, 10000, 20000, 50000, 100000, 200000, 500000] # các mệnh giá tiền


    so_tien_menh_gia = [0] * len(tien_menh_gia) # số tờ tiền cho mỗi mệnh giá


    for i in range(len(tien_menh_gia)):


    so_tien = tien_thua // tien_menh_gia[i] # số tờ tiền có mệnh giá i cần trả lại


    so_tien_menh_gia[i] = so_tien


    tien_thua -= so_tien * tien_menh_gia[i] # giảm số tiền cần trả lại đi số tiền đã trả lại với mệnh giá i


    if tien_thua == 0:


    break


    return so_tien_menh_gia

    0 Trả lời 13/04/23
    • Pé Thỏ
      Pé Thỏ

      input:


      - S: số tiền phải trả


      - P: số tiền khách đưa


      output:


      - res: danh sách các mệnh giá tiền tệ và số tờ cần trả lại

      thua = P - S


      menh_gia = [500000, 200000, 100000, 50000, 20000, 10000, 5000, 2000, 1000]


      res = {}

      for tien in menh_gia:


      if thua == 0:


      break


      if tien <= thua:


      so_to = thua // tien


      thua -= so_to * tien


      res[tien] = so_to

      return res

      0 Trả lời 13/04/23
      • Kim Ngưu
        Kim Ngưu

        ok

        0 Trả lời 13/04/23

        Tin học

        Xem thêm