51 Nod 1008 N的阶乘 mod P【Java大数乱搞】

1008 N的阶乘 mod P

基准时间限制:1 秒 空间限制:131072 KB 分值: 0 难度:基础题
输入N和P(P为质数),求N! Mod P = ? (Mod 就是求模 %)
 
例如:n = 10, P = 11,10! = 3628800
3628800 % 11 = 10
Input
两个数N,P,中间用空格隔开。(N < 10000, P < 10^9)
Output
输出N! mod P的结果。
Input示例
10 11
Output示例
10
分析:学了简单的Java,就来体验了一波Java的爽感,Java大法真的好啊!
下面给出AC代码:
 1 import java.math.BigInteger;
 2 import java.util.Scanner;
 3 
 4 
 5 public class sss {
 6 
 7     /**
 8      * @param args
 9      */
10     public static void main(String[] args) {
11         // TODO Auto-generated method stub
12         Scanner in=new Scanner(System.in);
13         BigInteger sum=BigInteger.ONE;
14         int n;
15         n=in.nextInt();
16         BigInteger p=in.nextBigInteger();
17         for(int i=1;i<=n;i++)
18             sum=sum.multiply(BigInteger.valueOf(i));
19         System.out.println(sum.remainder(p));
20     }
21 }

 

posted @ 2017-07-25 18:05  Angel_Kitty  阅读(337)  评论(0编辑  收藏  举报