U E D R , A S I H C RSS

How Many Zeros And Digits/허아영

2006-01-15 04:52:22 Wrong Answer 0.037 Minimum
// < >
// N 팩토
// 0 .
// -> N 팩토 % B 0 , N/B 한 % B 0 .
// ->N/8 1 . count .

.
..-_-;
. 0 2^31-1 , N .
?

5 12
팩토-> 120, 12: A0
1, 2

//HowManyZerosAndDigits
// no 10061
#include <iostream>
using namespace std;
#include <math.h>

unsigned int factorial(const unsigned int &num)
{
	unsigned int n = 1, factorialN = 1;
	while(n <= num)
	{
		factorialN *= n++;
	}
	return factorialN;
}

unsigned int main()
{
	unsigned int N, B;
	unsigned int factorialN = 0;
	unsigned int zeroCount = 0, numCount = 0;

	while(cin >> N >> B)
	{
		factorialN = factorial(N);
		while(factorialN >= 1)
		{
			if(factorialN % B == 0)
				++zeroCount;
			else
				;
			++numCount;
			factorialN /= B;
		}
		
		if(N == 0){
			numCount = 0;
			zeroCount = 1;
		}
		cout << zeroCount << " " << numCount << endl;
		
		zeroCount = 0;
		numCount = 0;		
	}
	return 0;
}

Valid XHTML 1.0! Valid CSS! powered by MoniWiki
last modified 2021-02-07 05:23:25
Processing time 0.0106 sec