303. 심리 테스트 서비스
Easy
바이브코딩
JoCodingVibe ContestMCPPsychologyQuiz
문제 설명
[문제]
심리 테스트를 만들고 질문을 추가하고 답안을 받아 결과를 돌려주는 MCP 서버를 구현한다. 서버 인스턴스 안에 테스트들을 사전(tests)으로 유지하며, 테스트 이름으로 각 테스트를 구분한다. 초기 상태에는 테스트가 하나도 없다.
[구현할 함수]
- create_test(name: str) -> int
주어진 이름으로 테스트를 새로 만든다. 생성 후 전체 테스트 수를 반환한다.
- add_question(test_name: str, question: str) -> bool
해당 테스트에 질문을 추가한다. 성공하면 True, 존재하지 않는 테스트면 False 를 반환한다.
- submit_answer(test_name: str, answer: str) -> bool
해당 테스트에 답안을 제출한다. 성공하면 True, 존재하지 않는 테스트면 False 를 반환한다.
- get_result(test_name: str) -> str
해당 테스트의 결과 문자열을 반환한다. 존재하지 않는 테스트면 빈 문자열 "" 을 반환한다.
- get_test_info(test_name: str) -> int
해당 테스트의 질문 개수를 반환한다. 존재하지 않는 테스트면 -1 을 반환한다.
[입력/상태]
서버는 "테스트 이름 -> 테스트 정보" 사전(tests)을 유지한다.
[제약]
- 존재하지 않는 테스트에 대해: add_question/submit_answer 는 False, get_result 는 "", get_test_info 는 -1 을 반환한다.
- 초기 상태에는 테스트가 없다.
[예시] (각 예시는 초기 빈 상태에서 시작)
create_test("MBTI") -> 1
add_question("없음", "Q1") -> False # 없는 테스트
get_result("없음") -> "" # 없는 테스트
get_test_info("없음") -> -1 # 없는 테스트
로그인하고 풀기
AI가 자동 채점하고 즉시 정답·해설을 알려줘요. 무료.