Write a function that takes an integer n and finds the smallest integer m whose factorial is divisible by n. For example, if
, then the smallest factorial that is a multiple of n is 5! = 120; therefore,
.
Solution Stats
Problem Comments
5 Comments
Solution Comments
Show comments
Loading...
Problem Recent Solvers18
Suggested Problems
-
1443 Solvers
-
Project Euler: Problem 16, Sums of Digits of Powers of Two
182 Solvers
-
Return unique values without sorting
1019 Solvers
-
Implement simple rotation cypher
1098 Solvers
-
There are 10 types of people in the world
1381 Solvers
More from this Author328
Problem Tags
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
Chris, please check test 21. The factors of 1535238 include two 67's, therefore it seems to me the solution should be 134.
David: Take another look. ChrisR's anti-lookup trick lets correct solutions pass the test!
David, you are correct for Kempner(1535238), but that test asks for Kempner(Kempner(Kempner(1535238))).
Unfortunately, it does not stop lookup tables since 134 factors to 2 and 67, which means it obtains the same result as a lookup table. Kempner(Kempner(Kempner(1535238))) will do 134 -> 67 -> 67 and a lookup table 67->67->67.
May I suggest using Kempner(Kempner(Kempner(123456787654321))+10) as a test against lookup tables?