কোনো সংখ্যার ফ্যাক্টোরিয়ালে ট্রেলিং শূন্যের সংখ্যা বের করা। n=5 হলে 5!=120 → ১টি শূন্য। 20! = 2432902008176640000 → ৪টি শূন্য।
সহজ পদ্ধতি: ফ্যাক্টোরিয়াল হিসাব করে শূন্য গণনা (বড় n-এর জন্য কাজ করে না)।
দক্ষ পদ্ধতি: ট্রেলিং শূন্য = ফ্যাক্টোরিয়াল(n)-এর গুণনীয়কে ৫-এর সংখ্যা।
Trailing 0s = count of 5s in prime factors of n!
অ্যালগরিদম
countTrailingZeros(n)
begin count := 0 for i := 5; n/i >= 1; i *= 5 do count := count + n/i done return count end
উদাহরণ
#include <iostream> #include <cmath> #define MAX 20 using namespace std; int countTrailingZeros(int n) { int count = 0; for (int i = 5; n / i >= 1; i *= 5) count += n / i; return count; } main() { int n = 20; cout << "Number of trailing zeros: " << countTrailingZeros(n); }আউটপুট
Number of trailing zeros: 4