上一页 1 ··· 56 57 58 59 60 61 62 63 64 ··· 67 下一页
摘要: 题意: 给你n个石子,你最少取p个,最多取q个,问谁能赢 题解: 变形版的巴什博弈,当n>=q+1的时候,那么还是以q+1为一组拿走,剩下一个(n%(q+1)),这个时候如果它小于p的话都直接输了,如果大于p的话就赢了 当n<q+1的时候和上面一样处理就可以了 代码: 1 #include<stdi 阅读全文
posted @ 2019-08-13 11:51 kongbursi 阅读(441) 评论(0) 推荐(0) 编辑
摘要: HDU2176题意: m堆石子,两人轮流取.只能在1堆中取.取完者胜.先取者负输出No.先取者胜输出Yes,然后输出怎样取子. 通过 SG定理 我们可以知道每一个数的SG值,等于这个数到达不了的前面数中的最小值。本题题意和尼姆博弈一样,即可以在一堆中任意个石子,所以也就是说每个数都可以到达前面经过的 阅读全文
posted @ 2019-08-13 11:37 kongbursi 阅读(192) 评论(0) 推荐(0) 编辑
摘要: 题意: 给你两个数n、m(假设n>m),问让n-k*m(k要保证n-k*m>=0),如果谁先减出来0的话谁就获得胜利 题解: 当n%m==0的时候先手获胜 当n<2*m的时候,那么只能通过辗转相减来一步一步求结果 当n>2*m的时候,先手获胜。假设这个时候我们已经知道了n%m与m这两个数是先手获胜还 阅读全文
posted @ 2019-08-13 11:07 kongbursi 阅读(101) 评论(0) 推荐(0) 编辑
摘要: B题题意: 题目 给你n个数,让你把这一个序列中的所有子区间的Beauty Values加起来,Beauty Values是子区间内有几个不同的数 题解: 肯定不会是暴力,所以我们就要在各元素的位置上下手,我们可以反过来去求有多少区间内有至少一个本元素,就把这些区间加起来就可以了 但是有可能某个区间 阅读全文
posted @ 2019-08-12 18:02 kongbursi 阅读(138) 评论(0) 推荐(0) 编辑
摘要: 取石子三 题意: 给你n堆石子,你可以从一堆中拿取任意个石子,在拿完之后你还可以(你也可以不做)对你操作过的石子堆再进行一次操作——从中拿取一些石子放到其他有石子数不为0的石子堆上。 题解: 当只有一堆石子的时候那是必胜态N; 两堆石子的时候:如果两堆石子数量一样就是必败态P,因为后手可以跟着前手一 阅读全文
posted @ 2019-08-10 09:27 kongbursi 阅读(467) 评论(0) 推荐(0) 编辑
摘要: 巴什博弈: 问题:给你一堆石子共n个,你最多只能拿走m个,问什么情况下先手胜 结论:当n%(m+1)==0的时候先手输,反之则赢 简而言之,谁先面对k*(m+1)(k是任意值),谁就输 题目 代码: 1 //巴什博弈 2 //谁先面对m+1(m是最多拿多少石子)那谁就输 3 //因为先手最多拿m个, 阅读全文
posted @ 2019-08-09 16:05 kongbursi 阅读(457) 评论(0) 推荐(0) 编辑
摘要: Mr. Pote's shop sells beans now. He has N bags of beans in his warehouse, and he has numbered them with 1, 2, …, N according to their expired dates. T 阅读全文
posted @ 2019-08-09 10:07 kongbursi 阅读(218) 评论(1) 推荐(0) 编辑
摘要: 传送门 题意: 给你一个n次n+1项式(An*X^n+A(n-1)*X^(n-1)...A*X+A0),将系数An都给你,问你这个多项式是不是一个不可约多项式,可约多项式就是类型(x+1)*(x+2)= x^2+3*x+2 这一种,它是不可约多项式就输出Yes,否则输出No 题解: 这道题有一个结论 阅读全文
posted @ 2019-08-08 17:48 kongbursi 阅读(171) 评论(0) 推荐(0) 编辑
摘要: 题意: 一个栅栏一共有n(从1——n)个木板,我们找k个工人去粉刷它,li表示每个人有限制粉刷木板数量,pi表示粉刷一个木板得到的钱,si表示他开始在那个木板前面 如果一个工人要粉刷,那么他必须粉刷si这个木板,而且工人粉刷时必须是连续的木板 题解: dp[i][j]表示有i个人粉刷j块木板所获得的 阅读全文
posted @ 2019-08-06 18:34 kongbursi 阅读(253) 评论(0) 推荐(0) 编辑
摘要: 传送门 题意: 就是给你n个技能,每个技能最高升到m级,每升一级就是耗费Cij钱,这个Cij可能是负的,如果所有技能都升到或者说超过j等级,就会获得Dj钱,这个Dj也有可能是负值,让你求你最多得到多少钱(技能没有固定说要升到多少级,你也可以不升,这样就获得了0) 题解: 把所以获取的钱都变成正值,耗 阅读全文
posted @ 2019-08-06 10:03 kongbursi 阅读(155) 评论(0) 推荐(0) 编辑
上一页 1 ··· 56 57 58 59 60 61 62 63 64 ··· 67 下一页