版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_31650113/article/details/59486237
参考做的
题目 输入n,2<=n<=79,输出abcde/fghij=n的表达式
#include<stdio.h>
int flag[10];
int check(int x,int y)
{
if(x>98765) return 0;
for(int i=0;i<10;i++)
flag[i]=0;
while(x){
flag[x%10]=1;
x/=10;
}
if (y < 10000) flag[0] = 1; //刚开始没写这一句...
while(y){
flag[y%10]=1;
y/=10;
}
int sum=0;
for(int i=0;i<10;i++){
sum+=flag[i];
}
return sum==10; //如果不重复加起来是10 返回1
}
int main()
{
int n;
while(scanf("%d",&n)!=EOF){
for(int i=1234;i<98765;i++){
if(check(i*n,i))
printf("%05d/%05d=%d\n",i*n,i,n);
}
}
return 0;
}
/*int sack[10005];
char com[6];
int main()
{
int T,n,q,cnt,num;
while(scanf("%d",&T)!=EOF){
scanf("%d %d",&n,&q);
for(int i=0;i<n;i++){
scanf("%d",&sack[i]);
}
printf("Case %d:\n",T);
getchar();
for(int i=0;i<q;i++){
gets(com);
if(com[0]=='1') {
int a=com[2]-48;
printf("%d\n",sack[a]);
sack[a]=0;
}
if(com[0]=='2') {
int a=com[2]-48,b=com[4]-48;
sack[a]+=b;
}
if(com[0]=='3'){
int a=com[4]-48,b=com[2]-48,x=0;
for(int p=b;p<=a;p++)
{
x+=sack[p];
}
printf("%d\n",x);
}
}
}
return 0;
}*/