首页 > 其他分享 >nim游戏

nim游戏

时间:2023-04-11 09:44:24浏览次数:29  
标签:function canWinNim return 游戏 nim var

nim游戏本质上是看对局的博弈,假设一次只能拿去n以下的内容那么本质上是判断n+1是否能够抢的到

 var canWinNim = function(n) {
  //本质是抢4的游戏
  if(n%4 == 0){
    return false
  }
  else{
    return true
  }
};

自己编写的代码虽然也能够解决这个问题,但根据leetcode的评价,内存使用和效率都没有太高

image-20230411093509119

官方代码如下:

// var canWinNim = function(n) {
//   return n % 4 !== 0;
// };

直接将结果返回就能够节省更多的判断所花费的资源等,以后如果有需要的话可以将对应的内容直接进行返回而不是慢慢地进行处理后再返回结果。

标签:function,canWinNim,return,游戏,nim,var
From: https://www.cnblogs.com/Zyatoer/p/17305167.html

相关文章

  • 【ACM博弈论】SG函数入门(1):从巴什博奕到尼姆游戏
    在我小时候以前做题的时候,遇到博弈题往往都是漫无目的地打表找规律,或者找一些特殊情况但是没有很好的分析方法。其实博弈题是有比较套路的解题方法的,那就是利用SG函数,第一节不会讲到SG函数的具体用法,我们先来博弈入个门,学习一下最基本的博弈类型:Nim游戏。......
  • 斯坦福 UE4 C++ ActionRoguelike游戏实例教程 08.创建主HUD & 自定义作弊指令
    斯坦福课程UE4C++ActionRoguelike游戏实例教程0.绪论概述本篇文章对应课程Lecture14,56-58节。本篇文章将会教你将之前创建的各种UMG控件统合到一个主控件上。此外,还会教你如何在C++中创建自定义作弊指令,并在游戏中使用控制台执行它。目录创建主HUD使用GameMode生成玩......
  • 斯坦福 UE4 C++ ActionRoguelike游戏实例教程 09.第二个游戏规则:玩家重生
    斯坦福课程UE4C++ActionRoguelike游戏实例教程0.绪论概述本文对应课程15章,60-RefiningPlayerRespawns。在本篇文章中,将会为游戏新增加一个规则,即玩家可以自动产卵,呸,自动重生。设定玩家重生在之前的课程中,我们使用GameMode为游戏添加了第一个规则,即自动生成AI小兵。在......
  • 第136篇:Three.js基础入门动画API:setInterval 与 requestAnimationFrame的区别
    好家伙,书接上文 functionanimate(){//请求-动画-框架requestAnimationFrame(animate);//改变正方体在场景中的位置,让正方体动起来cube.rotation.x+=0.01;cube.rotation.y+=0.01;renderer.render(......
  • Rust入门, 猜字游戏!
    userand::Rng;//随机数usestd::cmp::Ordering;//枚举对比cmpusestd::io;//io输入输出获取fnmain(){println!("这是一个猜字游戏!");//rand::thread_rng()是获取一个本地线程作为随机数函数使用,gen_range()是获取一个范围内的随机数生成letr......
  • 关于纯净Flash无法打开4399游戏解决办法
    纯净Flash安装完成后,进行此操作:在设置->默认浏览器里面找IE兼容。把“让InternetExplorer在MicrosoftEdge中打开网站”调成“始终”->把“允许在InternetExplorer模式下重新加载网站(IE模式)”调成“允许”再重启网页。一、打开设置1、找到设置【操作】在浏览器右......
  • INM379计算机游戏结构
    INM379ComputerGamesArchitecture:CourseworkSpecificationSynopsisTheaimofthecourseworkistogiveyouexperienceofusingadeployment-readyproductionframeworktoproduceafullyfunctionalgamedemonstratingsoundarchitecturalprinciplesins......
  • 1140. 石子游戏 II
    题目链接:1140.石子游戏II方法一:dfs(超时)解题思路题目要求\(Alice\)取得的石子数尽可能的多,那么就要使得\(Bob\)取得的石子尽可能的少,但是\(Bob\)也想要取得更多的石子,因此\(Alice\)在每次选取时,要使得在此种选取方法下,\(Bob\)能取的石子数最小。现定义\(dfs(idx,m)\)表示从......
  • HJ67_24点游戏算法_多维递归_DFS(深度优先搜索)
    思路:多维递归,深度有限遍历加减乘除四种情况。知识点:1、多维递归不能对传递的变量进行修改,否则无法回溯。应该传递一个新地址的变量,如代码所示,传递切片的列表,不修改列表  2、搜索遗漏。两括号比如((9-4)-1)*6选取任意一个数作为第一个运算数与24运算,不能找出所有24点的计算......
  • 电子游戏数学:提高数学能力的最快方法
    电子游戏数学:提高数学能力的最快方法通过解决有趣的视频游戏问题来学习视频游戏设计和编码的数学课程英文名:MathForVideoGamesTheFastestWayToGetSmarterAtMath此视频教程共3.81GB,中英双语字幕,画质清晰无水印,源码附件全课程地址:https://xueshu.fun/1488演示地址:h......