코테 대비 python/백준
성적이 낮은 순서로 학생 출력하기
ylab
2022. 2. 16. 12:23
출처: 이코테
# 학생의 정보는 이름, 성적으로 구분
# 성적이 낮은 순서대로 = 내림차순으로 이름 출력
N= int(input())
#딕셔너리 생성
dict = {}
#딕셔너리에 쌍추가
for i in range(N):
k, v = input().split()
v =int(v)
dict[k] = v
#딕셔너리 튜플 리스트로 바꾸기
a = dict.items()
a
a = sorted(a, key = lambda x:x[1],reverse=True)
#출력
for i in a:
print(i[0], end=" ")
======================================
#정수 입력
n= int(input())
#리스트 생성
array = []
#리스트에 append
for i in range(n):
input_data = input().split()
array.append(input_data[0], int(input_data[1]))
#key 람다식 써서 해결
array = sorted(array, key= lambda student: student[1])
#출력
for student in array:
print(student[0], end= " ")
확실히 답지 풀이가 깔끔하다
근데 뭔가 쌍으로 나오니깐 딕셔너리 써야하는 압박감 들어서
딕셔너리 사용해봤다.
얻은것
1. dict.items() 체화
2. input()은 자료형이 리스트!
3. sorted 안에 key = 람다식