采用递归就OK了,答案是:2561327494111820313
代码如下:
public class MyFactorial {
public static void main(String[] args) {
System.out.println(factorial(20));
}
private static long factorial(int a) {
long s=0;
if(a==0) s=0;
if(a==1) s=1;
else if(a>=2){
s=a * (factorial(a-1)-factorial(a-2)) + factorial(a-1);
}
return s;
}
}
刚才拿C验算了一下,1L hjb368的答案是正确的。答案就是:2561327494111820313