求阶乘最后一位不为零的数;
题目:http://lx.lanqiao.cn/problem.page?gpid=T213
#include<iostream>
using namespace std;
int main(){
int n;
cin>>n;
long long ans=n;
while(n>=2){
n--;
while(ans%10==0){//去掉右边的零
ans/=10;
}
ans=(ans*n)%1000;//每次只多计算两三位
//cout<<ans<<endl;
}
while(ans%10==0){
ans/=10;
}
cout<<ans%10<<endl;
return 0;
}