美文网首页
3.数学问题

3.数学问题

作者: 做一只有趣的芦苇 | 来源:发表于2020-07-24 08:20 被阅读0次

1025. 除数博弈

证明
N = 1N=1 和 N = 2N=2 时结论成立。
N > 2时,假设 N≤k 时该结论成立,则 N = k + 1 时:
如果 k 为偶数,则 k + 1 为奇数,x 是 k + 1 的因数,只可能是奇数,而奇数减去奇数等于偶数,且 k + 1 - x ≤k,故轮到 Bob 的时候都是偶数。而根据我们的猜想假设 N≤k 的时候偶数的时候先手必胜,故此时无论 Alice 拿走什么,Bob 都会处于必胜态,所以 Alice 处于必败态。
如果 k 为奇数,则 k + 1 为偶数,x 可以是奇数也可以是偶数,若 Alice 减去一个奇数,那么 k + 1 - x 是一个小于等于 k 的奇数,此时 Bob 占有它,处于必败态,则 Alice 处于必胜态。
综上所述,这个猜想是正确的。

个人其实在代码实现环节被搞晕的是这一块

如果 k 为奇数,则 k + 1 为偶数,x 可以是奇数也可以是偶数,若 Alice 减去一个奇数,那么 k + 1 - x 是一个小于等于 k 的奇数,此时 Bob 占有它,处于必败态,则 Alice 处于必胜态。
就是当alice拿到偶数的时候,总能找到一个奇数的因子并减去它,这样bob永远只能拿到奇数

剑指 Offer 62. 圆圈中最后剩下的数字

约瑟夫环问题 看这里
这是一个推出结论之后再套用公式的过程,是逆推
当只剩下最后一个人时,下标为0,所以初始化res=0,然后我们一直要求到N个人,所以range到n+1

def lastRemaining(self, n: int, m: int) -> int:
        res=0 #当
        for i in range(2,n+1):
            res=(res+m)%i
        return res 

相关文章

  • 3.数学问题

    1025. 除数博弈[https://leetcode-cn.com/problems/divisor-game/...

  • 3.数学(三)

    题目汇总https://leetcode-cn.com/tag/math/223. 矩形面积中等[✔]224. 基...

  • 如何设计开放式的评估题--《课堂评估》3

    一、课堂评估题设计准则 1.问题设计要能够评价重要的数学内容; 2.问题设计要能够评价重要的数学认知过程; 3.问...

  • Java编程分类

    Java编程分类 算法 -控制台实现即可-数学要求-举例:1.各种数学问题 2.数据结构 3.游戏 桌面应用 -...

  • 3. 参数学习

    本人在学习斯坦福大学的机器学习课程,特记录课程概要内容。课程地址: Andrew Ng机器学习课程 梯度下降算法 ...

  • 【搬运工】小学数学教学中常用创设情境方法(2)

    3.联系学生的生活实际创设问题情境。 数学源于生活,又高于生活,而学习知识后又将回到生活中去,因此,我们的数学...

  • 不可超越的边界(摘录)

    1. 世界上有很多问题,其中只有一小部分是数学问题; 2. 在数学问题中,只有一小部分是有解的; 3. 在有解的问...

  • 正确的数学学习方法

    正常的数学发展和逻辑思路: 1.想解决某种问题A 2.诞生新的数学思想a,可将A分为B+C+D 3.定义新概念B....

  • 机器学习分类一些整理

    1、完整的机器学习建模流程 1. 实际问题抽象成数学问题 2. 获取数据 3. 特征工程 4. 训练模型、诊断、调...

  • 3.数字和数学计算

     我是一个学python的小白,如果有错误可以评论告诉我,不胜感激。

网友评论

      本文标题:3.数学问题

      本文链接:https://www.haomeiwen.com/subject/pnvdlktx.html