๐ŸŒฑ → ๐ŸŒณ

[๋ฐฑ์ค€] 11047๋ฒˆ: ๋™์ „ 0 python ๋ณธ๋ฌธ

Algorithms

[๋ฐฑ์ค€] 11047๋ฒˆ: ๋™์ „ 0 python

BAY 2023. 1. 8. 16:59
728x90

https://www.acmicpc.net/problem/11047

 

11047๋ฒˆ: ๋™์ „ 0

์ฒซ์งธ ์ค„์— N๊ณผ K๊ฐ€ ์ฃผ์–ด์ง„๋‹ค. (1 ≤ N ≤ 10, 1 ≤ K ≤ 100,000,000) ๋‘˜์งธ ์ค„๋ถ€ํ„ฐ N๊ฐœ์˜ ์ค„์— ๋™์ „์˜ ๊ฐ€์น˜ Ai๊ฐ€ ์˜ค๋ฆ„์ฐจ์ˆœ์œผ๋กœ ์ฃผ์–ด์ง„๋‹ค. (1 ≤ Ai ≤ 1,000,000, A1 = 1, i ≥ 2์ธ ๊ฒฝ์šฐ์— Ai๋Š” Ai-1์˜ ๋ฐฐ์ˆ˜)

www.acmicpc.net

 

๋ฌธ์ œ ์ •๋ณด

๋ฌธ์ œ ์œ ํ˜• ๋‚œ์ด๋„ ๊ฑธ๋ฆฐ ์‹œ๊ฐ„ ์Šค์Šค๋กœ ๊ตฌํ˜„ ์„ฑ๊ณต

๊ทธ๋ฆฌ๋”” ์‹ค๋ฒ„ 4 15m O

์„ค๊ณ„ ๋ฐฉ๋ฒ•

op์ด๋ผ๋Š” list์— ๋™์ „ ๋‹จ์œ„ ๋„ฃ๊ณ  ์—ญ์ˆœ์œผ๋กœ ๊ฒ€์‚ฌ

k๊ฐ€ i๋ณด๋‹ค ํด ๋•Œ k๋ฅผ i๋กœ ๋‚˜๋ˆˆ ๋ชซ์„ cnt์— ์ถ”๊ฐ€ํ•˜๊ณ  ๋‚˜๋จธ์ง€๋ฅผ ๋‹ค์‹œ k์— ๋„ฃ์–ด์ฃผ๋Š” ํ–‰์œ„ ๋ฐ˜๋ณต

k๊ฐ€ 0์ด๋ฉด break # ์ด ์ฝ”๋“œ๋Š” ์—†์–ด๋„ ๋จ

์ฝ”๋“œ

n, k = map(int, input().split())
cnt = 0
op = []
for _ in range(n):
  op.append(int(input()))
  
for i in op[::-1]:
  if k >= i:
    cnt += k//i
    k = k % i
print(cnt)

์‹œ๊ฐ„ ๋ณต์žก๋„

$O(n)$

์–ด๋ ค์› ๋˜ ์ 

์กฐ๊ฑด๋งŒ ์ž˜ ํ™•์ธํ•˜๋ฉด ์‰ฝ๊ฒŒ ๋ฌธ์ œ ํ’€ ์ˆ˜ ์žˆ์—ˆ์Œ

์ฐธ๊ณ  ์ž๋ฃŒ

X

728x90