반응형
거스름돈 문제
솔루션
// Run by Node.js
const readline = require('readline');
(async () => {
let rl = readline.createInterface({ input: process.stdin });
let value = 0
for await (const line of rl) {
value = Number(line)
rl.close();
}
const coins = [40,20,10,5,1]
let coinCount = 0
let rest = value
for(let i = 0; i < coins.length; i++){
coinCount += Math.floor(rest / coins[i])
rest = rest % coins[i]
if(rest == 0){
break
}
}
console.log(coinCount)
process.exit();
})();
배운 점
Math.floor를 이용해서 몫을 구했습니다.
https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/Math/floor
Math.floor() 함수는 주어진 숫자와 같거나 작은 정수 중에서 가장 큰 수를 반환합니다.
왜 이렇게 어렵게 설명하는지 모르겠습니다.
정수자리만 남기고 소수점이하 자리는 버린다.
근데 이렇게 외우면 음수 일때 헷갈립니다.
Math.floor(-2); // 결과 : -2
Math.floor(-2.6); // 결과 : -3
더 작은수에 가깝게 내려서 정수로 변경한다.
이렇게 외워보겠습니다.
반응형
'개발관련 > 매일 코딩 테스트 챌린지' 카테고리의 다른 글
구름 코딩테스트 체크 카드 자바스크립트 풀이 (0) | 2023.07.07 |
---|---|
자바스크립트 구름 코딩테스트 문제 구름 숫자 (0) | 2023.07.07 |
자바스크립트 코딩 테스트 구름 문제 연속 점수 문제 (0) | 2023.07.06 |
[자바스크립트] 코딩테스트 큰 팩토리얼 (0) | 2023.07.06 |
프로그래머스 무인도 버티기 자바스크립트 (0) | 2023.04.15 |