解题思路:
注意事项:
参考代码:#include
#include
using namespace std;
int main(){
double factorial(int a);
int weishu(int a);
int num =1;
for(int i=1;i<=100000;i++){
int s=0,p=10,q=10;
for(int j=0;j
s = s + factorial(fmod(i/pow(p,j),10));
}
if(s==i){
cout<
num++;
}
}
}
double factorial(int a){ //计算一个整数的阶乘
double s=1;
for(int i=1;i<=a;i++){
s *= i;
}
return s;
}
int weishu(int a){ //计算一个整数是几位数
int i=1,times=0;
while(a/i!=0){
i *= 10;
times++;
}
return times;
}