摘要: Link: BZOJ 3576 传送门 Solution: 算是发现博弈论题目的一部分套路了吧 求SG函数,然后用各种奥妙重重的方式降求解SG的复杂度 此题由于每一组独立,用SG函数肯定是没问题的。 先看暴力 $O(n^2)$ 求解SG的方式: 枚举每个$i$分成的份数$m$,只分为$i/m$和$i 阅读全文
posted @ 2018-05-31 22:54 NewErA 阅读(168) 评论(0) 推荐(0) 编辑
摘要: Link: BZOJ 1072 传送门 Solution: 一道直接next_permutation纯暴力就能过的题? 难道2007年时大家都不知道next_permutation这个函数吗 还是用复杂度更优的状压DP吧 设$dp[i][j]$为状态为$i$且对$d$余$j$的个数, 注意$dp[( 阅读全文
posted @ 2018-05-31 22:38 NewErA 阅读(204) 评论(0) 推荐(0) 编辑
摘要: Link : BZOJ 1296 传送门 Solution: 还是自己DP做少了啊,这种**题一开始还做错了 由于每一条木板间是独立的,且涉及到染色次数的分配 要想到对木板间进行分组DP 而要实现分组DP就要先求出每条木板上染色$x$次能贡献的最大答案 这个用背包DP$O(n^3)$就行了 Code 阅读全文
posted @ 2018-05-31 22:26 NewErA 阅读(371) 评论(0) 推荐(0) 编辑
摘要: Link: BZOJ 3631 传送门 Solution: 这题一眼看上去是裸的树剖,但实际上完全没有必要进行区间加的操作 由于不需要在线的查询,我们可以直接用差分数组来解决此题 而这又有两种方式: 1、先轻重链剖分,按树剖更新时一样处理差分数组 对于每一条连续的部分执行$res[pos[top[x 阅读全文
posted @ 2018-05-31 22:12 NewErA 阅读(159) 评论(0) 推荐(0) 编辑
摘要: Link: BZOJ 1805 传送门 Solution: 一道思路比较巧的线段树的题目 首先可以发现,答案和顺序是没有关系的,都是$\sum_{i=1}^n {H_i∗(H_i−1)/2}$。 那么可以比较容易得得到以下的贪心策略: 对于第$i$个船帆,对前$H_i$层中的前$K_i$小的数加1 阅读全文
posted @ 2018-05-31 07:25 NewErA 阅读(341) 评论(0) 推荐(0) 编辑