7071 : 재고 관리
•시간제한: 1.000 S
•메모리제한: 256 MB
•제출: 0
•통과: 0
•만든사람: suakii
문제 설명
BFStudy 편의점 주인은 복잡한 재고를 직접 관리하기 위한 프로그램이 필요합니다.
다음 네 가지 명령을 처리하는 재고 관리 시스템을 구현하십시오.
-
-
-
-
[제약 조건]
• 명령 수 $N$: $1 \le N \le 1{,}000$
• 품목명 길이: $\le 20$, 수량: $1 \le \text{수량} \le 10{,}000$
다음 네 가지 명령을 처리하는 재고 관리 시스템을 구현하십시오.
-
IN 품목 수량: 해당 품목을 지정된 수량만큼 입고합니다.-
OUT 품목 수량: 해당 품목을 지정된 수량만큼 출고합니다. 재고가 부족하면 INSUFFICIENT를 출력하고 재고는 변하지 않습니다.-
STOCK 품목: 해당 품목의 현재 재고 수량을 품목: 수량 형식으로 출력합니다. (등록되지 않은 품목은 0으로 처리)-
LIST: 현재 등록된 모든 품목과 재고를 품목명 오름차순으로 한 줄씩 출력합니다.[제약 조건]
• 명령 수 $N$: $1 \le N \le 1{,}000$
• 품목명 길이: $\le 20$, 수량: $1 \le \text{수량} \le 10{,}000$
입력 설명
첫째 줄부터 N개의 줄에 위에서 정의된 명령이 한 줄에 하나씩 주어집니다. (1 ≤ N ≤ 1,000)
품목명은 영어 소문자로 이루어지며 최대 20자, 수량은 1 이상 10,000 이하의 정수입니다.
품목명은 영어 소문자로 이루어지며 최대 20자, 수량은 1 이상 10,000 이하의 정수입니다.
출력 설명
STOCK과 LIST 명령, 그리고 오류 발생 시 결과를 각각 한 줄씩 출력합니다.
입력 예시
COPY
복사되었습니다!
복사되었습니다!
IN apple 100
IN banana 50
OUT apple 30
STOCK apple
STOCK banana
LIST
출력 예시
COPY
복사되었습니다!
복사되었습니다!
apple: 70
banana: 50
apple: 70
banana: 50
도움
딕셔너리를 이용해 재고를 관리하고,
LIST 명령 시 sorted(stock.items())로 사전순 정렬 출력이 가능합니다.OUT 처리 시 딕셔너리에 키가 없는 경우(미등록 품목)도 재고 부족(INSUFFICIENT)으로 처리합니다.