ํ๊ท ๊ตฌํ๊ธฐ[1546๋ฒ]
Q. ์ธ์ค์ด๋ ๊ธฐ๋ง๊ณ ์ฌ๋ฅผ ๋ง์ณค๋ค. ์ธ์ค์ด๋ ์ ์๋ฅผ ์กฐ์ํด์ ์ง์ ๊ฐ์ ธ๊ฐ๊ธฐ๋ก ํ๋ค. ์ผ๋จ ์ธ์ค์ด๋ ์๊ธฐ ์ ์ ์ค์ ์ต๋๊ฐ์ ๊ณจ๋๋ค. ์ด ๊ฐ์ M์ด๋ผ๊ณ ํ๋ค. ๊ทธ๋ฆฌ๊ณ ๋์ ๋ชจ๋ ์ ์๋ฅผ ์ ์/M*100์ผ๋ก ๊ณ ์ณค๋ค.
์๋ฅผ ๋ค์ด, ์ธ์ค์ด์ ์ต๊ณ ์ ์ด 70์ด๊ณ , ์ํ์ ์๊ฐ 50์ด์์ผ๋ฉด ์ํ์ ์๋ 50/70*100์ด ๋์ด 71.43์ ์ด ๋๋ค.
์ธ์ค์ด์ ์ฑ์ ์ ์์ ๋ฐฉ๋ฒ๋๋ก ์๋ก ๊ณ์ฐํ์ ๋, ์๋ก์ด ํ๊ท ์ ๊ตฌํ๋ ํ๋ก๊ทธ๋จ์ ์์ฑํ์์ค.
์ ๋ ฅ
์ฒซ์งธ ์ค์ ์ํ ๋ณธ ๊ณผ๋ชฉ์ ๊ฐ์ N์ด ์ฃผ์ด์ง๋ค. ์ด ๊ฐ์ 1000๋ณด๋ค ์๊ฑฐ๋ ๊ฐ๋ค. ๋์งธ ์ค์ ์ธ์ค์ด์ ํ์ฌ ์ฑ์ ์ด ์ฃผ์ด์ง๋ค. ์ด ๊ฐ์ 100๋ณด๋ค ์๊ฑฐ๋ ๊ฐ์ ์์ด ์๋ ์ ์์ด๊ณ , ์ ์ด๋ ํ๋์ ๊ฐ์ 0๋ณด๋ค ํฌ๋ค.
์ถ๋ ฅ
์ฒซ์งธ ์ค์ ์๋ก์ด ํ๊ท ์ ์ถ๋ ฅํ๋ค. ์ค์ ์ ๋ต๊ณผ ์ถ๋ ฅ๊ฐ์ ์ ๋์ค์ฐจ ๋๋ ์๋์ค์ฐจ๊ฐ 10-2 ์ดํ์ด๋ฉด ์ ๋ต์ด๋ค.

