가영이의 스토리

[백준/Python]백준 25206번 너의 평점은 본문

코딩연습장/백준

[백준/Python]백준 25206번 너의 평점은

gayomii 2023. 8. 28. 16:00

🏆백준 25206번 - 너의 평점은

 

25206번: 너의 평점은

인하대학교 컴퓨터공학과를 졸업하기 위해서는, 전공평점이 3.3 이상이거나 졸업고사를 통과해야 한다. 그런데 아뿔싸, 치훈이는 깜빡하고 졸업고사를 응시하지 않았다는 사실을 깨달았다! 치

www.acmicpc.net


✍️문제


정답

final = 0
total = 0

grade_score = [4.5, 4.0, 3.5, 3.0, 2.5, 2.0, 1.5, 1.0, 0.0]
grade = ['A+', 'A0', 'B+', 'B0', 'C+', 'C0', 'D+', 'D0', 'F']

for i in range(20):
    a, b, c = input().split()
    b = float(b)
    if c != 'P':
        total += b
        final += b * grade_score[grade.index(c)]
print('{:.6f}'.format(final/total))

💫 해설 및 한줄평

등급과 등급에 해당하는 점수를 각각 list로 만들어준다. (나중에 인덱싱을 통해서 값을 가져오면 편하니깐)20개의 과목을 입력하므로 20번 반복해주는 for문을 작성한 후, 과목명, 학점, 등급을 받아온다.이후 학점을 계산해야하므로 float형태로 만들어준다.

 

등급이 P인것은 계산에서 제외해야하므로 P가 아닌 것들에 대해서만 계산할 수 있도록 if문을 사용한다.그리고 total로 전체 학점을 더해주고, final로 학점 * 등급에 해당하는 점수를 계산해준다.(c로 받아온 등급에 해당하는 인덱스를 grade_score의 동일한 인덱스를 통해 가져오는 방식이다.)

 

그리고 format형식을 통해 최종적으로 6자리 소수점으로 나타낸다.

 

계속 어려워진다 ㅠ 나는 개발자랑은 안맞나봐...

 

 

 

 

 

 

 

Comments