您的位置:首页 > 其它

简单枚举---除法

2014-03-11 20:06 281 查看
除法

输入正整数n,按从小到大的顺序输出所有形如abcde/fghij=n的表达式,其中a~j恰好为数字0~9的一个排列,2<=n<=79.

样例输入:

62

样例输出:

79546/01238=62

94736/01528=62

代码如下:

#include <stdio.h>

#include <stdlib.h>

int main()

{

int panduan(int,int);

int n,i;

while(scanf("%d",&n)=1)

{

for(i=1234;i*n<=98765;i++)

if(i<=9876&&i*n>=12345&&panduan(i,i*n))

printf("%d/0%d=\n",i*n,i);

if(i>=10234&&i*n>=56789&&panduan(i,i*n))

printf("%d/%d=\n",i*n,i);

}

return 0;

}

int panduan(int x,int y)

{

int a[10]={0};

for(int i=0;i<5;i++)

{

a[x%10]++;

x=x/10;

}

for(int i=0;i<5;i++)

{

a[y%10]++;

y=y/10;

}

for(int i=0;i<10;i++)

{

if(a[i]!=1)

return 0;

}

return 1;

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: