문제
내 코드
n = int(input())
answer = []
for i in range(n):
temp = input()
if [len(temp), temp] not in answer:
answer.append([len(temp), temp])
answer.sort()
for j in range(len(answer)):
print(answer[j][1])
로직
- 중복된 데이터가 아니면, answer에 길이와 데이터를 추가
- 정렬
효율적인 코드
n = int(input())
answer = []
for i in range(n):
answer.append(input())
answer = list(set(answer))
answer.sort(key = lambda x:(len(x), x))
for word in answer:
print(word)
피드백
- 람다를 사용하면 2차원 배열을 사용하지 않고 풀 수 있다.
배운 것
- 람다로 조건 여러개를 지정해서 정렬할 수 있다.
(여기서는 길이 --> 순서)