思路很简单,利用两层for循环穷举出所有符合题意可能的情况,然后每出现一种情况就判断一下是否能被题目给的n整除,并保存数据,以及需要使用一个bool型的变量来判断是否存在着符合条件的数。
最后判断是否存在着符合条件的数,若无则返回0,若有则输出结果即可。
值得注意的是,这里使用的能否被整除的判断方法,利用了int型变量下取整的性质。
using namespace std;
int main(){
int i,j,n,x,y,z,q;
int io,jo,price;//输出的价格
bool C = false;
while(cin>>n>>x>>y>>z){
for(i=1;i<=9;i++){
for(j=0;j<=9;j++)
{
if(((i*10000+x*1000+y*100+z*10+j)/n)*n == i*10000+x*1000+y*100+z*10+j)
{
io = i;
jo = j;
price = (i*10000+x*1000+y*100+z*10+j)/n;
C = true;
}
}
}
if(C)
cout<<io<<" "<<jo<<" "<<price<<endl;
else
cout<<"0"<<endl;
}
return 0;
}