나의 풀이
n = int(input())
dictGrade = {}
for i in range(n):
name, grade = input().split(' ')
dictGrade[name] = grade
sDictGrade = sorted(dictGrade, key = lambda x : dictGrade[x])
for key in sDictGrade:
print(key, end=' ')
정답
n = int(input())
array = []
for i in range(n):
input_data = input().split()
array.append((input_data[0], int(input_data[1])))
array = sorted(array, key=lambda student: student[1])
for student in array:
print(student[0], end = ' ')
이번 문제같은 경우 정답이 조금 해깔린다.
array = sorted(array, key=lambda student: student[1])
for student in array:
print(student[0], end = ' ')
위 부분에 lambda 식에 처음 사용된 student가 갑자기 for문을 통해 정렬된 값을 나타내는 것으로 사용된다.
정렬된 값 array를 내버려두고 선언도 안한 student가 사용 되는 것은 혼란스러웠다
'알고리즘' 카테고리의 다른 글
부품 찾기 (0) | 2021.12.19 |
---|---|
두 배열의 원소 교체 (0) | 2021.12.19 |
숫자 카드 게임 그리디 (0) | 2021.12.15 |
큰 수의 법칙 그리디 (0) | 2021.12.14 |
미로 탈출 - bfs (0) | 2021.12.13 |