import re
arr = []
arr2=[]
while True:
    arr.extend(input().split())
    if arr[-1] == 'E-N-D':
        break
for i in arr:
    arr2.append(re.sub('[^a-z-]','',i.lower()))
print(sorted(arr2, key=lambda x : len(x), reverse=True)[0])

<코드 설명>

문자열들을 split하여 input해주고 이를 arr에 extend해주었다. 

arr의 마지막 원소가 'E-N-D'이면 while문을 break한다.

arr의 원소 중 알파벳(a-z, A-Z)과 하이픈(-) 빼고 제외해주었으며, 결과를 소문자로 출력해주어야 하므로 lower()해주었다. 그리고 이 를 arr2 리스트에 append해주었다.

arr2를 길이를 기준으로 sort해주고, 그 중 가장 첫번 째 원소를 출력해주었다.

 

 

<실행 결과>

'Algorithm > BOJ' 카테고리의 다른 글

[BOJ] 1316 그룹 단어 체커  (1) 2023.09.30
[BOJ] 10988 팰린드롬인지 확인하기  (0) 2023.09.30
[BOJ] 5619 세 번째  (0) 2022.11.20
[BOJ] 17413 단어 뒤집기 2  (1) 2022.11.20
[BOJ] 1543 문서 검색  (0) 2022.11.13

+ Recent posts