编程之美——找符合条件的整数
题目:任意给定一个正整数N,求一个最小的正整数M(M>1),使得N*M的十进制表示形式里只含有1和0.
方法一:
给定N,令M从2开始,枚举M的值直到遇到一个M使得N*M的十进制表示中只有1和0.
测试代码为:
#include<stdio.h>
int HasOnlyOneAndZero(unsigned int n)
{
while(n)
{
if(n%10>=2) return 0;
n/=10;
}
return 1;
}
int main()
{
int n,m;
while(scanf("%d",&n)!=EOF){
for(m=1;;m++)
{
if(HasOnlyOneAndZero(n*m))
int HasOnlyOneAndZero(unsigned int n)
{
while(n)
{
if(n%10>=2) return 0;
n/=10;
}
return 1;
}
int main()
{
int n,m;
while(scanf("%d",&n)!=EOF){
for(m=1;;m++)
{
if(HasOnlyOneAndZero(n*m))