백준_1181번

정소담·2023년 1월 29일
0

BOJ Short Review

목록 보기
22/44
post-thumbnail

1181번 단어정렬

주어지는 단어들을 길이가 짧은 순으로 출력하는데
길이가 같다면 사전 순으로 출력하는 문제.

# 1안
n = sorted(set([input() for _ in range(int(input()))]))
# 중복단어는 한 번만 출력하는 조건이 있어서 set으로 중복 제거하고
# sorted 함수를 사용하여 정렬하였다.
for x in range(51): # 문자열의 길이가 50을 넘지 않아 50까지 순회하도록 했다.
    for y in n: 
        if len(y) == x: # 리스트 안에 x와 같은 길이의 단어가 있으면
            print(y) # 출력하는데 이미 정렬이 되어있으므로
            # 길이가 같은 단어들도 사전순으로 출력이 된다.
# 2안
n = sorted(set([input() for _ in range(int(input()))]))
# 똑같이 중복제거, 정렬 한 후
print(*sorted(n,key=len),sep='\n')
# 정렬한 리스트를 길이 순으로 한번더 정렬하고 중간에 개행문자를 넣어
# 한 줄씩 출력되도록 했다.
profile
Hi ! I'm newbie :)

0개의 댓글