题目: Nim 游戏:你和你的朋友,两个人一起玩 Nim 游戏:桌子上有一堆石头,每次你们轮流拿掉 1 - 3 块石头。 拿掉最后一块石头的人就是获胜者。你作为先手。 你们是聪明人,每一步都是最优解。 编写一个函数,来判断你是否可以在给定石头数量的情况下赢得游戏。 示例: 输入: 4输出 ...
...
2017-05-21 10:13 0 1519 推荐指数:
题目: Nim 游戏:你和你的朋友,两个人一起玩 Nim 游戏:桌子上有一堆石头,每次你们轮流拿掉 1 - 3 块石头。 拿掉最后一块石头的人就是获胜者。你作为先手。 你们是聪明人,每一步都是最优解。 编写一个函数,来判断你是否可以在给定石头数量的情况下赢得游戏。 示例: 输入: 4输出 ...
如果一个变量为空,通常方法是 var a=''; if(a==''||a = null) 但是,如果这个变量是一堆空格的话,这个方法是行不通的,正确的方法是 ...
“哇,你们两个同一天生日耶!” “你们居然是同一天生的,太幸运了吧!” 在我们的认知里,感觉两个人是同一天生日的概率非常低。 计算其实也很简单,不考虑闰年,一年有365天。其中一个人是365天里的一天,另一个要是同一天的话,就是1/365,0.274%的几率。 1/365 Out ...
这个问题类似于背包问题,我们只要稍微改编一下就行。也就是相当于从一堆数字里面挑选一些数,然后使其接近总和的1/2。然然加入的每个数字的价值都看成1。下面附上python写的源代码,供大家参考。 import numpy as np#n个物体的重量(w[0]无用)w = np.array ...
前言 这里是我从 2021.4.12 开始的做题记录,每个题目都有大约的讲解思路(有些偷懒就直接放的题解的链接) 这里的每一个题目都没有标程,但是都有题目的链接,可以根据右面的目录点到对应 ...
有23枚硬币在桌上,10枚正面朝上。假设闭着眼睛,并且手摸不出硬币的反正面。想个办法把这些硬币分成两堆,每堆正面朝上的硬币个数相同。 大家给出的答案很简单,先分为10、13的两堆,然后将10个硬币的那堆全部翻过来。 简单来说,就是利用了互补的一个思想,集合总量为10,知道了符合条件 ...
以下图为例: 比如我想把面积第2小的那个“小正方形”选择出来,算法代码如下: 该实现算法的关键是对算子tuple_sort_index意思的理解。 代码中: Area := [420, 12922, 38019, 58, 2033] Indices ...
实验室收集到的一些老师的邮箱: 杨波 byang@scau.edu.cn 孙爱东 sunad2002@163.com 宋鸿陟 hz.song@scau.edu.cn 张明武 ...