본문 바로가기
프로그래밍/이것이 코딩테스트다

이것이 코딩테스트다 6일차 - 정렬 문제

by 수삼이는코딩중 2023. 7. 7.
728x90

<3> 성적이 낮은 순서로 학생 출력하기

굳이 dictionary로 안 받아도 되는데 일단 받아봄

#name, score
#성적 낮은 순(오름차순)으로 '학생 이름' 출력

n= int(input())

student = dict()

for i in range(n) : 
  key, value = input().split()
  student[key]=int(value)

print(student)
student_sorted = sorted(student.items(),key=lambda x : x[1])
//키값으로 정렬하는 방법. 정렬후에는 list내 튜플 형식으로 반환된다.

for key,value in student_sorted : 
  print(key)


처음부터 리스트로 받기

#name, score
#성적 낮은 순(오름차순)으로 '학생 이름' 출력

n= int(input())

student = []
for i in range(n) : 
  input_data = input().split()
  student.append((input_data[0],int(input_data[1]))) #list에 tuple로 추가
  
print(student)
student.sort(key=lambda x : x[1]) # 오름차순정렬

for i in student : 
  print(i[0],end=‘ ‘)


어려울 건 없지만 매우 기본적인 게 헷갈릴 수 있으니 조심!

댓글