摘要: 博弈论(一):Nim游戏博弈论(二):Sprague-Grundy函数Game theory初步寻找必败态——一类博弈问题的快速解法博弈论(一):Nim游戏重点结论:对于一个Nim游戏的局面(a1,a2,...,an),它是P-position当且仅当a1^a2^...^an=0,其中^表示位异或(xor)运算。Nim游戏是博弈论中最经典的模型(之一?),它又有着十分简单的规则和无比优美的结论,由这个游戏开始了解博弈论恐怕是最合适不过了。 Nim游戏是组合游戏(Combinatorial Games)的一种,准确来说,属于“Impartial Combinatorial Games”(以下简称 阅读全文
posted @ 2013-08-19 20:29 我家小破孩儿 阅读(629) 评论(0) 推荐(0)
摘要: sg函数:sg函数是博弈中的确定一个position性质的一个函数,全称是sprague-grundy。性质1:对于所有的p-position,都有sg = 0;对于所有的n-position都有sg != 0;性质2:某点a的sg函数的值由它的后继的sg函数的值来决定,设后继为b, c, d, e……则sg(a) = mex(sg(a), sg(b), sg(c), sg(d), sg(e),……)mex是不属于这个集合的最小非负整数。应用范围:在此无环图中谁无法再次移动,便是输。(如果谁无法移动,便是赢,暂时不知如何解决。)应用:通过判断该点,sg = 0是p点,sg != 0是N点。构造 阅读全文
posted @ 2013-08-19 19:38 我家小破孩儿 阅读(1128) 评论(0) 推荐(0)
摘要: Nim游戏是博弈论中最经典的模型(之一?),它又有着十分简单的规则和无比优美的结论,由这个游戏开始了解博弈论恐怕是最合适不过了。Nim游戏是组合游戏(Combinatorial Games)的一种,准确来说,属于“Impartial Combinatorial Games”(以下简称ICG)。满足以下条件的游戏是ICG(可能不太严谨):1、有两名选手;2、两名选手交替对游戏进行移动(move),每次一步,选手可以在(一般而言)有限的合法移动集合中任选一种进行移动;3、对于游戏的任何一种可能的局面,合法的移动集合只取决于这个局面本身,不取决于轮到哪名选手操作、以前的任何操作、骰子的点数或者其它什 阅读全文
posted @ 2013-08-19 17:48 我家小破孩儿 阅读(258) 评论(0) 推荐(0)
摘要: To and FroTime Limit:1000MSMemory Limit:30000KTotal Submissions:8052Accepted:5367DescriptionMo and Larry have devised a way of encrypting messages. They first decide secretly on the number of columns and write the message (letters only) down the columns, padding with extra random letters so as to ma 阅读全文
posted @ 2013-08-19 16:30 我家小破孩儿 阅读(172) 评论(0) 推荐(0)
摘要: Hat's FibonacciTime Limit: 2000/1000 MS (Java/Others)Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 5445Accepted Submission(s): 1820Problem DescriptionA Fibonacci sequence is calculated by adding the previous two members the sequence, with the first two members being both 1.F(1) = 阅读全文
posted @ 2013-08-19 16:28 我家小破孩儿 阅读(134) 评论(0) 推荐(0)
摘要: 吃糖果Time Limit: 6000/3000 MS (Java/Others)Memory Limit: 65535/32768 K (Java/Others)Total Submission(s): 17463Accepted Submission(s): 5026Problem DescriptionHOHO,终于从Speakless手上赢走了所有的糖果,是Gardon吃糖果时有个特殊的癖好,就是不喜欢将一样的糖果放在一起吃,喜欢先吃一种,下一次吃另一种,这样;可是Gardon不知道是否存在一种吃糖果的顺序使得他能把所有糖果都吃完?请你写个程序帮忙计算一下。Input第一行有一个整数T 阅读全文
posted @ 2013-08-19 16:26 我家小破孩儿 阅读(127) 评论(0) 推荐(0)
摘要: 剪花布条Time Limit: 1000/1000 MS (Java/Others)Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 6211Accepted Submission(s): 4124Problem Description一块花布条,里面有些图案,另有一块直接可用的小饰条,里面也有一些图案。对于给定的花布条和小饰条,计算一下能从花布条中尽可能剪出几块小饰条来呢?Input输入中含有一些数据,分别是成对出现的花布条和小饰条,其布条都是用可见ASCII字符表示的,可见的ASCII字符有多少个,布条的花纹也有多少 阅读全文
posted @ 2013-08-19 16:24 我家小破孩儿 阅读(133) 评论(0) 推荐(0)
摘要: 汉诺塔IITime Limit: 2000/1000 MS (Java/Others)Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 3730Accepted Submission(s): 1855Problem Description经典的汉诺塔问题经常作为一个递归的经典例题存在。可能有人并不知道汉诺塔问题的典故。汉诺塔来源于印度传说的一个故事,上帝创造世界时作了三根金刚石柱子,在一根柱子上从下往上按大小顺序摞着64片黄金圆盘。上帝命令婆罗门把圆盘从下面开始按大小顺序重新摆放在另一根柱子上。并且规定,在小圆盘上不能放 阅读全文
posted @ 2013-08-19 16:21 我家小破孩儿 阅读(162) 评论(0) 推荐(0)
摘要: n个有序的元素应有n!种不同的排列。如若一个排列式的所有的元素都不在原来的位置上,则称这个排列为错排。任给一个n,求出1,2,……,n的错排个数Dn共有多少个。递归关系式为:D(n)=(n-1)(D(n-1)+D(n-2))D(1)=0,D(2)=1可以得到:错排公式为f(n) = n![1-1/1!+1/2!-1/3!+……+(-1)^n*1/n!]简化公式:f(n)=[n!/e+0.5],[x]为取整函数,即x向下取整其中,n!=1*2*3*.....*n,特别地,有0!=1,1!=1.解释:n 个不同元素的一个错排可由下述两个步骤完成:第一步,“错排” 1 号元素(将 1 号元素排在第 阅读全文
posted @ 2013-08-19 16:20 我家小破孩儿 阅读(348) 评论(0) 推荐(0)
摘要: Prime Ring ProblemTime Limit: 4000/2000 MS (Java/Others)Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 19792Accepted Submission(s): 8850Problem DescriptionA ring is compose of n circles as shown in diagram. Put natural number 1, 2, ..., n into each circle separately, and the sum of nu 阅读全文
posted @ 2013-08-19 16:18 我家小破孩儿 阅读(165) 评论(0) 推荐(0)
摘要: Clairewd’s messageTime Limit: 2000/1000 MS (Java/Others)Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 2557Accepted Submission(s): 1005Problem DescriptionClairewd is a member of FBI. After several years concealing in BUPT, she intercepted some important messages and she was preparing 阅读全文
posted @ 2013-08-19 16:15 我家小破孩儿 阅读(270) 评论(0) 推荐(0)
摘要: Georgia and BobGeorgia and Bob decide to play a self-invented game. They draw a row of grids on paper, number the grids from left to right by 1, 2, 3, ..., and place N chessmen on different grids, as shown in the following figure for example:Georgia and Bob move the chessmen in turn. Every time a pl 阅读全文
posted @ 2013-08-19 16:11 我家小破孩儿 阅读(204) 评论(0) 推荐(0)
摘要: Green HackenbushHackenbush游戏是通过移除一个有根图的某些边,直到没有与地板的相连的边。地板用虚线来表示,其中移除某一条边的时候,那条边以上所连着的所有边都会移除,就像砍树枝那样,树枝以上的部分也会被移除。在这节中,我们讨论这个游戏的公平版本,每个玩家在他的回合可以删除任意的边。这个版本叫做Green Hackenbush,每条边都是绿色的,下面我们简称GH游戏。这里还有一个不公平版本,叫做Blue-Red Hackenbush,有些边是蓝色,有些边是红色,而玩家一只能删除蓝色边,玩家二只能删除红色边。总的来说,Hackenbush游戏,可能会有只供玩家一删除的蓝色边, 阅读全文
posted @ 2013-08-19 15:45 我家小破孩儿 阅读(698) 评论(0) 推荐(0)
摘要: 翻硬币游戏一般的翻硬币游戏的规则是这样的:N枚硬币排成一排,有的正面朝上,有的反面朝上。我们从左开始对硬币按1到N编号。第一,游戏者根据某些约束翻硬币,但他所翻动的硬币中,最右边那个硬币的必须是从正面翻到反面。例如,只能翻3个硬币的情况,那么第三个硬币必须是从正面翻到反面。如果局面是正正反,那就不能翻硬币了,因为第三个是反的。第二,谁不能翻谁输。有这样的结论:局面的SG值为局面中每个正面朝上的棋子单一存在时的SG值的异或和。即一个有k个硬币朝上,朝上硬币位置分布在的翻硬币游戏中,SG值是等于k个独立的开始时只有一个硬币朝上的翻硬币游戏的SG值异或和。比如THHTTH这个游戏中,2号、3号、6号 阅读全文
posted @ 2013-08-19 15:42 我家小破孩儿 阅读(351) 评论(0) 推荐(0)