문제 › 062

062. 장바구니 시스템

Medium 바이브코딩 MCPShoppingSystem
문제 설명
[문제] 장바구니 시스템을 제공하는 MCP 서버를 구현하시오. 온라인 쇼핑의 장바구니처럼, 상품을 이름과 가격으로 담고 빼고 총액을 계산한다. 같은 이름의 상품을 여러 번 담을 수 있으므로, 단순한 집합이 아니라 (이름, 가격) 쌍들의 목록으로 관리한다. [구현할 함수] - add_item(item: str, price: float) -> int 이름 item, 가격 price인 상품을 장바구니에 추가한다. 추가 후 장바구니에 담긴 전체 상품 개수를 반환한다. - remove_item(item: str) -> bool 이름이 item과 처음으로 일치하는 상품 하나를 제거한다. 제거에 성공하면 True, 그런 이름이 없으면 False를 반환한다. - get_cart() -> array<string> 현재 장바구니에 담긴 상품 이름들을 추가한 순서대로 배열로 반환한다. - calculate_total() -> number 장바구니에 담긴 모든 상품 가격의 합계를 반환한다. 빈 장바구니면 0이다. [입력·상태] 서버는 (이름, 가격) 쌍의 목록을 상태로 유지한다. 초기 상태는 빈 장바구니이다. [제약] - 같은 이름의 상품이 여러 개 담길 수 있다. - remove_item은 첫 번째 매칭 하나만 제거한다. - 없는 상품 제거는 False, 빈 장바구니의 총액은 0, 목록은 빈 배열 [] 이다. [예시] add_item("사과", 1000) -> 1 add_item("사과", 1000); calculate_total() -> 1000 add_item("사과", 1000); add_item("바나나", 500); get_cart() -> ["사과", "바나나"] add_item("사과", 1000); remove_item("사과") -> True; calculate_total() -> 0 remove_item("없음") -> False # 없는 상품 (경계) get_cart() -> [] # 빈 장바구니 (경계) calculate_total() -> 0 # 빈 장바구니 (경계)
로그인하고 풀기 AI가 자동 채점하고 즉시 정답·해설을 알려줘요. 무료.