孙悟空选猴子将军

今天一个朋友在群里发了这样一个题目,说是小学二年级的数学题

count-monkeys

文字版:
孙悟空要在花果山的小猴子们中选出“猴子将军”,于是他让2018只小猴围城一圈,从某一只小猴开始,顺时针依次报数,从1报到80,再从1报到10,一直循环下去直到每只小猴都报过11次数为止,所有报过7,也报过17的小猴会被选为“猴子将军”,那么这2018只小猴里有_____只“猴子将军”。

看到题目的时候真的很难相信这是小学二年级的题,反正现在我也没想出解法来

用程序傻逼数吧:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34

var round = 1;
var count = 0;
var monkeys = [];

function makeMonkey() {
this.countNums = [];
}

function counting() {
for (var i = 0; i < 2018; i++) {
monkeys[i].countNums.push(round);
round++;
if (round == 81) {
round = 1
}
}
}

for (var i = 0; i < 2018; i++) {
monkeys.push(new makeMonkey())
}

for (var i = 1; i <= 11; i++) {
counting();
}
for (var i = 0; i < 2018; i++) {
if (monkeys[i].countNums.indexOf(7) >= 0 && monkeys[i].countNums.indexOf(17) >= 0) {
count += 1;
}
}

console.log(count);//152

本文永久链接: https://www.mulianju.com/count-monkeys/