Algorithm/BOJ

[BOJ] 1629 곱셈

SolB 2022. 11. 20. 17:35

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해주고, 그 중 가장 첫번 째 원소를 출력해주었다.

 

 

<실행 결과>