Determine the minimum value of a nonnegative integer N, such that:
(20N)!
------
(N!)21
is NOT an integer.
Provide valid reasoning to support your answer.
Note: Computer program or spreadsheet assisted methodologies are welcome, but an analytical solution is preferred.
It might be 23.
If you convert the numerator to a list of the prime factors of each factor, there will be 20 factors of 23. Since 20 < 23, there are no 23^2 terms.
The same conversion to the denominator will have 21 factors of 23.
There is one more factor of 23 in the denominator than the numerator. Therefore, the quotient is not an integer.
I used the following code to gain insight, 23 was the smallest number that "failed".
----------
def isprime(n):
'''check if integer n is a prime'''
n = abs(int(n))
if n < 2:
return False
if n == 2:
return True
if not n & 1:
return False
for x in range(3, int(n**0.5)+1, 2):
if n % x == 0:
return False
return True
def prime_factor(n):
""" for integer n, return a list of all the prime factors """
top = n // 2
factors = []
for i in range(2,top+1):
while n/i % 1 == 0:
factors.append(int(i))
n = n/i
if n == 1:
return factors
if n != 1:
factors.append(int(n))
return factors
def test(n):
top = [i for i in range(1,20*n+1)]
bot = sorted([i for i in range(1,n+1)]*21)
t = []
b = []
for n in top:
t = t + (prime_factor(n))
for n in bot:
b = b + (prime_factor(n))
t = sorted(t)
b = sorted(b)
primes = [i for i in range(20*n+1) if isprime(i)]
result = True
for p in primes:
countTop = t.count(p)
countBot = b.count(p)
if (countTop < countBot):
result = False
print(p, countTop, countBot)
return result
|
Posted by Larry
on 2023-05-17 08:30:25 |