๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
์•Œ๊ณ ๋ฆฌ์ฆ˜ ๐Ÿ’ก/๋ฐฑ์ค€

1181.๋‹จ์–ด ์ •๋ ฌ.py

by @ENFJ 2023. 8. 9.
# 20230818
import sys
sys.stdin=open("input.txt","r")
n = int(input())  # ๋‹จ์–ด์˜ ๊ฐœ์ˆ˜๋ฅผ ์ž…๋ ฅ ๋ฐ›๊ณ 

word = []  # word ๋ฅผ ๋ฆฌ์ŠคํŠธ๋กœ ์„ค์ •
for i in range(n):  # n ๋ฒˆ ๋งŒํผ for ๋ฌธ์œผ๋กœ ๋‹จ์–ด๋“ค์„ ์ถ”๊ฐ€(append)
    word.append(input())

set_word = list(set(word)) # ์ค‘๋ณต์„ ํ—ˆ์šฉํ•˜์ง€ ์•Š๋Š” set์˜ ํŠน์„ฑ(์ค‘๋ณต์ œ๊ฑฐ)- ํ•˜์ง€๋งŒ ์ˆœ์„œ๋Š” ๋’ค์ฃฝ๋ฐ•์ฃฝ์ด๋‹ค.
print(set_word)

sort_word = [] # ์ •๋ ฌํ•œ ๋‹จ์–ด๋ฅผ ์ €์žฅํ•ด์ค„ ๋ฆฌ์ŠคํŠธ sort_word ๋ณ€์ˆ˜
for i in set_word: # ๋ฆฌ์ŠคํŠธ set_word ๋ฅผ ํ•˜๋‚˜์”ฉ i ์— ๋„ฃ์œผ๋ฉด์„œ ๋ฐ˜๋ณต
    sort_word.append((len(i),i)) # sort_word ๋ฆฌ์ŠคํŠธ์— ๋‹จ์–ด๋ฅผ (len(word),word)๋กœ ๋ฌถ์–ด์„œ ์ €์žฅ

print(sort_word)

result = sorted(sort_word) # sorted ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ •๋ ฌํ•œ ๊ฐ’๋“ค์„ result ๋ณ€์ˆ˜์— ์ €์žฅ

for len_word, word in result:  # sorted ๋กœ ์ •๋ ฌํ•œ ๋ฆฌ์ŠคํŠธ ์ธ๋ฑ์‹ฑ ํ•˜๋‚˜๋งˆ๋‹ค 2๊ฐœ์˜ ์ธ์ˆ˜๊ฐ€ ์žˆ๊ธฐ ๋•Œ๋ฌธ์— for๋ฌธ์—์„œ len(word)์™€ word 2๊ฐœ์˜ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์“ดํ›„ ์ตœ์ข… ์ถœ๋ ฅ๊ฐ’์— ํ•„์š”ํ•œ word ๋งŒ ์ถœ๋ ฅ
    print(word)