#include<stdio.h>
int judge (int a , int b) ;
int main()
{
int n , b , count=0 ;
for (n = 2 ; n < 80 ; n++)//首先判断出n的范围,减少循环次数;
{
for (b = 1234 ; b*n <= 98765 ; b++)
{
if (judge (b , b*n))
count++ ;
}
}
printf ("%d" , count);
return 0 ;
}
int judge(int a,int b) //判断两个数是否重复
{
int m,k , p[10]={11,11,11,11,11,11,11,11,11};
for(int i=0;i<5;i++) //循环输入b数据
{
m=a%10;
p[m]=m;
a=a/10;
}
for(int j=0;j<5;j++) //循环输入b*n数据
{
m=b%10;
p[m]=m;
b=b/10;
}
for(k=0;k<10;k++) //判断a和b的各位数字是否有重复
{
if(p[k]!=k) //若有重复,则必有一个数不等于它的下标
return 0;
}
return 1;
}//把两组数据输入到同一个数组,若数据有重复,则必有一个空位;