BeakJoon/Python
[Python] 백준 #25206번: 너의 평점은
쿼딩~
2023. 12. 16. 03:34
코드
grade_dict = {'A+': 4.5, 'A0': 4.0, 'B+': 3.5, 'B0': 3.0, 'C+': 2.5, 'C0': 2.0, 'D+': 1.5, 'D0': 1.0, 'F': 0}
total = 0 # 학점 총합을 담을 변수
result = 0 # (학점 * 과목평점) 총합을 담을 변수
for _ in range(20):
name, credit, mark = input().split()
credit = float(credit)
if mark != 'P': # 등급이 P인 과목은 계산 안함
total += credit
result += credit * grade_dict[mark]
print('%.6f' % (result / total))
딕셔너리를 사용하여 학점을 정의해주었고, if문에서 딕셔너리에 ` mark `에 해당하는 학점과 credit을 곱한 값을 result에 더해주는 것으로 코드를 간결화 하였다.
딕셔너리를 사용하여 한 줄로 간소화가 가능했다.