#include <stdio.h>
#include <string.h>
int UseFlag[9];
__int64 Final[9];
int m=0;
void fun(int k,__int64 a,int MinNum,int MaxNum)
{
if((k) && ((a%k)!=0))
return;
if(MaxNum==k)
{
Final[m]=a;
m++;
return;
}
for(int i=MinNum;i<=MaxNum;i++)
{
if(!UseFlag[i])
{
UseFlag[i]=1;
fun(k+1,a*10+i,MinNum,MaxNum);
UseFlag[i]=0;
}
}
}
int main(int argc,char** argv)
{
int i=0;
fun(0,0,1,9);
if(!m)
{
printf("no compare result!\n");
}
else
{
for(i=0;i<m;i++)
{
printf("OkResult[%d] = %d\n",i,Final[i]);
}
}
return 0;
}
简单C语言实现由1-N组成一个N位各位不重复的数字,该数字前M个数字组成的数可以被M整除
最新推荐文章于 2022-10-15 14:23:16 发布