题目描述:
比尔买东西要支付c元,现他有不限数量的面值为a元,b元的纸币,请问比尔可以用纸币刚好凑出总价c元吗
输入描述:
输入一行,包含三个整数a,b,c
a,b <= 100, c <= 10000
输出描述:
输出一行,如果可以输出”Yes”,否则输出”No”.
代码展示:
#include <stdio.h>
int main() {
int a, b, c;
scanf("%d%d%d", &a, &b, &c);
int flag = 0;
for(int i = 0; i <= c / a; i++){
for(int j = 0; j <= c / b; j++){
if(i * a + b * j == c) {
flag = 1;
break;
}
}
}
puts(flag ? "Yes" : "No");
}
代码详解:
本题理解题意较为简单,仅仅只用循环即可,引入一个判断变量flag,分别用a与by取余,当且仅当flag为真时输出“Yes”。本题解决。