λ³Έλ¬Έ λ°”λ‘œκ°€κΈ°
κ°œμΈκ³΅λΆ€/Algorithm

[λ°±μ€€][Node.js] 2720번 : μ„Ένƒμ†Œ 사μž₯ λ™ν˜

by πŸ‡λ°•λ΄‰λ΄‰πŸ‡ 2021. 9. 8.

 

 

Algorithm

-  μ„Ένƒμ†Œ 사μž₯ λ™ν˜ -

 


 

문제

미ꡭ으둜 μœ ν•™κ°„ λ™ν˜μ΄λŠ” μ„Ένƒμ†Œλ₯Ό μš΄μ˜ν•˜κ³  μžˆλ‹€. λ™ν˜μ΄λŠ” μ΅œκ·Όμ— μ•„λ₯΄λ°”μ΄νŠΈλ‘œ 고등학생 리암을 μ±„μš©ν–ˆλ‹€.

λ™ν˜μ΄λŠ” λ¦¬μ•”μ—κ²Œ μ‹€λ§ν–ˆλ‹€.

리암은 κ±°μŠ€λ¦„λˆμ„ μ£ΌλŠ” 것을 자꾸 μ‹€μˆ˜ν•œλ‹€.

심지어 $0.5λ‹¬λŸ¬λ₯Ό μ€˜μ•Όν•˜λŠ” κ²½μš°μ— κ±°μŠ€λ¦„λˆμœΌλ‘œ $5λ‹¬λŸ¬λ₯Ό μ£ΌλŠ”κ²ƒμ΄λ‹€!

μ–΄μ©”μˆ˜ 없이 λ›°μ–΄λ‚œ μ½”λ”© μ‹€λ ₯을 λ°œνœ˜ν•΄ 리암을 λ„μ™€μ£ΌλŠ” ν”„λ‘œκ·Έλž¨μ„ μž‘μ„±ν•˜λ €κ³  ν•˜μ§€λ§Œ, λ””μ•„λΈ”λ‘œλ₯Ό ν•˜λŠλΌ μ½”λ”©ν•  μ‹œκ°„μ΄ μ—†μ–΄μ„œ 이 문제λ₯Ό 읽고 μžˆλŠ” μ—¬λŸ¬λΆ„μ΄ λŒ€μ‹  ν•΄μ£Όμ–΄μ•Ό ν•œλ‹€.

κ±°μŠ€λ¦„λˆμ˜ μ•‘μˆ˜κ°€ 주어지면 리암이 μ€˜μ•Όν•  μΏΌν„°(Quarter, $0.25)의 개수, λ‹€μž„(Dime, $0.10)의 개수, λ‹ˆμΌˆ(Nickel, $0.05)의 개수, νŽ˜λ‹ˆ(Penny, $0.01)의 개수λ₯Ό κ΅¬ν•˜λŠ” ν”„λ‘œκ·Έλž¨μ„ μž‘μ„±ν•˜μ‹œμ˜€. κ±°μŠ€λ¦„λˆμ€ 항상 $5.00 μ΄ν•˜μ΄κ³ , μ†λ‹˜μ΄ λ°›λŠ” λ™μ „μ˜ 개수λ₯Ό μ΅œμ†Œλ‘œ ν•˜λ €κ³  ν•œλ‹€. 예λ₯Ό λ“€μ–΄, $1.24λ₯Ό 거슬러 μ£Όμ–΄μ•Ό ν•œλ‹€λ©΄, μ†λ‹˜μ€ 4μΏΌν„°, 2λ‹€μž„, 0λ‹ˆμΌˆ, 4νŽ˜λ‹ˆλ₯Ό λ°›κ²Œ λœλ‹€.

 

μž…μΆœλ ₯ μ˜ˆμ‹œ

 

문제 ν’€κΈ°

const readline = require("readline");
const rl = readline.createInterface({
	input: process.stdin,
	output: process.stdout,
});
let input = [];
rl.on("line", function (line) {
	input.push(+line.toString());
}).on("close", function () {
	input.shift();
	let result = [];
	for (let i = 0; i < input.length; i++) {
		let money = input[i];
		let value = [0, 0, 0, 0];
		value[0] = Math.floor(money / 25);
		money = money % 25;
		value[1] = Math.floor(money / 10);
		money = money % 10;
		value[2] = Math.floor(money / 5);
		money = money % 5;
		value[3] = money;
		result.push(value.join(" "));
	}
	console.log(result.join("\n"));
	process.exit();
});

 

 

 

λ°˜μ‘ν˜•

λŒ“κΈ€