这个使用过程中要注意:
大数的赋值、运算的不同,小心栈溢出!尽量节省空间
import java.math.BigInteger;
import java.util.Scanner;
public class P1009阶乘之和 {
public static void main(String[] args) {
// TODO Auto-generated method stub
int n = new Scanner(System.in).nextInt();
BigInteger ans=BigInteger.valueOf(0);
for(int i=n;i>=1;i--) {
ans=ans.add(f1(i));
}
System.out.println(ans);
}
static BigInteger f1(int n) {
if(n==1) {
return BigInteger.valueOf(1);
}else {
return (f1(n-1)).multiply(BigInteger.valueOf(n));
}
}
}