💡문제접근
- 가능하면 정규 표현식을 이용해서 문제를 해결하려고 노력했다. 처음 사용하는 문법이라 그런지 익숙하지 않았다.
List Comprehension
을 사용해 소문자와 대문자, 하이픈이 포함된 단어를 모두 찾은 다음 찾은 단어에 대해서 소문자로 변환해 필터링을 거친 다음 길이를 기준으로 내림차순 정렬하여 맨 앞의 단어를 join
메소드를 이용해 문자열로 처리했다.
💡코드(메모리 : 34856KB, 시간 : 116ms)
import re, sys
input = sys.stdin.readline
words = []
while True:
words.extend(input().split())
if words[-1] == 'E-N-D':
break
words = [re.findall('[a-zA-Z-]',x.lower()) for x in words]
words.sort(key =lambda x : len(x), reverse = True)
print(''.join(map(str, words[0])))
💡소요시간 : 30m