23,404
社区成员
发帖
与我相关
我的任务
分享
package Basic_VIP;
import java.util.ArrayList;
import java.util.Scanner;
public class Basic_30 {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
int n = in.nextInt();
ArrayList<Integer> alist = new ArrayList<>();
alist.add(1);
for (int i=1;i<=n;i++){
int size = alist.size();
for (int j=0;j<size;j++){
// 先把每一位乘以i,再进行进位
int temp = alist.get(j);
temp *= i;
alist.set(j,temp);
}
for (int m=0;m<size;m++){
int temp1 = alist.get(m);
if (temp1 > 10){
alist.set(m,temp1%10);
int tempResult = temp1/10;
if (size <= m+1){
alist.add(tempResult);
}else{
int temp2 = alist.get(m+1);
alist.set(m+1,temp2+tempResult);
}
}else{
alist.set(m,temp1);
}
}
}
for (int i=alist.size()-1;i>-1;i--){
System.out.print(alist.get(i));
}
}
}