王道oj训练总结
作业4-3
问题描述
Description
某人想将手中的一张面值100元的人民币换成10元、5元、2元和1元面值的票子。要求换正好40张,且每种票子至少一张。问:有几种换法?
Input
无输入
Output
一个数,表示共有多少种换法
Sample Input 1
无
Sample Output 1
不能告知,因为只有一个数,偷偷告诉你小于100
代码示例
#include "stdio.h"
//Description
//
//某人想将手中的一张面值100元的人民币换成10元、5元、2元和1元面值的票子。要求换正好40张,且每种票子至少一张。问:有几种换法?
int main(){
int s=0;
for (int x = 1; x <= 10; x++) {
for (int y = 1; y <= 20; y++) {
for (int z = 1; z <=50; z++) {
for(int a = 1; a <=100; a++){
if(10*x+5*y+2*z+a==100) {
if (x + y + z + a == 40) {
s++;
}
}
}
}
}
}
printf("%d",s);
return 0;
}
总结
主要用了for循环嵌套语句,在做本题的时候遇到了条件判断不全的情况,需要对数学逻辑思维进行提高一下。