๋ฌธ์ ๋ถ์
์ ๋ ฅ๋ฐ์ N๊ฐ์ ๊ณผ๋ชฉ ์ ์ ์ค ๊ฐ์ฅ ์ ์๊ฐ ๋์ M๊ฐ ๊ตฌํ๊ณ , ๋ณํ ์ ์ ๊ตฌํ๋ ์[์ ์/M*100]์ผ๋ก ์ดํฉ์ ๊ณ์ฐ ํ ํ N๊ฐ๋ก ๋๋์ด ํ๊ท ์ ๊ตฌํ๋ค.
โ Do it ์๊ณ ๋ฆฌ์ฆ ์ฝ๋ฉํ ์คํธ
๋ณํ ์ ์์ ํ๊ท ์ ๊ตฌํ๋ ์(์ ์๊ฐ A, B, C์ธ ๊ฒฝ์ฐ)
(A/M*100+B/M*100+C/M*100)/3=(A+B+C)*100/M/3
์๋์ฝ๋ ์์ฑ
1. ์ํ์ ๋ณธ ๊ณผ๋ชฉ์ ๊ฐ์ N ์
๋ ฅ๋ฐ๊ธฐ
2. myList ๋ฆฌ์คํธ์ N๊ฐ์ ๊ฐ ๊ณผ๋ชฉ์ ์ํ ์ฑ์ ์
๋ ฅ ๋ฐ๊ธฐ
3. myList์ ์ ์ฅ๋ ๊ณผ๋ชฉ์ ์ํ ์ฑ์ ๋ค ์ค ๊ฐ์ฅ ๋์ ์ ์ M์ ์ ์ฅ
4. for myList in N: myList ๋ฆฌ์คํธ ์์ฐจ์ ์ผ๋ก ํ์
sum+=myList[i]/M*100 ์ธ๋ฑ์ค๋ฅผ ์ด์ฉํ์ฌ ์๋ก์ด ๋ณํ ์ ์ ๋ฐฉ์์ผ๋ก ์ดํฉ ๊ตฌํ๊ธฐ
5. avg=sum/N ํ๊ท ๊ตฌํ๊ธฐ
6. print(avg) avg์ถ๋ ฅํ๊ธฐ
โ Do it ์๊ณ ๋ฆฌ์ฆ ์ฝ๋ฉํ ์คํธ
1. ์ํ์ ๋ณธ ๊ณผ๋ชฉ์ ๊ฐ์ N ์
๋ ฅ๋ฐ๊ธฐ
2. myList ๋ฆฌ์คํธ์ N๊ฐ์ ๊ฐ ๊ณผ๋ชฉ์ ์ํ ์ฑ์ ์
๋ ฅ ๋ฐ๊ธฐ
3. myList์ ์ ์ฅ๋ ๊ณผ๋ชฉ์ ์ํ ์ฑ์ ๋ค ์ค ๊ฐ์ฅ ๋์ ์ ์ M์ ์ ์ฅ
4. for myList in N: myList ๋ฆฌ์คํธ ์์ฐจ์ ์ผ๋ก ํ์
sum+=myList[i]//sum์ mylist ๋ชจ๋ ๋ฐ์ดํฐ ๊ฐ ๋ํ๊ธฐ
5. print(sum*100/M/N) avg์ถ๋ ฅํ๊ธฐ
์ฝ๋ ๊ตฌํ
import sys
input=sys.stdin.readline
N=int(input()) #์ํ์ ๋ณธ ๊ณผ๋ชฉ์ ๊ฐ์
mylist=list(map(int, input().split())) #๊ฐ ๊ณผ๋ชฉ์ ์ํ ์ฑ์
M=max(mylist) #mylist์ ์ ์ฅ๋ ์ ์๋ค ์ค ์ต๋๊ฐ ์ ์ฅ
sum=0 #๋ณํ ์ ์์ ์ดํฉ
for i in range(N):
sum+=mylist[i]/M*100
avg=sum/N
print(avg)
โ Do it ์๊ณ ๋ฆฌ์ฆ ์ฝ๋ฉํ ์คํธ
N=int(input())
mylist=list(map(int, input().split()))
M=max(mylist)
sum=sum(mylist)
print(sum*100/M/N)
โ๏ธsys.stdin.readline()? input()?
๋ณดํต input()์ผ๋ก ๋ฌธ์์ด ๊ฐ์ ์ ๋ ฅ๋ฐ์ง๋ง ๋ฐ๋ณต๋ฌธ์ผ๋ก ์ฌ๋ฌ ์ค์ ์ ๋ ฅ๋ฐ์์ผํ๋ ์ํฉ์์๋ ์๊ฐ ์ด๊ณผ ๋ฌธ์ ๊ฐ ๋ฐ์
์ด๋ด ๊ฒฝ์ฐ, import sys๋ก ๋ชจ๋ ๋ถ๋ฌ์ค๊ณ , sys.stdin.readline()์ ์ฌ์ฉ
• strํ์ผ๋ก ๋ฐ์์ง๋ฏ๋ก ์ ์๋ก ์ฌ์ฉํ ๋ ํ ๋ณํ ์ ์
• ์ฌ๋ฌ ๊ฐ์ ๊ฐ ์ ๋ ฅ๋ฐ๋ ๊ฒฝ์ฐ split()ํจ์๋ก ๊ณต๋ฐฑ์ ๊ธฐ์ค์ผ๋ก ๊ฐ ๋๋๊ธฐ
• strip()ํจ์ ์ฌ์ฉํ์ฌ ๋ฌธ์์ด ๋งจ ์, ๋งจ ๋์ ๊ณต๋ฐฑ ์ ๊ฑฐ
โญ๏ธ input()๊ณผ sys.stdin.readline()์ ์๋ ์ฐจ์ด ๋๋ ์ด์ ?
1. input()์ ์ธ์๋ก prompt message๋ฅผ ๋ฐ์ ์ ์๋ค.
sys.stdin.readline()์ prompt message๋ฅผ ๋ฐ์ ์ถ๋ ฅํ๋ ๊ธฐ๋ฅ์ด ์์ด ์๋์ ์ผ๋ก ์๋๊ฐ ๋ ๋นจ๋ผ ๋ณด์
2. input()์ ์ฌ์ฉ์๊ฐ ์ ๋ ฅํ๋ ๊ฐ ํ๋ํ๋๋ง๋ค ๋ฒํผ์ ์ ์ฅ, ์ ๋ ฅ์ ์ข ๋ฃ๊ฐ ๋๋ ๊ธฐ์ค์ด ๊ฐํ ๋ฌธ์์ด๋ค.
sys.stdin.readline()์ ๊ฐํ ๋ฌธ์๊น์ง ํฌํจํ ํ๋์ ์ค์ ํ ๋ฒ์ ๋ฒํผ๋ก ์ ๋ ฅ
'์๊ณ ๋ฆฌ์ฆ' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
| ๋ฐฑ์ค ์๊ณ ๋ฆฌ์ฆ(BOJ)_2164๋ฒ[์นด๋ ๊ฒ์] (0) | 2023.01.01 |
|---|---|
| ์คํ๊ณผ ํ (0) | 2022.11.27 |
| ๋ฐฑ์ค ์๊ณ ๋ฆฌ์ฆ(BOJ)_1253๋ฒ['์ข์ ์' ๊ตฌํ๊ธฐ] (0) | 2022.11.18 |
| ๋ฐฑ์ค ์๊ณ ๋ฆฌ์ฆ(BOJ)_11720๋ฒ[์ซ์์ ํฉ ๊ตฌํ๊ธฐ] (0) | 2022.11.18 |
| ๋ฐฐ์ด๊ณผ ๋ฆฌ์คํธ (0) | 2022.11.18 |