12 2016 档案

摘要:这一题思维要求较高,代码要求较低,而我要重点提高思维强度。 给出n(1e5)和数组b和数组c,要求出一个数组a,满足bi=sigma(ai and aj),ci=sigma(ai or aj)。 题意很简洁,但是看起来好像很难入手。 这种位操作的题目一般都要考虑分位,把大问题简化成一位的小问题来处理 阅读全文
posted @ 2016-12-20 12:01 fjhok 阅读(166) 评论(0) 推荐(0) 编辑
摘要:这次集训的状态很差,还要加强一下思维的锻炼,毕竟思维是决定比赛是否成功的关键,思维要包括思考方法时的发散性、思考正确性时的全面性思考、思维的简洁性,这些东西都要经过大量的思考,要坚信自己能够想出来,要不就没办法了。 A题:给出n张两面卡,然后求选最多张卡,使得没有数字同时存在于白面和黑面,并求方案。 阅读全文
posted @ 2016-12-20 11:09 fjhok 阅读(107) 评论(0) 推荐(0) 编辑
摘要:两个人轮流操作,一个人想要差最大,另外一个想最小,然后最简单的方法是f[l][r][k][flag]表示还剩[l,r]这个区间还没有选,只能选k和k+1,flag为0或1,时的最优值。 传统的这种表示方法状态量非常大,其他思路又感觉不明显,我该怎么办? 仔细观察,好像这样表示会很浪费空间,因为当fl 阅读全文
posted @ 2016-12-20 10:28 fjhok 阅读(109) 评论(0) 推荐(0) 编辑
摘要:给出一个数组,有m个操作,区间加值,问每次操作后最长单峰。 直接硬上数据结构好像异常复杂,常数也非常大,所以要用些脑子。 技巧:关于数组的题目都可以尝试想一下两两作差。 把这道题目进行两两作差操作过后,我们的操作就从区间操作转化为单点操作了,然后从维护最长单峰就转化为维护最长sgn单调下降序列了,问 阅读全文
posted @ 2016-12-20 10:15 fjhok 阅读(87) 评论(0) 推荐(0) 编辑
摘要:要看清楚题目,节点a控制节点b的要求是看u[b],这样的话就简单好多了。 阅读全文
posted @ 2016-12-20 10:08 fjhok 阅读(100) 评论(0) 推荐(0) 编辑
摘要:给出一棵树,求黑白染色满足题意的方案数。 最直接的想法:f[i][j][k]表示i子树,下面最远的没有染色的点距离为j,下面最近的有染色的点为k,的方案数。转移比较复杂,要求很高。 那么我们还有什么简单点的方法吗? 优化:如果你这棵子树之中有未被照顾的点,那么你的k也没必要记录了,因为你要别的子树的 阅读全文
posted @ 2016-12-20 10:05 fjhok 阅读(143) 评论(0) 推荐(0) 编辑
摘要:给出n对情侣以及他们的座位,给他们每人分0和1,情侣之间数字不能相同,顺时针不能有连续三个人有相同数字。 看起来好像很难入手,但是只是一个普通的二分图模型,有连边和求方案的问题都可以尝试思考一下二分图,给每一对情侣连边,关于xor1相邻的座位连边,然后可以证明图中不存在奇环,偶环的黑白染色可以满足题 阅读全文
posted @ 2016-12-20 09:53 fjhok 阅读(146) 评论(0) 推荐(0) 编辑
摘要:给出一棵树,问两棵不相交的子树的权和最大。 其实很简单,我没必要搞复杂。用普通的dfs,记录一个当前最大子树和t,然后每访问一棵新的树,把当前这棵子树的和加上t来更新答案,当访问完这棵子树的时候再用和来更新s,这样做的正确性在于任意两棵不相交的子树,他们肯定有一个先后的dfs序,那么这样的话先dfs 阅读全文
posted @ 2016-12-20 09:41 fjhok 阅读(97) 评论(0) 推荐(0) 编辑
摘要:两个操作,取一张红卡和一张黑卡,购买一个东西。问最少多少次操作能够买完所有东西。费用为max(r[i]-A,0)和max(b[i]-B,0)。 简单思路方向:dp,f[mask][i][j]表示,可是好像有点棘手。 技巧:反向模拟过程,假设现在已经买完东西了,枚举上一次买的是什么东西,以同样的方式就 阅读全文
posted @ 2016-12-20 09:26 fjhok 阅读(332) 评论(0) 推荐(0) 编辑