BAEKJOON #11047) 동전 0 (python)

    반응형

     

    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

     

    💡풀이

    n, k = map(int, input().split())
    coins = []
    cnt = 0
    
    for _ in range(n):
        coins.append(int(input()))
        
    coins.reverse()
    
    
    for i in range(n):
        if k // coins[i] >= 1:
            cnt += (k // coins[i])
            k %= coins[i]
        else:
            continue
    print(cnt)
    • 입력받은 동전의 종류를 받아 list안에 넣고, reverse하여 큰 순서대로 sorting한다. → 최소 동전 개수를 보장하기 위해서는 큰 단위의 동전부터 사용해야하니까!
    • 뒤집어놓은 coins list를 차례대로 돌면서 k보다 작아서 나눌 수 있으면
    • 몫을 cnt에 더하고
    • 나머지는 다시 k로 할당한다.

     

    반응형

    'Algorithm > BOJ' 카테고리의 다른 글

    BAEKJOON #1448) 삼각형 만들기 (python)  (0) 2021.09.05
    BAEKJOON #1439) 뒤집기 (python)  (0) 2021.09.05
    BAEKJOON #11399) ATM (python)  (0) 2021.09.01
    BAEKJOON #2839) 설탕 배달 (python)  (0) 2021.09.01
    BAEKJOON #1966) 프린터 큐  (0) 2021.06.14

    댓글