[백준] 25206: 너의 평점은 - 파이썬[python]

다인·2024년 8월 10일

백준

목록 보기
26/112
post-thumbnail

find는 오직 문자열에서만 쓰일 수 있다는 걸 다시 한번 배울 수 있는 문제였당.

1. 내 풀이

gradeList = ["A+", "A0", "B+", "B0", "C+", "C0", "D+", "D0", "F"]
creditList = [4.5, 4.0, 3.5, 3.0, 2.5, 2.0, 1.5, 1.0, 0.0]
result = 0
sum = 0

for _ in range(20):
    subject, credit, grade = map(str, input().split())
    if grade == "P":
        continue
    result += float(credit) * creditList[gradeList.index(grade)] # find는 리스트 사용 불가!
    sum += float(credit)

print(round(result/sum, 6))

2. 조금 개선한 풀이

gradeList = ["A+", "A0", "B+", "B0", "C+", "C0", "D+", "D0", "F"]
creditList = [4.5, 4.0, 3.5, 3.0, 2.5, 2.0, 1.5, 1.0, 0.0]
result = 0
sum = 0

for _ in range(20):
    subject, credit, grade = input().split()
    if grade != "P":
        result += float(credit) * creditList[gradeList.index(grade)] # find는 리스트 사용 불가!
        sum += float(credit)

print(result/sum)
  • map()을 사용하지 않고
  • ==와 conitnue를 !=로 바꾸었다.

결론

엥 진짜 사소하게 바꾼 건데 시간이 더 빨라졌다..,, 모징 map 때문인가?

0개의 댓글