백준 2577 js 숫자의 개수

kevin07·2022년 7월 3일
0

문제
세 개의 자연수 A, B, C가 주어질 때 A × B × C 를 계산한 결과에 0부터 9까지 각각의 숫자가 몇 번씩 쓰였는지를 구하는 프로그램을 작성하시오.

푸는 법)

(1) 첫째로 테스트 케이스 에서 input[0], input[1], input[2] 를 가져온다.

주의 할 점 은 세 수 를 String() 로 문자열 형태로 묶어야 한다. 왜냐면 세 수를 곱한 결과 ex) 22443423 라 하면 이걸 문자열 로 만드는 것이기 때문.

(2) 두번째 로 1 ~ 9 까지의 리스트 를 for문을 돌려 맨 외부의 for문 을 만든다. (수 리스트 만들기)

(3) 세번째 로 각 리스트 안 에 세 수 곱한 결과 ex) 22443423 의 각 숫자를 첫째 for문 숫자 리스트 에 각각 숫자가 몇번 나왔나 삽입한다. ex) 1 0번 , 2 3번 3 2번 ,,, (i와 일치하는 결과값의 문자의 개수 구하기) 각 리스트 숫자와 결과값 각 숫자 몇분 나왔나 일치시

(4) 네번째 로 if 조건문은 외부 숫자 리스트 for문 과 내부 세 수 곱한 결과 숫자문자열 부분 for문 이 같다면 수 가 ++ 증가하게 조건을 비교한다. 즉 1 ~9까지 리스트 에 세 수 곱한 결과 ex) 22443423 리스트 3 부분에 결과값 숫자 3이 두번 나왔으니 서로 일치한다 그러니 3 부분은 두번 나왔단 의미로 2 를 삽입한다.

count 는 안쪽 for문 하나의 i 값 탐색이 끝나면 출력 해주고 0 으로 초기화 시켜준다. ( 1이 몇번 나왔나 2 가 몇번 나왔나 세주는 부분.

var input = require('fs').readFileSync('dev/stdin').toString().split('\n');

const num = String(input[0] input[1] input[2]);

for(var i = 0; i <= 9; i++){
var count =0;
for(var j=0; j<num.length; j++){
if(i == num[j]){
count ++;
}
}
console.log(count);
}

0개의 댓글