025. 텍스트 분석기
Medium
바이브코딩
MCPNLPText
문제 설명
[문제]
텍스트를 분석하는 MCP 서버를 구현한다. 단어는 공백을 기준으로 분리하고, 문장은 마침표를 기준으로 나눈다.
[구현할 함수]
- word_frequency(text: str) -> List[List[str]]
공백으로 단어를 분리한 뒤 [단어, 횟수] 쌍의 배열을 반환한다. 횟수는 문자열로 담는다. 단어는 처음 등장한 순서대로 나열한다. 예: "a b a" -> [["a","2"], ["b","1"]].
- extract_keywords(text: str, top_n: int) -> List[str]
등장 횟수가 많은 순으로 상위 top_n개의 단어를 배열로 반환한다. 횟수가 같으면 먼저 등장한 단어를 앞에 둔다.
- summarize_text(text: str) -> str
마침표를 기준으로 나눈 첫 번째 문장을 반환한다(마침표 제외). 예: "First. Second." -> "First".
[제약]
- 단어 분리는 공백 기준, 문장 분리는 마침표('.') 기준이다.
- 동률(같은 횟수)일 때의 순서는 등장 순서를 따른다.
[예시]
word_frequency("a b a") -> [["a","2"], ["b","1"]]
extract_keywords("a b a c b a", 2) -> ["a", "b"] # a 3회, b 2회
summarize_text("First. Second.") -> "First"
로그인하고 풀기
AI가 자동 채점하고 즉시 정답·해설을 알려줘요. 무료.