문제 : https://www.acmicpc.net/problem/11022

 

11022번: A+B - 8

각 테스트 케이스마다 "Case #x: A + B = C" 형식으로 출력한다. x는 테스트 케이스 번호이고 1부터 시작하며, C는 A+B이다.

www.acmicpc.net

성공한 코드

10950번 문제 풀이 코드에서 출력형태만 바꿔주면 됩니다. 앞에서도 말씀드렸지만 i를 정수형태로 변환해야 한다는 것을 잊지 말아야 합니다.

 

이상으로 11022 문제 풀이를 마치겠습니다.

'Programing > Baekjoon 문제 알고리즘(node.js)' 카테고리의 다른 글

2577번 숫자의 개수  (0) 2022.02.25
11021번 A+B - 7  (0) 2022.02.25
1110번 더하기 사이클  (0) 2022.02.25
10952번 A+B - 5  (0) 2022.02.25
2884번 알람 시계  (0) 2022.02.25
Posted by englishmath
,

문제 : https://www.acmicpc.net/problem/2577 (백준 온라인 저지)

성공한 코드

얼핏 보면 코드을 되게 길게 작성해야 할 것 같지만 각 숫자 개수가 저장될 변수를 배열의 인덱스로 사용하면 코드 길이를 줄일 수 있습니다.

 

let strMul = (A*B*C).toString();

 

A*B*C를 자릿수로 처리하기 위해 문자열로 저장합니다. 

 

let stdoutArr = Array.from(new Array(10), e => { return 0;})

 

0~9 숫자의 개수가 저장될 배열을 선언 후 0으로 초기화합니다. 크기가 10인 배열은 0~9까지의 인덱스를 가지므로 배열의 각 요소에는 0~9 숫자의 개수가 저장될 수 있습니다.
    
for(let i in strMul){

 

A*B*C 문자열의 자릿수만큼 코드를 반복 수행합니다.

 

stdoutArr[strMul[i]] = stdoutArr[strMul[i]]+1;

 

strMul의 인덱스에 속한 값에 해당하는 stdoutArr의 인덱스에 속한 값을 1 증가시킵니다. 말이 좀 어려운데 쉽게 정리하면 다음과 같습니다.

 

-> strMul -> "17037300"
    strMul[0] -> 1

    stdoutArr[1] = stdoutArr[1]+1

    stdoutArr[1] -> 1

 

    strMul[1] -> 7

    stdoutArr[7] = stdoutArr[7]+1

    stdoutArr[7] -> 1

 

    strMul[2] -> 0

    stdoutArr[0] = stdoutArr[0]+1

    stdoutArr[0] -> 1

 

    strMul[3] -> 3

    stdoutArr[3] = stdoutArr[3]+1

    stdoutArr[3] -> 1

 

    strMul[4] -> 7

    stdoutArr[7] = stdoutArr[7]+1

    stdoutArr[7] -> 2

 

    ...

 

이해가 되시나요?  즉 strMul 각 자릿수와 동일한 인덱스 번호를 가지는 stdoutArr 요소에 값이 1추가되는 것입니다.

 

for(let i in stdoutArr)
        console.log(stdoutArr[i]);

 

자릿수 체크가 전부 끝났다면 for문을 돌려 stdoutArr의 각 요소를 출력합니다. 즉 stdoutArr에서 0~9인덱스들의 카운트 값들이 출력되는 것입니다.

 

이상으로 2577번 문제 풀이를 마치겠습니다.

'Programing > Baekjoon 문제 알고리즘(node.js)' 카테고리의 다른 글

11022번 A+B - 8  (0) 2022.02.28
11021번 A+B - 7  (0) 2022.02.25
1110번 더하기 사이클  (0) 2022.02.25
10952번 A+B - 5  (0) 2022.02.25
2884번 알람 시계  (0) 2022.02.25
Posted by englishmath
,

출처 : https://www.acmicpc.net/problem/11021 (백준 온라인 저지)

성공한 코드

이번 문제는 10950번 문제 풀이 코드에 문자열만 덧붙이면 되는 것이므로 특별한 설명은 하지 않겠습니다. 단 javascript에서 for문의 in은 객체의 속성을 String으로 가져오기 때문에 덧셈 연산을 하실 때 정수로 변환해주셔야 합니다.

 

이상으로 11021번 문제 풀이를 마치겠습니다.

'Programing > Baekjoon 문제 알고리즘(node.js)' 카테고리의 다른 글

11022번 A+B - 8  (0) 2022.02.28
2577번 숫자의 개수  (0) 2022.02.25
1110번 더하기 사이클  (0) 2022.02.25
10952번 A+B - 5  (0) 2022.02.25
2884번 알람 시계  (0) 2022.02.25
Posted by englishmath
,