이번 문제는 아래 링크에서 풀어볼 수 있습니다.
2004번: 조합 0의 개수
첫째 줄에 정수 $n$, $m$ ($0 \le m \le n \le 2,000,000,000$, $n \ne 0$)이 들어온다.
www.acmicpc.net
문제

입력

출력
예제 입력 1
25 12
예제 출력 1
2
정답 코드
답안
const fs = require('fs'); const filePath = process.platform === 'linux' ? '/dev/stdin' : './input.txt'; let input = fs .readFileSync(filePath) .toString() .trim() .split(' ') .map((val) => parseInt(val)); const n = input[0]; const m = input[1]; const mySolution = (n, m) => { const getCount = (num, k) => { cnt = 0; while (num) { num = parseInt(num / k); cnt += num; } return cnt; }; const twoCnt = getCount(n, 2) - getCount(m, 2) - getCount(n - m, 2); const fiveCnt = getCount(n, 5) - getCount(m, 5) - getCount(n - m, 5); return Math.min(twoCnt, fiveCnt); }; console.log('mySolution', mySolution(n, m));
문제 풀이
nCr = n!/(n-r)!r! 이라는 공식을 이용하면 되는 문제이다. 하지만 단순 팩토리얼을 구현하면 문제에서 주어진 n 혹은 m이 20억이 될 수 있으므로 시간초과가 뜬다. 따라서 팩토리얼 0의 개수를 구할 때의 요령으로 문제를 푼다. 이때 팩토리얼 0의 개수에서는 5의 배수 개수만 구했다면 이번 문제에서는 2의 배수 개수도 같이 구한다.
함께 보기
[Baekjoon] 1676 팩토리얼 0의 개수(파이썬/자바스크립트/NodeJs)
이번 문제는 아래 링크에서 풀어볼 수 있습니다. 1676번: 팩토리얼 0의 개수 N!에서 뒤에서부터 처음 0이 아닌 숫자가 나올 때까지 0의 개수를 구하는 프로그램을 작성하시오. www.acmicpc.net 문제 N!에
gdk01.tistory.com
https://webruden.tistory.com/1054
[백준, node.js] 2004번 "조합 0의 개수" 문제 해결방법
문제 예제 입력 & 출력 입력 출력 소스코드 조합 nCm의 끝자리 0의 개수를 출력하는 문제 2의 승수(a1 - b1, c1) 와 5의 승수(a2 - b2 - c2) 가 구해졌으면 겹치는(짝지을 수 있는) 개수를 구하면 되므로, 2
webruden.tistory.com
https://tmdrl5779.tistory.com/95
[백준] 2004번 (python 파이썬)
nCr = n!/(n-r)!r! 을 이용하면 된다. 하지만 단순 팩토리얼을 이용하여 풀면 n, m 이 20억이될 수 있기 때문에 시간초과, 또는 메모리 초과가 될 것이다. 끝자리가 0이라는 것은 2 와 5의 곱으로 이루어
tmdrl5779.tistory.com
'👩💻 Programming > Coding Test 문제 풀이' 카테고리의 다른 글
[Baekjoon] 1373 2진수 8진수(자바스크립트/NodeJs) (0) | 2023.01.09 |
---|---|
[Baekjoon] 17087 숨바꼭질 6(자바스크립트/NodeJs) (0) | 2023.01.06 |
[Baekjoon] 1676 팩토리얼 0의 개수(파이썬/자바스크립트/NodeJs) (0) | 2023.01.02 |
[Baekjoon] 10872 팩토리얼(파이썬/자바스크립트/NodeJS) (0) | 2023.01.02 |
[Baekjoon] 6588 골드바흐의 추측(파이썬/자바스크립트/NodeJS) (0) | 2023.01.02 |
댓글