티스토리 뷰

문제 링크

 

25206번: 너의 평점은

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

www.acmicpc.net

문제 풀이

GPT = 0
CT = 0

for i in range(20):
    subject, credit, grade = input().split()

    if (grade != "P"):
        CT += float(credit)

    match grade:
        case "A+":
            grade = 4.5
        case "A0":
            grade = 4.0
        case "B+":
            grade = 3.5
        case "B0":
            grade = 3.0
        case "C+":
            grade = 2.5
        case "C0":
            grade = 2.0
        case "D+":
            grade = 1.5
        case "D0":
            grade = 1.0
        case "F":
            grade = 0
        case "P":
            grade = 0

    GPT += float(credit) * grade

print(GPT/CT)

 

*key point: match-case 문을 이용하여 등급에 따른 과목평점을 계산하도록 한다.

 

*comment: case 수가 많아지면 딕셔너리를 활용하는 것이 훨씬 깔끔한 코드가 될 것 같다.

댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/09   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30
글 보관함