第一题我下来做了下,用队列模拟的,不知道还有没什么别的方法
var arrN = '2 4'.split(' ').map(char => parseInt(char));
var P = 5;
var X = 10;
var sum = 1;
var que = [];
que.push(1);
while(que.length !== 0) {
var birthYear = que.shift();
for (var i = birthYear; i <= Math.min(birthYear + P - 1, X); i++) {
if (arrN.indexOf(i + 1 - birthYear) !== -1) {
que.push(i);
sum++;
}
}
if (X + 1 - birthYear >= P) {
sum--;
}
}
console.log(sum);