단어 분석
Coddy Ruby 여정의 로직 및 흐름 섹션에 포함된 레슨 — 56개 중 54번째.
문자열, 해시, Hash.new(0), 그리고 Enumerable 메서드를 한꺼번에 활용하는 독립적인 챌린지입니다.
챌린지
중급한 줄의 입력(문장)을 읽습니다. 이를 분석하여 다음 세 줄을 출력하세요:
- 고유한 단어의 수 (대소문자 구분 없음, 문장 부호 제거). 반복되는 단어는 한 번만 계산합니다.
- 두 번 이상 나타나는 반복되는 단어들을 알파벳순으로 정렬하고
,로 연결하여 출력합니다. 해당되는 단어가 없으면(none)을 출력합니다. - 앞뒤가 똑같은 회문(palindrome) 단어(길이 2 이상)들을 알파벳순으로 정렬하고
,로 연결하여 출력합니다. 해당되는 단어가 없으면(none)을 출력합니다.
처리하기 전에 각 단어에서 .,!?:;"() 문자를 제거하세요. 비교를 위해 모든 문자를 소문자로 변환합니다.
입력이 Madam saw a racecar. Dad said hello hello to mom.인 경우, 출력은 다음과 같습니다:
9
hello
dad, madam, mom, racecar직접 해보기
input = gets.chomp
# TODO: split, 문장 부호 제거, 소문자 변환 후 출력:
# 고유 단어 수, 반복된 단어들, 회문 (length >= 2)
이 레슨에는 짧은 퀴즈가 포함되어 있습니다. 레슨을 시작해 문제를 풀고 진행 상황을 기록하세요.