Example #1
0
        static MInt[] MFactorials(int n)
        {
            var f = new MInt[n + 1];

            f[0] = 1;
            for (int i = 0; i < n; ++i)
            {
                f[i + 1] = f[i] * (i + 1);
            }
            return(f);
        }
Example #2
0
        static MInt[] MNprs(int n)
        {
            var p = new MInt[n + 1];

            p[0] = 1;
            for (int i = 0; i < n; ++i)
            {
                p[i + 1] = p[i] * (n - i);
            }
            return(p);
        }
Example #3
0
        static MInt[] MNcrs(int n)
        {
            var c = new MInt[n + 1];

            c[0] = 1;
            for (int i = 0; i < n; ++i)
            {
                c[i + 1] = c[i] * (n - i) / (i + 1);
            }
            return(c);
        }