
1823. 找出游戏的获胜者🔖递归
https://leetcode-cn.com/problems/find-the-winner-of-the-circular-game/递归问题:n问题可转位n-1形式的问题可终结12行代码是根据数学规律找出来的/** * @param {number} n * @param {num...
2022年5月4日
109字
6 阅读
递归问题:
- n问题可转位n-1形式的问题
- 可终结
12行代码是根据数学规律找出来的
/**
* @param {number} n
* @param {number} k
* @return {number}
*/
var findTheWinner = function(n, k) {
let arr = []
for (let i = 0; i<n; i++) arr.push(i+1)
let searchP = (arr, k, pre) => {
if (arr.length > 1) {
pre = k + pre - 1
while (pre > arr.length-1) pre = pre - arr.length
arr.splice(pre, 1)
searchP(arr, k, pre)
}
}
searchP(arr, k, 0)
return arr[0]
};

文章评论区
欢迎留言交流