const fs = require('fs');
const filePath = process.platform === 'linux' ? '/dev/stdin' : './input.txt';
let input = fs.readFileSync(filePath).toString().trim().split('\n');
const inputNum = input.length // 3
let answer = '';
let A = Number(input[0]) //150
let B = Number(input[1]) //266
let C = Number(input[2]) //427
let result = (A*B*C);
let num0 = [];
let num1 = [];
let num2 = [];
let num3 = [];
let num4 = [];
let num5 = [];
let num6 = [];
let num7 = [];
let num8 = [];
let num9 = [];
let arr = []; // 곱의 결과 숫자들의 배열
arr = String(result).split('');
for(let i=0; i< arr.length; i++) {
if(Number(arr[i]) === 0) {
num0.push(arr[i]);
} else if(Number(arr[i]) === 1) {
num1.push(arr[i]);
} else if(Number(arr[i]) === 2) {
num2.push(arr[i]);
} else if(Number(arr[i]) === 3) {
num3.push(arr[i]);
} else if(Number(arr[i]) === 4) {
num4.push(arr[i]);
} else if(Number(arr[i]) === 5) {
num5.push(arr[i]);
} else if(Number(arr[i]) === 6) {
num6.push(arr[i]);
} else if(Number(arr[i]) === 7) {
num7.push(arr[i]);
} else if(Number(arr[i]) === 8) {
num8.push(arr[i]);
} else if(Number(arr[i]) === 9) {
num9.push(arr[i]);
}
}
answer += num0.length + '\n' + num1.length + '\n' + num2.length + '\n' + num3.length + '\n' + num4.length
+ '\n' + num5.length + '\n' + num6.length + '\n' + num7.length + '\n' + num8.length + '\n' + num9.length
console.log(answer);
const fs = require('fs');
const filePath = process.platform === 'linux' ? '/dev/stdin' : './input.txt';
let input = fs.readFileSync(filePath).toString().trim().split('\n');
let answer = '';
let A = Number(input[0]) //150
let B = Number(input[1]) //266
let C = Number(input[2]) //427
let result = (A*B*C);
let result_arr = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
// let arr = []; // 곱의 결과 숫자들의 배열 17037300
let arr = String(result).split('');
for(let i = 0; i < arr.length; i++) {
for(let j = 0; j < arr.length; j++) {
if(Number(arr[i]) === j) {
result_arr[j]++;
}
}
}
for(let i =0; i< result_arr.length; i++) {
answer += result_arr[i] + '\n';
};
console.log(answer);
const fs = require('fs');
const filePath = process.platform === 'linux' ? '/dev/stdin' : './input.txt';
let input = fs.readFileSync(filePath).toString().trim().split('\n');
let answer = '';
let A = Number(input[0]) //150
let B = Number(input[1]) //266
let C = Number(input[2]) //427
let result = (A*B*C);
let result_arr = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
// let arr = []; // 곱의 결과 숫자들의 배열 17037300
let arr = String(result).split('');
for(let i = 0; i < arr.length; i++) {
for(let j = 0; j < result_arr.length; j++) {
if(Number(arr[i]) === j) {
result_arr[j]++;
}
}
}
for(let i =0; i< result_arr.length; i++) {
answer += result_arr[i] + '\n';
};
console.log(answer);
메모리는 처음 만든거랑 똑같지만 시간은 쬐애끔 덜 걸린다.
var fs = require('fs');
var input = fs.readFileSync('/dev/stdin').toString().split('\n');
var a = parseInt(input[0]);
var b = parseInt(input[1]);
var c = parseInt(input[2]);
var resArr = (a*b*c).toString().split('');
for(var i=0; i<10; i++) {
count = 0;
resArr.filter(function(val, idx) {
if(val == i) {
count++;
}
});
console.log(count);
}
간결.... filter를 써서 간결하게 했다. 나도 filter라는거를 알고있긴 했는데 이렇게 뙇 생각나지는 않았다.
아 그리고 String(abc).split('')가 (abc).toString().split('') 보다 더 빠르다(당연한건가)