题解 | 阶乘末尾非零数字
阶乘末尾非零数字
https://www.nowcoder.com/practice/248c8fbee56e491aa147b67b9c082da0
#include<bits/stdc++.h>
using namespace std;
int main(){
int n2=0,n5=0;
int n,res=1;
cin>>n;
for(int i=1;i<=n;i++){
int temp=i;
while(i%5==0){
n5++;
i=i/5;
}
while(i%2==0){
n2++;
i=i/2;
}
if(i==0) continue;
res=res*i%10;
i=temp;
}
for(int i=0;i<n2-n5;i++){
res=res*2%10;
}
cout<<res<<endl;
return 0;
}
查看2道真题和解析
