摘要:        
链接:http://acm.hdu.edu.cn/showproblem.php?pid=3544这题被题意坑了, 英语不好的孩子伤不起~题意: 有一个N*M的蛋糕, 两个人来切, A切完, B从切出来的两块中选一块切, 最后一个不能切的为负;因此每个人都尽量均分;View Code 1 #include <iostream> 2 #include <cmath> 3 #include <cstring> 4 #include <cstdio> 5 #include <string> 6 #include <stdlib.h&g    阅读全文
posted @ 2013-04-29 19:36
淡墨æ末央
阅读(203)
评论(0)
推荐(0)
        
            
        
        
摘要:        
链接:http://acm.hdu.edu.cn/showproblem.php?pid=3951题意:有一圈n个的硬币, 两个玩家轮流取,每次他们可以取1 ~ K个连续硬币, 最后一个取完为胜;思路: 面对一个可以一次拿完的局面先手必胜, 如果k=1那么由N的奇偶性决定, 否则后手一定可以使下一个局面为对称的, 因此一定会赢;View Code 1 #include<stdio.h> 2 int main() 3 { 4 int t; 5 int n,k; 6 int i; 7 scanf("%d",&t); 8 for(i=1;i<=t;i++    阅读全文
posted @ 2013-04-29 17:04
淡墨æ末央
阅读(230)
评论(0)
推荐(0)
        
            
        
        
摘要:        
链接:http://acm.hdu.edu.cn/showproblem.php?pid=1850题意: nim博弈先手赢的方法数:思路:通常的Nim游戏的定义是这样的:有若干堆石子,每堆石子的数量都是有限的,合法的移动是“选择一堆石子并拿走若干颗(不能不拿)”,如果轮到某个人时所有的石子堆都已经被拿空了,则判负(因为他此刻没有任何合法的移动);定义P-position和N-position,其中P代表Previous,N代表Next。直观的说,上一次move的人有必胜策略的局面是P-position,也就是“后手可保证必胜”或者“先手必败”,现在轮到move的人有必胜策略的局面是N-posi    阅读全文
posted @ 2013-04-29 15:47
淡墨æ末央
阅读(249)
评论(0)
推荐(0)
        
            
        
        
摘要:        
链接:http://acm.hdu.edu.cn/showproblem.php?pid=3389题意::1-N带编号的盒子,当编号满足A>B && A非空 && (A + B) % 3 == 0 && (A + B) % 2 == 1则可以从A中取任意石头到B中.谁不能取了谁就输.思路: 其本质为阶梯博弈; 阶梯博弈:博弈在一列阶梯上进行,每个阶梯上放着自然数个点,两个人进行阶梯博弈...每一步则是将一个集体上的若干个点(>=1)移到前面去,最后没有点可以移动的人输;在本题中1,3,4 的状态不能转移到其他状态; 其他每个状态皆可转    阅读全文
posted @ 2013-04-29 14:50
淡墨æ末央
阅读(228)
评论(1)
推荐(0)
        
            
        
        
摘要:        
链接:http://acm.hdu.edu.cn/showproblem.php?pid=3032题意:Alice和Bob轮流取N堆石子,每堆S[i]个,Alice先,每一次可以从任意一堆中拿走任意个石子,也可以将一堆石子分为两个小堆。先拿完者获胜。数据范围: (1≤N≤10^6,1≤S[i]≤2^31-1).思路: 此题为博弈中的—取走-分割游戏(这种游戏允许取走某些东西,然后将原来的一个游戏分成若干个相同的游戏)由于数据范围,不能直接求sg值只能打表找规律;有SJ 定理:对于任意的一个 Anti-SG 游戏,如果我们规定当局面中所有单一游戏的 SG 值为 0 时游戏 结束,则先手必胜当且仅    阅读全文
posted @ 2013-04-29 12:46
淡墨æ末央
阅读(254)
评论(2)
推荐(0)
        
            
        
        
摘要:        
链接:http://acm.hdu.edu.cn/showproblem.php?pid=1220题意:一个正方体,切割成单位体积的小正方体,求所有公共顶点数<=2的小正方体的对数;思路:对于正方体中的任意两个单位正方体,其公共顶点数为 0, 2, 4;由容斥原理可知,只要减去公共顶点为4的即可。故答案为种。首先总共有 n^3 个立方体从中选2个 ,其次只有相邻的立方体才是4,所以每一列有n-1对,每个面有n^2列, 前后,左右, 上下是一样的共三个方向;View Code 1 #include <cstdio>2 int main( )3 {4 int N;5 while(    阅读全文
posted @ 2013-04-29 01:32
淡墨æ末央
阅读(163)
评论(0)
推荐(0)
        
            
        
        
摘要:        
链接:http://acm.hdu.edu.cn/showproblem.php?pid=1022View Code 1 #include <cstdio> 2 #include <iostream> 3 #include <cstdlib> 4 #include <stack> 5 #include <cstring> 6 using namespace std; 7 stack<char>st; 8 bool a[3000]; 9 char s1[1000], s2[1000];10 int main( )11 {12    阅读全文
posted @ 2013-04-29 00:19
淡墨æ末央
阅读(151)
评论(0)
推荐(0)
        
 
                    
                     
                    
                 
                    
                
 
         浙公网安备 33010602011771号
浙公网安备 33010602011771号