• 博客园logo
  • 会员
  • 周边
  • 新闻
  • 博问
  • 闪存
  • 众包
  • 赞助商
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
 






Storm_Spirit

不忘初心,方得始终。
 
 

Powered by 博客园
博客园 | 首页 | 新随笔 | 联系 | 订阅 订阅 | 管理

随笔分类 -  博弈论

 
CodeForces 787 题解
摘要:A题,因为数据范围很小,所以只要暴力即可,如果能相遇一定范围不大,如果范围很大还没相遇一定是不会相遇的了。正解应当是用扩展欧几里得计算这个方程的整数解,再想办法看看有没有正整数解才是。 B题,只要看懂了题意,用map维护一下即可。真不知道题目给的n是干嘛用的。。 C题,如果不存在loop的情况就用n 阅读全文
posted @ 2017-07-25 10:37 Storm_Spirit 阅读(276) 评论(0) 推荐(0)
Codeforces 812E Sagheer and Apple Tree ——(阶梯博弈)
摘要:之前在bc上做过一道类似的阶梯博弈的题目,那题是移动到根,这题是移动到叶子。换汤不换药,只要和终态不同奇偶的那些位置做nim即可。因此这题给出了一个条件:所有叶子深度的奇偶性相同。同时需要注意的是,上次bc中,根节点是不能移动的,因此根节点是终态节点,而这里叶子上面还可以进行操作(可以吃掉),那么就 阅读全文
posted @ 2017-06-03 22:39 Storm_Spirit 阅读(360) 评论(0) 推荐(0)
2017年浙江省赛总结
摘要:最终是5题银。其实感觉再给点时间能7题的,主要是最后机子不够用了,没时间调试了,当然代码能力弱也是很大的一个问题。 E题,队友当时卡了很久,最终是A了。赛后发现就是一个很水的数位DP。。代码如下: 1 #include <stdio.h> 2 #include <algorithm> 3 #incl 阅读全文
posted @ 2017-04-26 09:04 Storm_Spirit 阅读(425) 评论(0) 推荐(0)
Egyptian Collegiate Programming Contest (ECPC 2015)
摘要:题目链接:https://vjudge.net/contest/155219#overview。 A题,用全排列来找出比当前这个数字字典序还大的排列有几个,然后前缀和dp即可。据说可以康拓展开来快速找出前面需要实现的要求。 B题,水题。 C题,感觉数据比较水。做法是dsu+lca,但是为了实现lca 阅读全文
posted @ 2017-03-26 11:33 Storm_Spirit 阅读(148) 评论(0) 推荐(0)
Codeforces Round #366 (Div. 2)
摘要:A题,水题。 B题,博弈论题,找到的规律是当前数是奇数那么这个子游戏是必败的,否则必胜。那么异或一下即可。 C题,模拟题,考虑到第三个操作如果之前清空到第x条,且当前清空到第t条,如果t比x要小,那么可以忽略清空到t条的操作;另外所有元素最多入队列和出队列一次。那么总的复杂度是O(n)的。代码如下: 阅读全文
posted @ 2017-02-11 10:57 Storm_Spirit 阅读(101) 评论(0) 推荐(0)
阶梯博弈
摘要:由于bestcoder的一道题,去学习了一下阶梯博弈。 大概理解如下:有n层的阶梯,每一层上都有若干的石子,可以将任何一层的石子,拿出至少一个,放到它的上一层上去,最后一个不能进行操作的人输。 那么,必胜策略是怎么样的呢?首先,我们令最高层为0层,依次为1,2,...,n-1层。那么,结论就是奇数层 阅读全文
posted @ 2016-12-26 20:12 Storm_Spirit 阅读(179) 评论(0) 推荐(0)
HDU 5795 A Simple Nim ——(Nim博弈 + 打表)
摘要:题意:在nim游戏的规则上再增加了一条,即可以将任意一堆分为三堆都不为0的子堆也视为一次操作。 分析:打表找sg值的规律即可。 感想:又学会了一种新的方法,以后看到sg值找不出规律的,就打表即可~ 打表代码如下: AC代码如下: 阅读全文
posted @ 2016-08-20 19:00 Storm_Spirit 阅读(161) 评论(0) 推荐(0)
HDU 2177 —— (威佐夫博弈)
摘要:威佐夫博弈奇异态(必败态)的条件是a[k]=[k*(sqrt(5.0)+1.0)/2.0]。暴力找出必败态即可。 代码如下: 阅读全文
posted @ 2016-07-22 17:24 Storm_Spirit 阅读(389) 评论(0) 推荐(0)
HDU 2176 取(m堆)石子游戏 —— (Nim博弈)
摘要:如果yes的话要输出所有情况,一开始觉得挺难,想了一下也没什么。 每堆的个数^一下,答案不是0就是先取者必胜,那么对必胜态显然至少存在一种可能性使得当前局势变成必败的。只要任意选取一堆,把这堆的数目变成其他堆异或和即可,这样,它们异或一下就是0了(变成了必败态)。所以说,在这题就是,对任意一堆,变化 阅读全文
posted @ 2016-07-21 10:28 Storm_Spirit 阅读(286) 评论(0) 推荐(0)
ACM之路(17)—— 博弈论
摘要:博弈论这方面网上资料庞大,我觉得我不可能写的比他们好,就转载一下我觉得写的不错的博客好了。 首先是三大博弈:巴什博奕,威佐夫博奕,尼姆博奕。博客:三大基本博弈。 然后是强大的sg函数和sg定理:SG。简单的说就是子游戏的sg值异或和为0的话就是必败点。 最后是斐波那契博弈,觉得这个人写的非常不错。斐 阅读全文
posted @ 2016-07-21 09:30 Storm_Spirit 阅读(157) 评论(0) 推荐(0)