반응형
🎃Idea
목표는 원하는 학생의 번호가 주어지면 해당 학생의 성적을 조회하고싶다
- 학생들의 총점과 함께 학생번호 조회를 위해 인덱스를 동시에 저장한다
- 총점이 높은 순으로 정렬한다
- 여기서 조금 헤맸는데 리스트안에 [(인덱스, 점수), ..., (인덱스, 점수)] 로 저장을 했기에 원하는 위치와 순서 조회가 쉽지않았다, 이를 위해 차피 점수순으로 정렬을 해놨기에 tmp에 인덱스를 따로 빼주고 몇등인지 조회를 하기 위해 tmp.index(k)를 사용
- 해당 학점을 받는 학생 수가 (학생수 //10)로 정해져 있기에 이를 나눠준 후 학점을 계산한다
소스코드
score = ["A+", "A0", "A-", "B+", "B0", "B-", "C+", "C0", "C-", "D0"]
for tc in range(1, T+1):
total_score = []
n, k = map(int, input().split())
_max = n//10 # 성적을 최대 몇명이 받을 수 있는지
for idx, value in enumerate(range(n)):
m, f, a = map(int, input().split()) #mid, final, assingment 약자
total_score.append((idx + 1, (m * 0.35 + f * 0.45 + a * 0.2)))
total_score.sort(reverse=True, key = lambda x : x[1])
tmp = [x[0] for x in total_score] # 학생 번호 조회를 위한 과정, 위에서 정렬해놨기에 점수가 높은순으로 들어감
# 성적을 받을 수 있는 학생 수 만큼 나눠줌(계속 빼는 역할)
print(f"#{tc} {score[(tmp.index(k)) // _max]}")
반응형
'🔧알고리즘' 카테고리의 다른 글
[프로그래머스]체육복, 파이썬(python) (0) | 2022.06.09 |
---|---|
[swea]1204. 최빈수 구하기, 파이썬(python) (0) | 2022.05.26 |
[swea]2056. 연월일 달력, 파이썬(python) (0) | 2022.05.17 |
백준을 풀면 자동으로 내 깃허브에 커밋을? (BaekjoonHub, 백준허브) (0) | 2022.01.05 |
[BOJ]1747 소수&팰린드롬 (0) | 2022.01.04 |