728x90
반응형
백준 BAEKJOON 29614번 학점계산프로그램 [PYTHON/파이썬]
<문제 출처> (BRONZE Ⅱ)
https://www.acmicpc.net/problem/29614
29614번: 학점계산프로그램
첫째 줄에 과목별 등급이 나열된 문자열 $S$가 주어진다. 등급 사이에는 별도의 구분자가 없다. 문자열은 표에 있는 문자들로만 이루어져 있으며, 최대 $1\,000$ 글자로 이루어져 있다.
www.acmicpc.net
<풀이>
필자의 경우 입력값 맨 마지막에 무의미한 특수기호를 붙여서 풀었다.
for문을 순회하여 학점이 담긴 리스트를 만든 후
그 리스트를 또 순회하여 학점의 평균을 도출했다.
<코드>
grade_dict = {
"A+": 4.5,
"A": 4.0,
"B+": 3.5,
"B": 3.0,
"C+": 2.5,
"C": 2.0,
"D+": 1.5,
"D": 1.0,
"F": 0.0,
}
grade = input() + "@" # for 순회를 위해 무의미한 @ 추가
subject = []
for i in range(len(grade) - 1):
if grade[i] == "+":
continue
if grade[i + 1] == "+":
subject.append(grade[i] + "+")
else:
subject.append(grade[i])
total = 0
for s in subject:
total += grade_dict[s]
print(total / len(subject))
728x90
반응형
'ALGORITHM > PYTHON' 카테고리의 다른 글
백준 BAEKJOON 29701번 모스 부호 [PYTHON/파이썬] (0) | 2023.09.11 |
---|---|
백준 BAEKJOON 5211번 가단조와 다장조 [PYTHON/파이썬] (0) | 2023.09.08 |
[PYTHON] 프로그래머스 문자열 출력하기 (0) | 2023.09.03 |
백준 BAEKJOON 28446번 볼링공 찾아주기 [PYTHON/파이썬] (0) | 2023.08.26 |
백준 BAEKJOON 28691번 정보보호학부 동아리 소개 [PYTHON/파이썬] (0) | 2023.08.24 |