剑指offer:孩子们的游戏(圆圈中最后剩下的数)

定义个返回值为int型的LastRemaining_Solution函数,有两个整形参数n、m。当n=0时,返回-1当错误。当n=1时,返回0作为剩下的数字,else语句,没有满足的n-1,m不变来递归调用自身,对递归调用的结果+m,从当前的位置走m步,取模确保在当前圆圈中的合法范围内。

class Solution {
public:
    int LastRemaining_Solution(int n, int m) {
        if(n==0) return -1;
        if(n==1) return 0;
        else
            return(LastRemaining_Solution(n-1,  m)+m)%n;
    }
};

#剑指offr##23届找工作求助阵地#
全部评论

相关推荐

点赞 收藏 评论
分享
牛客网
牛客企业服务