https://www.acmicpc.net/problem/25206
๋ฌธ์
์ธํ๋ํ๊ต ์ปดํจํฐ๊ณตํ๊ณผ๋ฅผ ์กธ์ ํ๊ธฐ ์ํด์๋, ์ ๊ณตํ์ ์ด 3.3 ์ด์์ด๊ฑฐ๋ ์กธ์ ๊ณ ์ฌ๋ฅผ ํต๊ณผํด์ผ ํ๋ค. ๊ทธ๋ฐ๋ฐ ์๋ฟ์ธ, ์นํ์ด๋ ๊น๋นกํ๊ณ ์กธ์ ๊ณ ์ฌ๋ฅผ ์์ํ์ง ์์๋ค๋ ์ฌ์ค์ ๊นจ๋ฌ์๋ค!
์นํ์ด์ ์ ๊ณตํ์ ์ ๊ณ์ฐํด์ฃผ๋ ํ๋ก๊ทธ๋จ์ ์์ฑํด๋ณด์.
์ ๊ณตํ์ ์ ์ ๊ณต๊ณผ๋ชฉ๋ณ (ํ์ × ๊ณผ๋ชฉํ์ )์ ํฉ์ ํ์ ์ ์ดํฉ์ผ๋ก ๋๋ ๊ฐ์ด๋ค.
์ธํ๋ํ๊ต ์ปดํจํฐ๊ณตํ๊ณผ์ ๋ฑ๊ธ์ ๋ฐ๋ฅธ ๊ณผ๋ชฉํ์ ์ ๋ค์ ํ์ ๊ฐ๋ค.
A+ | 4.5 |
A0 | 4.0 |
B+ | 3.5 |
B0 | 3.0 |
C+ | 2.5 |
C0 | 2.0 |
D+ | 1.5 |
D0 | 1.0 |
F | 0.0 |
P/F ๊ณผ๋ชฉ์ ๊ฒฝ์ฐ ๋ฑ๊ธ์ด P๋๋ F๋ก ํ์๋๋๋ฐ, ๋ฑ๊ธ์ด P์ธ ๊ณผ๋ชฉ์ ๊ณ์ฐ์์ ์ ์ธํด์ผ ํ๋ค.
๊ณผ์ฐ ์นํ์ด๋ ๋ฌด์ฌํ ์กธ์ ํ ์ ์์๊น?
์ ๋ ฅ
20์ค์ ๊ฑธ์ณ ์นํ์ด๊ฐ ์๊ฐํ ์ ๊ณต๊ณผ๋ชฉ์ ๊ณผ๋ชฉ๋ช , ํ์ , ๋ฑ๊ธ์ด ๊ณต๋ฐฑ์ผ๋ก ๊ตฌ๋ถ๋์ด ์ฃผ์ด์ง๋ค.
์ถ๋ ฅ
์นํ์ด์ ์ ๊ณตํ์ ์ ์ถ๋ ฅํ๋ค.
์ ๋ต๊ณผ์ ์ ๋์ค์ฐจ ๋๋ ์๋์ค์ฐจ๊ฐ 10−4 ์ดํ์ด๋ฉด ์ ๋ต์ผ๋ก ์ธ์ ํ๋ค.
ํ์ด
dic = {'A+':4.5, 'A0': 4.0, 'B+':3.5, 'B0':3.0, 'C+':2.5, 'C0':2.0, 'D+':1.5, 'D0':1.0, 'F':0.0}
score_sum = 0
credit_sum = 0
for _ in range(20):
subject, credit, grade = map(str, input().split())
credit = float(credit)
if grade!='P':
credit_sum += credit
score_sum += dic[grade] * credit
avg_grade = score_sum/credit_sum if credit_sum!=0 else 0
print(avg_grade)
'๐ ํ์ด์ฌ ์์ด์ง' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[BOJ][Python] ๋ฐฑ์ค 1475๋ฒ: ๋ ์ง ๊ณ์ฐ (0) | 2024.10.16 |
---|---|
[BOJ][Python] ๋ฐฑ์ค 1789๋ฒ: ์๋ค์ ํฉ (0) | 2024.10.15 |
[BOJ][Python] ๋ฐฑ์ค 2563๋ฒ: ์์ข ์ด (0) | 2024.10.15 |
[BOJ][Python] ๋ฐฑ์ค 9655๋ฒ: ๋๊ฒ์ (0) | 2024.10.14 |
[BOJ][Python] ๋ฐฑ์ค 1010๋ฒ: ๋ค๋ฆฌ ๋๊ธฐ (0) | 2024.09.27 |