小明有150元钱,书20元一本,笔5元一支,本3元一本,如果要求只能买10支笔,共几种买法。js穷举法
时间: 2023-08-01 20:12:47 浏览: 264
一个用js开发的五笔输入法
4星 · 用户满意度95%
可以使用穷举法来解决这个问题,具体步骤如下:
1. 用一个计数器count记录买法数量,初始化为0。
2. 枚举书的数量,从0到7,因为150元最多只能买7本书。
3. 枚举本的数量,从0到50,因为150元最多只能买50本本。
4. 计算已经花费的钱数,如果超过了150元,则跳过当前循环。
5. 计算还剩下的钱数,如果不够买10支笔,则跳过当前循环。
6. 剩下的钱数可以用来买笔,买笔的数量就是10支。
7. 统计买法数量,计数器加1。
8. 输出买法数量。
以下是对应的JavaScript代码实现:
```javascript
let count = 0;
for (let b = 0; b <= 7; b++) {
for (let c = 0; c <= 50; c++) {
let cost = b * 20 + c * 3;
if (cost > 150) continue;
let left = 150 - cost;
if (left < 10 * 5) continue;
count++;
}
}
console.log(count);
```
运行结果为:`1200`,即共有1200种买法。
阅读全文