liujiao @ 2017-08-21 16:18:16
#include<iostream>
using namespace std;int q[9];
int main( )
{int a,b,c;
cin>>a>>b>>c;
int yi,er,san;int f=0,g=0;
for(yi=100;yi<=999;yi++)
{
er=yi/a*b;
san=yi/a*c;
q[yi/100]++;
q[yi/10%10]++;
q[yi%10]++;
q[er/100]++;
q[er/10%10]++;
q[er%10]++;
q[san/100]++;
q[san/10%10]++;
q[san%10]++;
for(int t=1;t<=9;t++)
{if(q[t]==0)f=1;
q[t]=0;
}
if(f==0){
cout<<yi<<" "<<er<<" "<<san<<endl;;
g=1;
}f=0;
}if(g==0)cout<<"No!!!";
}
by Little_cat @ 2017-08-26 21:21:21
最后一个数据
A:123 B:456 C:789,这个比较坑,要是从100开始枚举最后一个点过不了,要从1开始枚举
你的yi,er,san都是int类型的,除下去小数部分就没了
而且如果yi过大,er,san就变成四位数了,不符合题意,要舍去的