集训2010-3-26 Ll.ppt.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
集训2010-3-26 Ll.ppt

公平组合游戏 杭州学军中学 李恺威 例子:取石子游戏 有n颗石子 两个人轮流取石子 每次可以取1到k颗 取完石子者获胜 问谁有必胜策略 什么是组合游戏? 有n颗石子 游戏的局面有限 两个人轮流取石子 双人游戏,操作轮流进行 每次可以取1到k颗 规定在每个局面中每个人可行的操作 取完石子者获胜 无法操作时游戏结束,得出胜负 问谁有必胜策略 游戏一定会结束 分析问题 例如有21颗石子,每次可取1至3颗 剩下0颗,先手失败 剩下1、2、3颗,先手必胜 剩下4颗,先手必败 …… 剩下4n颗,先手必败 反之先手必胜 策略:先取1颗,对方取k颗,则取4-k颗。 N状态和P状态 N状态:先手必胜 – Next player wins P状态:先手必败 – Previous player wins 终止状态为P状态 对于每个N状态,至少可转移到一个P状态 对于每个P状态,只能转移到N状态 0 1 2 3 4 5 6 7 8 9 P N N N P N N N P N 继续取石子 有n堆石子,第i堆石子有a_i个。 两人轮流取 每人每次只能从一堆中取走若干颗石子 无子可取者失败 n=1? n=2? n2? Nim和 A⊕B 二进制不进位加法 A⊕B = A xor B 22 = 101102 51 = 1100112 —————————————— 37 = 1001012 a_1 ⊕a_2 ⊕… ⊕a_n 等于0 先手必败 P状态 不等于0 先手必胜 N状态 移硬币 1 ×N的网格上,放置若干硬币 每人每轮可将某个硬币向左移动到某个位置 转化为取石子问题 0 1 2 3 4 5 6 7 8 9 ○ ○ ○○ ○ 通用模型:游戏图 有向无环图 游戏局面结点 局面可行操作有向边 终止局面无出度的点 游戏的进行点通过有向边的运动 NP图 N P Sg函数 分析游戏的工具 NP状态 SG函数 对于一个图G=(X,F) 定义在X上的函数g 取一堆石子 n颗石子 一次取1-3颗 sg函数 g(i)=i mod 4 0 1 2 3 4 5 6 7 8 9 0 1 2 3 0 1 2 3 0 1 SG图 2 3 0 1 0 0 2 1 0 0 1 0 2 0 移动皇后 棋盘上有一个皇后 两人轮流移动皇后 每次可将皇后向左移或者向上移 将皇后移动至左上角者胜利 必胜策略? SG函数? 有多个皇后怎么办? 0 1 2 3 4 5 6 7 1 0 3 2 5 4 7 6 2 3 0 1 6 7 4 5 3 2 1 0 7 6 5 4 4 5 6 7 0 1 2 3 5 4 7 6 1 0 3 2 6 7 4 5 2 3 0 1 7 6 5 4 3 2 1 0 游戏的和 例子: 棋盘上有若干个皇后 两人轮流操作 每次可选择一个皇后将其向左或向上移动若干格 无法移动者失败 游戏的和(cont’d) 有n个游戏图:G1=(X1,F1),G2=(X2,F2),…,Gn=(Xn,Fn)。 组合形成G=(X,F)称作G1,…,Gn的和 表示为G=G1+G2+G3+…+Gn 其中X=X1×…×Xn(笛卡儿积) F(x)=F(x1,…,xn)= F1(x1)×{x2}×…×{xn} ∪{x1}×F2(x2)×…×{xn} ∪… ∪{x1}×{x2}×…×Fn(xn) 画图说明 Sg定理 令gi表示游戏图Gi的sg函数(i=1…n) 则G=G1+G2+…+Gn的sg函数为 g(x1,…,xn)=g1(x1)⊕… ⊕gn(xn) 对于一个游戏图,如果已知它的所有子游戏图的sg函数,通过Nim和的形式就可以求出这个游戏图的sg函数 Sg定理:证明 令x=(x1,…,xn)表示X中的任意一点 令b=g1(x1)⊕…⊕gn(xn) 只要说明函数g(x1,…,xn) 1、对于每个小于b的非负整数a,总有一个(x1,…,xn)的后继的g值为a 2、没有(x1,…,xn)的后继的g值等于b 就可以说明x的sg值为b Sg定理:证明(cont’d) 1、对于每个小于b的非负整数a,总有一个(x1,…,xn)的后继的g值为a 令d=a⊕b,找出整数k满足2k-1≤d2k k的含义:二进制下a、b的第k位不同且a的第k位为0,b的第k位为1 一定能找出一个i使得gi(xi)的第k位为1;不妨设i=1 所以d⊕g1(x1)g1(x1) 将x1转移成x1’,满足g1(x1’)=d⊕g1(x1) g1(x1’)⊕g2(x2)…⊕gn(xn) =d⊕g1(x1)⊕g2(x2)⊕…⊕gn(xn) =d⊕b=a Sg定理:证明(cont’d) 2、没有(x1,…,xn)的后继的g值等于b 请同学自行证明 多堆取石子 m堆石子 第i堆ni颗 一次去1-3颗 sg函数 (2

文档评论(0)

xy88118 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档