摘要: 比如经典的背包问题,每件物品有着选与不选两个决策,选的话就会导致状态的变化(更新)。 题目一: https://www.luogu.org/problemnew/show/P1064 考虑主件,则每个主件有四种决策:不选,选一个主件,选一个主件加一个附件,选一个主件加两个附件,考虑每种决策可能对状态 阅读全文
posted @ 2018-04-23 22:58 hzhuan 阅读(171) 评论(0) 推荐(0) 编辑
摘要: 把一些元素node,通过对其特征的分析,设计哈希函数将其转译成数组下标(或地址)。 key=hash1(node) (node较复杂,则先转为key),a[hash2(key)]. 在竞赛中最直接的用处便是判重和判等价。 1,对大质数取模(最简单的hash函数) a[key%1000000009] 阅读全文
posted @ 2018-04-16 20:07 hzhuan 阅读(117) 评论(0) 推荐(0) 编辑
该文被密码保护。 阅读全文
posted @ 2018-04-04 19:23 hzhuan 阅读(6) 评论(0) 推荐(0) 编辑
摘要: 博弈问题的话,假设两个人都极度聪明,都会采取最优策略,那么就是也知道了对方也和自己一样聪明,我采取最优策略后,对方也会根据当前状态做出最优策略,简而言之,就是每个玩家都从第一步棋看到了最后一步棋。 先手控局,棋还没下,就已经知道走哪一步会获得什么样的结果。 那么,现代化的我们就可以用计算机根据每个状 阅读全文
posted @ 2018-04-03 21:40 hzhuan 阅读(219) 评论(0) 推荐(0) 编辑
摘要: 用于把多堆问题简化成每个单堆问题的异或和 Sprague-Grundy定理(SG定理): 游戏和的SG函数等于各个游戏SG函数的Nim和。这样就可以将每一个子游戏分而治之,从而简化了问题。 SG函数: 首先定义mex(minimal excludant)运算,这是施加于一个集合的运算,表示最小的不属 阅读全文
posted @ 2018-03-28 18:39 hzhuan 阅读(227) 评论(0) 推荐(0) 编辑
摘要: 首推文章:https://blog.finaltheory.me/algorithm/Chairman-Tree.html#7865d 求解区间第k大问题 1、权值线段树 我感觉又能叫值域线段树,哈希线段树。。 即对值域建立线段树(需先离散化,不然内存消耗很大,但是这样便不好修改元素了),就像直接对 阅读全文
posted @ 2018-03-25 14:53 hzhuan 阅读(118) 评论(0) 推荐(0) 编辑
摘要: http://codeforces.com/contest/617/problem/E 莫队算法,O(n1.5),在数据量1e5的时候还可以使用 主要为研究[l,r]到[l,r+1]的O(1)或O(logn)转移,如能实现,那么就可以AC了 增加了a[r+1]后可以发现,需计算 根据异或和的性质转换 阅读全文
posted @ 2018-03-20 20:56 hzhuan 阅读(149) 评论(0) 推荐(0) 编辑
摘要: http://codeforces.com/contest/620/problem/F 这题给的时限是10S,且数据量不大,可以O(n*(n+m))大概2e9 过。。。 **O(n3)优化到O(n2)用到了dp预处理 阅读全文
posted @ 2018-03-19 21:57 hzhuan 阅读(133) 评论(0) 推荐(0) 编辑
摘要: http://acm.hdu.edu.cn/showproblem.php?pid=1043 八数码八境界: https://www.cnblogs.com/zufezzt/p/5659276.html 借用了MAP哈希,发现只能过hdu(249ms),poj一直TLE。 还是先上个代码吧,以后再改 阅读全文
posted @ 2018-03-12 22:05 hzhuan 阅读(130) 评论(0) 推荐(0) 编辑
摘要: https://www.nowcoder.com/acm/contest/69/D 即找一条墙壁将起点和终点隔绝,使代价最小。因为可以利用原有墙壁(即原来有墙壁的地方代价为0,还有不能建墙壁的位置代价就为inf) 我是从上边和右边开始寻找 阅读全文
posted @ 2018-03-05 21:05 hzhuan 阅读(169) 评论(0) 推荐(0) 编辑