Fast Factorial Calculator

View as PDF

Submit solution

Points: 10
Time limit: 1.0s
Memory limit: 64M

Author:
Problem type

quantum is not in a good mood today, so he has decided to torment people. He wants you to write a large factorial calculator. More specifically, he wants you to calculate very very very large factorials. He wishes you luck.

Input Specification

The first line of input contains the integer N, 0 \le N \le 1\,000, the number of cases to follow.

The next N lines will contain an integer n, such that 0 \le n \le 2^{63}, whose factorial you are to calculate.

Output Specification

For every integer n, you are to output n! \bmod 2^{32}.

Sample Input

2
5
13

Sample Output

120
1932053504

Comments


  • 0
    SourceCode  commented on Dec. 16, 2017, 2:28 a.m.

    Can someone tell me what's wrong with my solution???
    https://dmoj.ca/submission/709777


    • 3
      injust  commented on Dec. 16, 2017, 4:28 a.m. edited
      1. Re-read the input specification, you have to calculate N factorials.
      2. 2 ^ 32 is not 2^{32}

  • 3
    Cueball1234  commented on Sept. 21, 2016, 4:03 p.m.

    I have a solution to this problem, and I can't find anything wrong with it. I checked it in some other C++ coder, and it gave the right values. Can someone help me with why the second test case always shows me WA? Thanks!


    • 2
      Kirito  commented on Sept. 21, 2016, 7:02 p.m.

      Changing signed long long int to unsigned long long seems to fix it.

      Probably overflowed.


      • 3
        Cueball1234  commented on Sept. 25, 2016, 2:33 p.m.

        Hey, it works! Thank you so much for all your help Shinigami!


  • 15
    d  commented on Feb. 13, 2016, 8:45 p.m.

    The value of n!\text{ mod }2^{32}-5 is more interesting to compute and optimize.


    • 6
      Riolku  commented on April 14, 2019, 3:04 p.m.

      No please all we wanted was happiness