๋ฐ์ํ
https://www.acmicpc.net/problem/11047
๐ ๋ฌธ์ ๋ถ์
๋์ ์ ์ข ๋ฅ๋ ์ด N์ข ๋ฅ(๊ฐ๊ฐ์ ๋์ ์ ๋ง์ด ๊ฐ์ง๊ณ ์์).
์ ์ ํ์ฌ์ฉํ์ฌ ๊ฐ์น์ ํฉ์ k๋ก ๋ง๋ค๋ ค๊ณ ํ๋ค.
์ด๋ ํ์ํ ๋์ ๊ฐ์์ ์ต์๊ฐ
๐ ์๊ณ ๋ฆฌ์ฆ ์ค๊ณ
- ๋์ ์ ์ข ๋ฅ์ ๋ง๋ค๊ณ ์ํ๋ ํฉ์ ์ ๋ ฅ๋ฐ๋๋ค.
- ๋์ ์ ๊ฐ์น๋ค์ ๋ฆฌ์คํธ๋ก ๋ง๋ค์ด์ฃผ๊ณ ๋ด๋ฆผ์ฐจ์์ผ๋ก ๋ฐ๊ฟ์ค๋ค.
- ๋์ ์ ๊ฐฏ์๋ฅผ ๋ด์์ค ๋ณ์ ํ๋๋ฅผ ๋ง๋ค์ด์ฃผ๊ณ ๋ฆฌ์คํธ์ ๊ฐ์ฅ ํฐ ๊ฐ์ผ๋ก ๋๋ ๋ชซ์ ๊ทธ ๋ณ์์ ๋ด์์ค๋ค.
- ์ด๋ฅผ ๋ฆฌ์คํธ์ ํฌ๊ธฐ์์ผ๋ก ๋ฐ๋ณตํ๋ค.
- ์ด๋ ๋จ์ ์๋ ๋ฆฌ์คํธ์์ ๊ฐ์ผ๋ก ๋๋ ๋๋จธ์ง๊ฐ์ด ๋๋ค.
๐ ์ฝ๋
n, k = map(int, input().split())
money = []
for _ in range(n):
money.append(int(input()))
money.reverse() # ๋ด๋ฆผ์ฐจ์
money_number = 0
for i in money:
money_number += (k//i) # ๋ชซ(๋์ ์ ๊ฐฏ์)์ money_number์ ๋ฃ์ด์ค๋ค
k %= i # ๋๋จธ์ง ๋จ๊ฒจ์ค๋ค
print(money_number)
๐ ์๊ฐ๋ณต์ก๋
O(N)
๋ฐ์ํ
'๋ฐฑ์ค | Baekjoon' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[๋ฐฑ์ค][10610] 30 | ํ์ด์ฌ | ๊ทธ๋ฆฌ๋ (0) | 2024.05.25 |
---|---|
[๋ฐฑ์ค][1012] ์ ๊ธฐ๋ ๋ฐฐ์ถ | ํ์ด์ฌ | dfs/bfs (0) | 2024.05.25 |
[๋ฐฑ์ค][12845] ๋ชจ๋์ ๋ง๋ธ | ํ์ด์ฌ | ๊ทธ๋ฆฌ๋(Greedy) (0) | 2024.05.22 |
[๋ฐฑ์ค][1931] ํ์์ค ๋ฐฐ์ | ํ์ด์ฌ (0) | 2024.05.21 |
[๋ฐฑ์ค][11399] ATM | ํ์ด์ฌ (0) | 2024.05.21 |