判断正整数能否表示为个位数乘积的编程题题意解析
题目翻译&含义说明
题目标题里的英文Product of single digits直译就是个位数乘积。
核心规则
题目的要求非常直白:给你一个正整数N,判断它能不能拆成若干个1-9之间的整数相乘的结果。
- 对参与相乘的数字个数没有要求,1个、2个甚至更多都可以
- 只要凑出来的乘数全是个位数(取值范围1-9),就算符合条件输出Yes,凑不出来就输出No
样例逻辑
给的两个参考样例逻辑很简单:
- 输入14时,14可以拆成
2 * 7,两个乘数都是个位数,满足要求,所以输出Yes - 输入13时,13是质数,正因数只有1和13,13本身是两位数,找不到全是个位数的乘数组合能算出13,所以输出No
边界情况参考
举几个常见的边界例子帮你理清楚判定标准:
- 如果输入本身就是1-9之间的个位数,比如输入5,单个数字本身就是个位数,不需要额外拆分,直接输出Yes
- 如果输入是24,可以拆成
3*8/4*6/2*3*4等多种组合,所有乘数都是个位数,输出Yes - 如果输入是22,它的正因数只有1、2、11、22,除了1和2之外其余因数都是两位数,凑不出全个位数的乘数组合,输出No
内容的提问来源于stack exchange,提问作者Hello_wordl
相关产品推荐
相关产品推荐

