치춘짱베리굿나이스
[백준] 1475 본문
방 번호
문제
다솜이는 은진이의 옆집에 새로 이사왔다. 다솜이는 자기 방 번호를 예쁜 플라스틱 숫자로 문에 붙이려고 한다.
다솜이의 옆집에서는 플라스틱 숫자를 한 세트로 판다. 한 세트에는 0번부터 9번까지 숫자가 하나씩 들어있다. 다솜이의 방 번호가 주어졌을 때, 필요한 세트의 개수의 최솟값을 출력하시오. (6은 9를 뒤집어서 이용할 수 있고, 9는 6을 뒤집어서 이용할 수 있다.)
입력
첫째 줄에 다솜이의 방 번호 N이 주어진다. N은 1,000,000보다 작거나 같은 자연수이다.
출력
첫째 줄에 필요한 세트의 개수를 출력한다.
풀이
const dasom = () => {
const fs = require("fs");
let input = fs.readFileSync("/dev/stdin").toString().trim();
let arr = [];
let max = -1;
for (let i = 0; i < 10; i++) {
arr.push(
input.length - input.split(String.fromCharCode(48 + i)).join("").length
);
}
arr[6] = parseInt((arr[6] + arr[9]) / 2) + ((arr[6] + arr[9]) % 2);
arr[9] = arr[6];
console.log(Math.max(...arr));
};
dasom();
반성회
Math.max 나 Math.min 함수는 인자로 배열 그 자체를 받는 것이 아니라 내용물을 배열 형태로 받는 것 뿐이므로 전개연산자를 통해 배열을 전개해주어야 한다
Math.max([1, 2, 3]) //NaN
Math.max(1, 2, 3) //3
const arr = [1, 2, 3];
Math.max(...arr) //3
Math.max.apply(null, arr) //3
'Javascript + Typescript > 자바스크립트로 알고리즘풀기' 카테고리의 다른 글
[백준] 10808 (0) | 2022.02.06 |
---|---|
[백준] 2577 (0) | 2022.02.06 |
[백준] 2443 (0) | 2022.02.06 |
[백준] 2441 (0) | 2022.02.06 |
[백준] 2439 (0) | 2022.02.06 |
Comments