HDU 1404 Digital Deletions (暴力博弈)】的更多相关文章

题意:给定一个数字串,最长是6,然后有两种操作. 第一种是,把该串中的一个数字换成一个比该数字小的数,比如 5 可以换成 0,1,2,3,4.   e.g. 12345 --> 12341 第二种是,把数字 0 以及它后面的数都删掉,e.g.  120154 --> 12 析:因为数字最长是 6 位,所以直接把所有的情况都算出来,就好了,这首先 g[1] = 0,然后能够该必败态的,都是必胜态,然后没有到达的点都是必败点,就这样就可以筛选了,还要注意的事从必败态去筛选必胜态的时候,有两种情况,…
Problem地址:http://acm.hdu.edu.cn/showproblem.php?pid=1404 刚开始想采取找规律的方法解题,可以没有发现规律.无奈,只好采用求PN点的方法. 我们假设数字最右边为第一位,且为最低位.那么可以知道当最高位为0时,那么先手的人必定能胜利,这个可以作为一个剪枝条件. 接下来就是两种操作了:1.降低其中任何一位   2.把其中一个0及这位0后面所有的数字删去 我们只需通过这两个操作,寻找目标数字的后续数字状态的PN状态,即可求得目标数字的PN状态.其实…
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1404 一看就是博弈论的题目,但并没有什么思路,看了题解,才明白 就是求六位数的SG函数,暴力一遍,打表就OK. 具体的操作是先找P态,即最终无法移动的状态,可知无数可取是P态,0是N态,1是P态,然后从1开始进行暴力, 所有可以到!sg[i]的点标记为N态,暴力过程为标记一步可以到sg[i]的数,包括两类: 一类是仅某一位数字不同,提取方法比较巧妙: ; --i){ int m = x; ; ; j…
HDU 1404  Digital Deletions 一串由0~9组成的数字,可以进行两个操作:1.把其中一个数变为比它小的数:2.把其中一个数字0及其右边的所以数字删除. 两人轮流进行操作,最后把所以数字删除的人获胜,问前者胜还是后者胜. 字符串长度为1-6,前者胜输出Yes,否则输出No. #include<cstdio> #include<iostream> #include<algorithm> #include<cstring> #include…
Digital deletions is a two-player game. The rule of the game is as following. Begin by writing down a string of digits (numbers) that's as long or as short as you like. The digits can be 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 and appear in any combinations tha…
一个拓扑结构的图,给定n个棋的位置,每次可以沿边走,不能操作者输. 已经给出了拓扑图了,对于每个棋子找一遍SG最后SG和就行了. /** @Date : 2017-10-13 20:08:45 * @FileName: HDU 1524 树上无环博弈 暴力SG.cpp * @Platform: Windows * @Author : Lweleth (SoungEarlf@gmail.com) * @Link : https://github.com/ * @Version : $Id$ */…
取石子游戏 HDU 1527 博弈论 威佐夫博弈 题意 有两堆石子,数量任意,可以不同.游戏开始由两个人轮流取石子.游戏规定,每次有两种不同的取法,一是可以在任意的一堆中取走任意多的石子:二是可以在两堆中同时取走相同数量的石子.最后把石子全部取完者为胜者.现在给出初始的两堆石子的数目,如果轮到你先取,假设双方都采取最好的策略,问最后你是胜者还是败者. 输入包含若干行,表示若干种石子的初始情况,其中每一行包含两个非负整数a和b,表示两堆石子的数目,a和b都不大于1,000,000,000. 输出对…
首先如果第一个数字是0的话,那么先手必胜. 对于一个已知的先手必败状态,凡是能转移到先手必败的状态一定是必胜状态. 比如1是必败状态,那么2~9可以转移到1,所以是必胜状态. 10,10*,10**,10***,10****也都可以删除1后面那个0,转移到1,所以也是必胜状态. #include <cstdio> #include <cstring> #include <cstdlib> ; ]; void init() { ], s1[]; , j; i <=…
暴力打表!! 代码如下: #include<iostream> #include<algorithm> #include<cstdio> #include<cmath> #include<cstring> #define M 1000000 #define ll __int64 using namespace std; ]; int get_len(int n) { ) ; ) ; ) ; ) ; ) ; ; } void solve(int n…
Largest Point Time Limit: 1 Sec Memory Limit: 256 MB 题目连接 http://acm.hdu.edu.cn/showproblem.php?pid=5461 Description Given the sequence A with n integers t1,t2,⋯,tn. Given the integral coefficients a and b. The fact that select two elements ti and tj…