알고리즘/백준

[백준] js 11047

프흐프좋아 2024. 2. 12. 21:33

해당 문제는 각 화폐의 단위가 배수관계에 속하기 때문에 그리디 알고리즘으로 풀이할 수 있다

 

// readline 모듈보다는 fs를 이용해 파일 전체를 읽어 들여 처리하기
const fs = require('fs')

const input = fs
  .readFileSync(process.platform === "linux" ? "/dev/stdin" : "test.txt")
  .toString()
  .trim()
  .split("\n");

function solution(data) {
    let [N,K] = input[0].split(" ").map(Number);

    let coin = new Array(); // 동전꾸러미

    for(let i = 1 ; i <= N ; i++)
    {
        coin.push(Number(input[i]));
    }

    coin.sort(function(a,b){
        return b - a;
    });

    let cnt = 0;

    for(let p of coin){
        cnt += Math.floor(K/p);
        K = K%p;
    }

    console.log(cnt);
}

solution(input);