취준생의 코딩테스트 연습기

[백준] 1181번 단어 정렬 파이썬(python) 본문

코딩테스트/백준

[백준] 1181번 단어 정렬 파이썬(python)

Jiwon_C 2021. 3. 9. 23:42

# 문제 링크

www.acmicpc.net/problem/1181

 

1181번: 단어 정렬

첫째 줄에 단어의 개수 N이 주어진다. (1 ≤ N ≤ 20,000) 둘째 줄부터 N개의 줄에 걸쳐 알파벳 소문자로 이루어진 단어가 한 줄에 하나씩 주어진다. 주어지는 문자열의 길이는 50을 넘지 않는다.

www.acmicpc.net

# Soultion

1
2
3
4
5
6
7
8
9
10
11
12
13
14
= int(input())
 
li = []
for _ in range(n):
    word = input()
    li.append([len(word),word]) # 글자길이와 함께 저장
li.sort()
 
answer = []
pre_output = ''
for i in range(len(li)):
    if pre_output != li[i][1]:
        print(li[i][1])
    pre_output = li[i][1]
cs

 

4. 2차원리스트의 형태로 [글자길이, 글자] 순으로 저장

7. 글자길이와 글자순으로 sort()시킨다.

11. 이전에 출력한 글자와 같지않은지 확인하면서 정렬된 글자를 한개씩 출력

Comments