Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Python

Chương trình Python tính doanh thu bán giày theo kích cỡ và nhu cầu khách


Cửa hàng giày có n đôi giày với các kích cỡ trong mảng shoes. Có m khách hàng, mỗi khách i cần kích cỡ shoe_size và sẵn sàng trả money. Khách đến theo thứ tự, chỉ mua nếu còn giày size đó. Tính tổng doanh thu.

Ví dụ: shoes = [2,3,4,5,6,8,7,6,5,18], demand = [(6,55), (6,45), (6,55), (4,40), (18,60), (10,50)] → doanh thu 200.

Thuật toán

  • Dùng Counter đếm số lượng từng size giày.
  • Duyệt qua demand: nếu còn giày size đó (sizes[sz] > 0), giảm đếm và cộng doanh thu.

Ví dụ mã nguồn

from collections import Counter

def solve(shoes, demand):
    sizes = Counter(shoes)
    earn = 0
    for sz, price in demand:
        if sizes[sz]:
            sizes[sz] -= 1
            earn += price
    return earn

shoes = [2,3,4,5,6,8,7,6,5,18]
demand = [(6,55), (6,45), (6,55), (4,40), (18,60), (10,50)]
print(solve(shoes, demand))  # 200

Đầu vào / Đầu ra

Input:  [2,3,4,5,6,8,7,6,5,18], [(6,55), (6,45), (6,55), (4,40), (18,60), (10,50)]
Output: 200