除法

来源:互联网 发布:最好的旅行软件 编辑:程序博客网 时间:2024/04/29 15:26
【题目】
输入正整数n,按从小到大的顺序输出所有形如abcde/fghij=n的表达式,

a~j恰好为0~9的一个排列,2<=n<=79。

【算法】

枚举

【代码】

#include<stdio.h>int fun(int a,int b){int sum=0,i;int c[10]={0};while(a>0){c[a%10]++;a/=10;}while(b>0){c[b%10]++;b/=10;}for(i=1;i<=9;i++)if(c[i]!=1) break;if(i==10) return 1;else  return 0;}int main(){int n,i,f;while(scanf("%d",&n)!=EOF){f=0;for(i=1234;i*n<=98765;i++){if(i<=9876&&i*n>=12345&&fun(i,i*n)){printf("%d/0%d=%d\n",i*n,i,n);f=1;}else if(i>=10234&&i*n>=56789&&fun(i,i*n)){printf("%d/%d=%d\n",i*n,i,n);f=1;}}if(f==0) printf("No Answer!\n");}return 0;}


原创粉丝点击