백준
백준 1181번 문제풀이 [python]
ys.k
2023. 7. 4. 09:48
포스팅에 앞서 내용이 틀릴 수 있습니다.
해당 부분 지적 감사히 받습니다.
문제를 보자.
확실히 Top100 문제를 풀 때 보다, 한 가지 주제에 대해 여러 가지 사례를 공부하니 훨씬 이해와 학습이 빠르다.
코드를 보자.
코드
a = int(input())
array = []
for i in range(a):
array.append(input())
array = sorted(set(array), key = lambda x:(len(x),x))
for i in array:
print(i)
드디어 뭔가 있어보이는 코드를 스스로 짜서 발전했음을 느낀다. ㅋㅋ
근데 별거 없다.
set 함수를 통해 중복을 제거하고 해당 값을 list로 반환.
중복제거된 리스트를 길이 순 정렬 후 요소 순 정렬을 진행한다.
그리고 for문을 돌며 요소를 하나씩 출력한다.
배운 점
1. 중복을 제거할 때, set() 함수를 먼저 사용하는 게 좋다. 왜냐하면 정렬 진행 후 set 함수를 사용하면 순서가 뒤죽박죽이 된다.