문제 › 103

103. 토큰화 분석기

Hard 바이브코딩 MCPNLPText
문제 설명
[문제] 텍스트 토큰화 분석기 MCP 서버를 구현한다. 토큰화(tokenize)란 문장을 의미 단위(토큰)로 쪼개는 것이다. 여기서는 단순하게 공백(스페이스)을 기준으로 단어를 나눈다. 예를 들어 "이 문장을 토큰화"는 ["이", "문장을", "토큰화"] 세 토큰이 된다. [구현할 함수] - tokenize(text: str) -> 문자열 배열 텍스트를 공백 기준으로 나눈 토큰 배열을 반환한다. - count_tokens(tokens: 문자열 배열) -> int 토큰 배열의 개수를 반환한다(중복 포함, 즉 배열 길이). - get_vocabulary(tokens: 문자열 배열) -> 문자열 배열 토큰 배열에서 중복을 제거한 어휘(고유 토큰)를 오름차순으로 정렬해 반환한다. [입력·상태] text는 문자열, tokens는 문자열 배열이다. 서버는 상태를 유지하지 않는다(각 호출이 독립적). [제약] - count_tokens는 중복을 세지 않고 제거하지 않은 전체 개수를 반환한다(예: ["a","b","a"]는 3). - get_vocabulary는 중복을 제거하고 정렬한다(예: ["a","b","a"]는 ["a","b"]). [예시] tokenize("이 문장을 토큰화") -> ["이", "문장을", "토큰화"] count_tokens(["a", "b", "a"]) -> 3 get_vocabulary(["a", "b", "a"]) -> ["a", "b"]
로그인하고 풀기 AI가 자동 채점하고 즉시 정답·해설을 알려줘요. 무료.