0
点赞
收藏
分享

微信扫一扫

阿尔法乘积

杨沐涵 2022-03-30 阅读 106
题目描述
计算一个整数的阿尔法乘积。

对于一个整数 x 来说,它的阿尔法乘积是这样来计算的:如果 x 是一个个位数,那么它的阿尔法乘积就是它本身;否则的话,x 的阿尔法乘积等于它的各位非0的数字相乘得到的那个整数的阿尔法乘积。

例如:4018224312的阿尔法乘积等于8, 它是按照以下步骤来计算的:

4018224312−−>418224312−−>3072−−>372−−>42−−>42−−>8
输入
一个正整数 n,可以用long long 来存储n。

输出
输出 n 的阿尔法乘积。

输入样例
4018224312
输出样例
8

CODE

#include<bits/stdc++.h>
using 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 <iostream>
#include <cstring>
#include <cstdio>
#include <algorithm>
#define sc scanf
#define pr printf
using 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;
}

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

举报

相关推荐

0 条评论