2022-1-17 每日一题 NewCoder KY95 Old Bill(旧账单)
题目描述:
链接:https://www.nowcoder.com/practice/17a30153e092493e8b4d13f321343927
解题思路:
对缺省的两个数字,使用两重循环遍历0-9,由于取最贵的火鸡单价,所以循环从后往前。使用flag跳出循环,如果没有结果,则输出0。
代码如下:
#include<iostream>
#include<cstdio>
using namespace std;
int main()
{
int n,x,y,z,i,j;
bool flag;
while(cin >> n){
cin >> x >> y >> z;
int p = x*1000+y*100+z*10;//part of number
flag = true;
for(i = 9; i >= 1; --i){
for(j = 9; j >= 0; --j){
int num = i*10000+p+j;
if(num%n == 0){
printf("%d %d %d\n", i, j, num/n);
flag = false;
break;
}
}
if(!flag) break;
}
if(flag){
printf("0\n");
}
}
return 0;
}