문제 › 058

058. 전화번호부

Medium 바이브코딩 MCPContactCRUD
문제 설명
[문제] 이름과 전화번호를 저장·검색·삭제하는 전화번호부 MCP 서버를 구현한다. 서버는 이름을 키로, 전화번호를 값으로 하는 저장소를 유지한다. [구현할 함수] - add_contact(name: str, phone_number: str) -> int 새 연락처를 추가하고, 추가한 뒤의 전체 연락처 수를 정수로 돌려준다. - search_contact(name: str) -> str 이름으로 전화번호를 검색한다. 등록된 이름이면 전화번호 문자열을, 없으면 빈 문자열 ""을 돌려준다. - delete_contact(name: str) -> bool 이름으로 연락처를 삭제한다. 삭제에 성공하면 참, 등록되지 않은 이름이면 거짓을 돌려준다. - list_contacts() -> List[str] 등록된 이름 목록을 문자열 배열로 돌려준다(정렬 순서는 무관). 없으면 빈 배열을 돌려준다. [입력·상태] 서버 인스턴스가 이름->전화번호 형태의 키-값 저장소를 유지한다. [제약] - add_contact는 정수, search_contact는 문자열, delete_contact는 불리언, list_contacts는 문자열 배열을 돌려준다. - 없는 이름에 대한 검색/삭제는 예외 없이 각각 빈 문자열/거짓을 돌려준다. [예시] # 초기 빈 상태에서 add_contact("홍길동", "010-1234-5678") -> 1 search_contact("홍길동") -> "010-1234-5678" # 추가 후 삭제 add_contact("홍길동", "010-1111-2222") -> 1 delete_contact("홍길동") -> True list_contacts() -> [] # 빈 상태에서 없는 이름 삭제 delete_contact("없음") -> False
로그인하고 풀기 AI가 자동 채점하고 즉시 정답·해설을 알려줘요. 무료.