동네 가게를 위한 장바구니를 모델링하려고 해요. 장바구니는 담긴 상품 목록을 계속 추적하고, 가격을 올바르게 계산해야 해요.
상품은 SKU(재고 관리 코드)를 사용해 장바구니에 담아요. 가게에 있는 상품은 다음과 같아요:
| 이름 | 가격 | SKU |
|---|---|---|
| Potatoes | 10.00 | STAPOT |
| Rice | 30.00 | STARIC |
| Coffee | 14.99 | STACOF |
| Newspaper | 2.99 | MEDNEW |
장바구니에서는 다음 작업을 수행할 수 있어야 해요:
스토리의 대안 버전 또는 확장판에서는 장바구니에 담을 수 있는 할인 쿠폰을 사용해요.
고객을 만족시키기 위해 동네 가게가 할인 쿠폰을 도입했어요. 즉, 이런 할인을 지원하려면 우리 장바구니가 현재 담긴 상품에 할인 쿠폰을 읽고 적용할 수 있어야 해요. 지원하는 쿠폰은 다음과 같아요:
| 유형 | SKU | 규칙 |
|---|---|---|
| 고정 금액 할인 | FIX_TEN | 장바구니 총 금액에서 10.00을 할인해요 |
| 상품 할인 | HALF_STAPOT | 모든 STAPOT 상품을 반값으로 낮춰요 |
장바구니에 SKU를 받아 장바구니에 담는 새로운 scan coupon 작업이 있어야 해요. total_amount는 음수가 될 수 없고, total_amount의 최솟값은 0이라는 점을 기억해 두세요.