문제
어떤 사람의 C언어 성적이 주어졌을 때, 평점은 몇 점인지 출력하는 프로그램을 작성하시오.
A+: 4.3, A0: 4.0, A-: 3.7
B+: 3.3, B0: 3.0, B-: 2.7
C+: 2.3, C0: 2.0, C-: 1.7
D+: 1.3, D0: 1.0, D-: 0.7
F: 0.0
입력
첫째 줄에 C언어 성적이 주어진다. 성적은 문제에서 설명한 13가지 중 하나이다.
출력
첫째 줄에 C언어 평점을 출력한다.
예제 입력 1
A0
예제 출력 1
4.0
❣ 나의 풀이
from collections import defaultdict
lst=[["A+", 4.3],["A0", 4.0], ["A-", 3.7],
["B+", 3.3],["B0", 3.0], ["B-", 2.7],
["C+", 2.3],["C0", 2.0], ["C-", 1.7],
["D+", 1.3],["D0", 1.0], ["D-", 0.7],
["F", 0.0]]
dic=defaultdict(list)
for l in lst :
dic[l[0]]=l[1]
print(dic[input()])
딕셔너리에서 입력 받은 성적의 평점을 출력한다.
💦 다른 사람 풀이
grade = {
"A+":4.3,
"A0":4.0,
"A-":3.7,
"B+":3.3,
"B0":3.0,
"B-":2.7,
"C+":2.3,
"C0":2.0,
"C-":1.7,
"D+":1.3,
"D0":1.0,
"D-":0.7,
"F":0.0
}
score = input()
print(grade[score])
직접 딕셔너리를 만듦.
나보다 20ms 빠르다.
문제 출처 💁♀️ 백준
반응형
'coding test' 카테고리의 다른 글
[파이썬] 9012. 괄호 (0) | 2021.04.30 |
---|---|
[파이썬] 이번학기 평점은 몇점? (0) | 2021.04.30 |
[파이썬] 11718. 그대로 출력하기 (0) | 2021.04.29 |
[파이썬] 1157. 단어 공부 (0) | 2021.04.28 |
[파이썬] 10809. 알파벳 찾기 (0) | 2021.04.28 |