[伯俊]1676号工場0の個数/Java、Python
Baekjoon Online Judge
algorithm practice
-問題を逐次解く
17.整数論及び組合せ論
整数論と組合せ論を学びましょう.
Java/Python
11.工場0の数量
1676号
素数分解の性質を利用してN!ゼロを求める末尾に何個のゼロがあるかという問題.
今回の質問はN!0を求める個数の問題は、後から0以外の数字が現れるまでです.
問題の観点から見ると、後ろにn個の0があるという意味は2と5がn対の形で存在することを意味する.
デフォルトでは、値は5の個数によって変化し、カウントは5のn乗で1ずつ増加します.これは単純な5を5で割るのではなく、繰り返し文5を5で割ることで加算されます.
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.IOException;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int num = Integer.parseInt(br.readLine());
int cnt = 0;
while (num >= 5) {
cnt += num / 5;
num /= 5;
}
System.out.println(cnt);
}
}
import sys
num = int(sys.stdin.readline())
cnt = 0
while (num >= 5):
cnt += num // 5
num //= 5;
print(cnt)
Reference
この問題について([伯俊]1676号工場0の個数/Java、Python), 我々は、より多くの情報をここで見つけました https://velog.io/@jini_eun/백준-1676번-팩토리얼-0의-개수-Java-Pythonテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol