0
已解决
徐子宸
中级天翼
中级天翼
2647 N的阶乘经验值:800
题目描述 Description
计算N的阶乘的最后一个非0数字。
输入描述 Input Description
一个不大于4220的整数N
输出描述 Output Description
输出N!的最后一位非0整数
样例输入 Sample Input
7
样例输出 Sample Output
4
90:
#include <iostream>
using namespace std;
int n,ans=1;
int a[4]= {6,8,4,2};
int main() {
cin>>n;
while (n>0) {
for (int i=1; i<=n%10;++i)
if (i!=5) ans=ans*i%10;
n=n/5;
ans=ans*a[n%4]%10;
}
cout<<ans;
return 0;
}