【Algorithm】 [백준] 11047 동전 0

문제 링크 [https://www.acmicpc.net/problem/11047]

첫 제출 -> 시간초과

coins = []
answer = 0

n, k = map(int, input().split())
for i in range(n):
    coins.append(int(input()))

for i in range(n-1, -1, -1):
    if k >= coins[i]:
        while k >= coins[i]:
            k -= coins[i]
            answer += 1
    else: pass

print(answer)

정답 제출 (시간 : 60ms)

coins = []
answer = 0

n, k = map(int, input().split())
for i in range(n):
    coins.append(int(input()))

for i in range(n-1, -1, -1):
    if k >= coins[i]:
        num, k = divmod(k, coins[i])
        answer += num

print(answer)

배울 만한 코드 (나의 풀이와 크게 다른 건 없다) *(시간 : 52ms)*

N, K = map(int, input().split())

Coins = []
for i in range(N) : Coins.append(int(input()))


ans = 0
while K > 0 :
    coin = Coins.pop()
    ans += K // coin
    K %= coin

print(ans)

© All rights reserved By Junha Song.