> 文档中心 > 阿尔法乘积

阿尔法乘积

题目描述计算一个整数的阿尔法乘积。对于一个整数 x 来说,它的阿尔法乘积是这样来计算的:如果 x 是一个个位数,那么它的阿尔法乘积就是它本身;否则的话,x 的阿尔法乘积等于它的各位非0的数字相乘得到的那个整数的阿尔法乘积。例如:4018224312的阿尔法乘积等于8, 它是按照以下步骤来计算的:4018224312−−>418224312−−>3072−−>372−−>42−−>42−−>8输入一个正整数 n,可以用long long 来存储n。输出输出 n 的阿尔法乘积。输入样例4018224312输出样例8

CODE

#includeusing namespace std;int al(long long n){if(n<10){return n;}else{long long a=1;while(n){if(n%10!=0){a*=n%10;n/=10;}else n/=10;}return al(a);}}int main(){long long n;cin>>n;cout<<al(n);return 0;}
#include #include #include #include #define sc scanf#define pr printfusing namespace std;int main(){long long n,m=1;scanf("%lld",&n);while(n>10){while(n>0){if(n%10) m*=n%10;n/=10;}n=m;m=1;}printf("%lld",n);return 0;}

天天赞天天看!明天再见,拜拜!

服务器123