Da się to zrobić, ale ze względu na złożoność wynikającą z obsługi wielgachnych integerów szybko się to nie policzy.
Potrzebujesz więc jedynie dobrej biblioteki obsługującej duze integery, która w pythonie od wersji 3 jest po cichu wbudowana w normalnego inta i nie ma on ograniczeń, dlatego w najbardziej pytonicznym stylu:
from solutions import solution
print(solution())
Twój problem wygląda tak:
from math import factorial
print(factorial(1_000_000))
Co prawda liczyło sie dobre pare minut i liczba nie zmiesciła się w konsoli, ale policzył :D.
W przypadku innych języków prawdopodobnie będziesz potrzebował jakiejś zewnętrznej biblioteki do obsługi dużych integerów.