문제 분류 수업 진도 대회 채점현황 순위 질문게시판
게임
스도쿠 타이핑 리듬 타자게임 타이핑 테트리스 타이핑 인베이더 타이핑 지뢰찾기 8192 공룡게임 타이핑 플래피버드 랭킹
로그인

7135 : 자판기 시뮬레이션

•시간제한: 2.000 S •메모리제한: 256 MB •제출: 0 •통과: 0 •만든사람: suakii

7135 : 자판기 시뮬레이션

시간 2.000s · 메모리 256MB · 제출 0 · 정답 0

문제 설명

자판기에 투입한 돈으로 음료를 구매하는 시뮬레이션을 구현하십시오.
- 자판기 음료의 종류별 이름, 가격, 재고가 먼저 등록됩니다.
- 투입 금액 W에서 요청한 음료를 차례대로 구매합니다.
- 성공 시 차감하고 남은 투입 금액과 잔돈을 위한 동전 조합(500원, 100원, 50원, 10원 단위별 최소 동전 수)을 출력합니다.
- 실패 시 이유를 출력합니다. (돈 부족: LACK_MONEY, 재고 부족: OUT_OF_STOCK, 없는 메뉴: NO_ITEM)





[제약 조건]
• 입력되는 모든 수는 정수입니다.

입력 설명

첫째 줄에 음료의 가짓수 K가 주어집니다. (1 ≤ K ≤ 10)
둘째 줄부터 K개의 줄에 음료이름 가격 재고가 공백으로 구분되어 주어집니다. (가격은 10원 단위 자연수)
그 다음 줄에 최초 투입 금액 W가 주어집니다.
마지막 줄에 N개의 구매 요청 음료의 이름들이 공백으로 구분되어 주어집니다.

출력 설명

각 구매 요청에 대해 성공 시 SUCCESS 잔액 (500:개수,100:개수,50:개수,10:개수)을 출력하고, 실패 시 에러 코드를 한 줄씩 출력합니다.

입력 예시
COPY
복사되었습니다!

3
coke 1000 5
cider 900 2
water 500 10
2000
coke cider water

출력 예시
COPY
복사되었습니다!

SUCCESS 1000 (500:2,100:0,50:0,10:0)
SUCCESS 100 (500:0,100:1,50:0,10:0)
LACK_MONEY

도움

딕셔너리로 음료 정보를 관리하고, 동전 최소 개수 배분은 탐욕적(Greedy) 방식으로 큰 동전부터 몫과 나머지를 계산하여 구하십시오.

출처/분류

NOTICE  —  BFStudy OJ 정보샘
애들아, 문제 많이 풀고 게임 잠깐 하는거지?
— 정보샘