728x90
반응형
성적이 낮은 순서로 학생 출력하기
난이도 : 下 풀이 시간 : 20분
시간 제한 : 1초 메모리 제한 : 128 MB
해답
n = int(input())
array = []
for i in range(n):
input_list = input().split()
array.append((input_list[0], int(input_list[1])))
array = sorted(array, key=lambda x: x[1])
for x in array:
print(x[0], 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=' ')
해설
n과 array에 입력을 받습니다. array에 입력을 받을 때는 우선 input_list에 저장한 뒤 이름과 성적을 나누어 저장합니다.
그리고 sorted() 함수를 사용할 때 key 옵션을 lambda 함수와 함께 사용합니다.
lambda 함수 뒤에 나오는 x는 튜플이고, x[1]은 튜플에서 성적값을 의미합니다.
즉, array에 담긴 정보들을 x라는 튜플에 저장하고 x[1] 즉 성적값을 기준으로 오름차순으로 정렬하겠다는 의미입니다.
print() 함수로 출력할 때는 x 튜플을 기준으로 출력해줍니다.
728x90
반응형
'알고리즘 (Python) > 이것이 코딩 테스트다 with 파이썬' 카테고리의 다른 글
[이진 탐색 알고리즘] 부품 찾기 - 파이썬(python) (0) | 2020.12.15 |
---|---|
[정렬 알고리즘] 두 배열의 원소 교체 - 파이썬(python) (0) | 2020.12.14 |
[정렬 알고리즘] 위에서 아래로 - 파이썬(python) (0) | 2020.12.14 |
[BFS 알고리즘] 미로 탈출 - 파이썬(python) (0) | 2020.12.14 |
[DFS 알고리즘] 음료수 얼려 먹기 - 파이썬(python) (0) | 2020.12.14 |