흔하디 흔한 if-else문을 익히는 문제이다.
다만 이렇게 정리하는 이유는 원래 사용하던 C/C++이었으면 금방 풀었을텐데,
아직도 2개 이상의 입력받기를 할 때 python으로 처리하는 방법이 계속 햇갈려서이다.
정리겸 한 번 올리기로 한다.
예제 입력에서 "name value"의 형태로 입력받는 부분이 계속 햇갈린다..
그냥 scanf로 받으면 되는 C/C++과는 살짝 다르게 python을 받기 때문이다.
중요한 것은 split()을 사용하고, 각각의 변수에 이를 통해서 저장하도록 만들어야 한다는 점이다.
즉, 다음과 같은 형태가 필요하다.
1
|
name, score = input().split()
|
cs |
결국 내가 만든 정답코드는 다음과 같다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
|
repeat = int(input())
for i in range(0, repeat):
name, score = input().split() # 이 부분이 중요. 2개 이상 입력받기를 계속 햇갈리는 중...2021-7-16
# print(name, score, sep=' ')
if int(score) >= 97:
grade = "A+"
elif int(score) <= 96 and int(score) >= 90:
grade = "A"
elif int(score) <= 89 and int(score) >= 87:
grade = "B+"
elif int(score) <= 86 and int(score) >= 80:
grade = "B"
elif int(score) <= 79 and int(score) >= 77:
grade = "C+"
elif int(score) <= 76 and int(score) >= 70:
grade = "C"
elif int(score) <= 69 and int(score) >= 67:
grade = "D+"
elif int(score) <= 66 and int(score) >= 60:
grade = "D"
else:
grade = "F"
print(name, grade, sep=' ')
|
cs |
문제는 내가 바보라서 일일이 int(score)를 elif에 넣었다는 것이다.
그냥 간단하게 ....
1
|
score = int(score)
|
cs |
이렇게 한 다음 elif문에 score만 넣으면 되는 것을....
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
|
repeat = int(input())
for i in range(0, repeat):
name, score = input().split() # 이 부분이 중요. 2개 이상 입력받기를 계속 햇갈리는 중...2021-7-16
# print(name, score, sep=' ')
score = int(score) # 이렇게 하나만 넣으면 score는 int형으로 변환이 된다.
if score >= 97:
grade = "A+"
elif score <= 96 and score >= 90:
grade = "A"
elif score <= 89 and score >= 87:
grade = "B+"
elif score <= 86 and score >= 80:
grade = "B"
elif score <= 79 and score >= 77:
grade = "C+"
elif score <= 76 and score >= 70:
grade = "C"
elif score <= 69 and score >= 67:
grade = "D+"
elif score <= 66 and score >= 60:
grade = "D"
else:
grade = "F"
print(name, grade, sep=' ')
|
cs |
출처: https://www.acmicpc.net/problem/11367
'코딩 문제풀이 및 연습 > Python 연습' 카테고리의 다른 글
[백준]20254_Site Score 파이썬 (0) | 2021.07.16 |
---|---|
[백준]13597_Tri-du 파이썬 (0) | 2021.07.16 |
[백준]10093_숫자 파이썬 (0) | 2021.07.16 |
[백준]11104_Fridge of Your Dreams 파이썬 (0) | 2021.07.15 |
[백준 1712번]손익분기점_파이썬 (0) | 2020.08.15 |