摘要: 新的开始。阅读全文
posted @ 2017-09-16 16:44 AKCqhzdy 阅读(113) 评论(0) 编辑
摘要: 感觉跟中位数那题很像啊,不过简单一点还是不会 大力分治,那么要求的就是左端点在左区间,右端点在右区间的满足是一个连续排列的数量 对于一个连续的排列(设i是左端点j是右端点),有max-min+1=j-i+1 那么分情况讨论 枚举其中一个端点,若max,min都在这一边,那么可以计算另一端的端点 否则阅读全文
posted @ 2018-10-19 08:08 AKCqhzdy 阅读(2) 评论(0) 编辑
摘要: 首先画下柿子 x^(2x+x)=2x 假如x能够把括号里的x消掉,那么2x+x是不能在进位的,而2x是x<<1啊,所以满足条件的x没有相邻两位同时是1 遂数位DP解决,对于第二个问矩乘加速 第n次1LL<<i没打LL见祖宗阅读全文
posted @ 2018-10-18 15:32 AKCqhzdy 阅读(4) 评论(0) 编辑
摘要: 之前GDOI的时候了解过,随机数据的用途就是在其中找一段单调上升/下降的子序列期望长度为logn 然而这道题还是不懂怎么用的说。。 首先考虑对于i<j<k,若ci>cj>ck则对于k来说i是无用的。 也就是说对于当前点k,我们需要找到一个后往前单调下降的子序列并且这些数都比c[k]大 对于比c[k]阅读全文
posted @ 2018-10-18 10:56 AKCqhzdy 阅读(3) 评论(0) 编辑
摘要: 树背包 设f[i][j]表示第i个点,和子节点组成的联通块大小为j,其他都可行的方案 j=0表示可行的总方案阅读全文
posted @ 2018-10-17 19:28 AKCqhzdy 阅读(5) 评论(0) 编辑
摘要: 写一发暴力求五维偏序 其实道理也简单,就是对于每个维记录那些点比当前点小,最后每个维and一下就好 bitset优化下阅读全文
posted @ 2018-10-15 10:09 AKCqhzdy 阅读(6) 评论(0) 编辑
摘要: 本来以为是求LIS,结果发现这样的话就变成随便插入了。。。 不过通过这个可以推出正确的思路,就是LIS中还要满足相邻两项(ai)+1==(ai+1)阅读全文
posted @ 2018-10-10 19:56 AKCqhzdy 阅读(4) 评论(0) 编辑
摘要: 垃圾选手练dp 考虑对于一个数,能够把它表示出来也一定可以把它某些1的位变成0变成的数表示出来 那么用大的数更新小的,容易想到每次都把这个大的数的1个1的位变成0 但是这样还是会有重复的情况 比如10010被10110和11010更新,但是这两个数都会被11110更新到 那么DP再加一维,f[i][阅读全文
posted @ 2018-10-10 19:23 AKCqhzdy 阅读(7) 评论(0) 编辑
摘要: 刚说完五级算法题水就被亮老师D飞 这道题其实我理解错了很多次题意。。。(一直理解成v2囧) 考虑DP,一位表示拼成什么数字跑不掉了,但是一位搞不定,考虑加一维 拼出n最大的数?好像空间不太资瓷 考虑避实就虚,开一维表示用了多少不同的数字拼出n 总的就是f[i][j]表示用i个数字拼出了j 考虑如何转阅读全文
posted @ 2018-10-10 15:43 AKCqhzdy 阅读(8) 评论(0) 编辑
摘要: 曾系尴尬今天发现自己没写这题 不建新边的话其实每条边都是走两次 假如建一条新边相当于一条树上路径只用走一次 那么当然选直径了 但是建两条的话有可能树上路径有重叠部分,而每条边都需要经过,那么就会多减两次 所以第一次选完以后把直径上的边变负容斥下 恶心的是树上边权有负的时候是不能用两次dfs的方法找直阅读全文
posted @ 2018-10-09 16:27 AKCqhzdy 阅读(3) 评论(0) 编辑
摘要: 好像又是神仙dp。。。。gan了一早上 首先这是个计数类问题,上DP, 对于一个最小生成树,按照kruskal是一个个联通块,枚举边小到大合成的 假如当前边是树边,那么转移应该还是枚举两个块然后合并 假如不是树边那么就在所有联通块所有非树边中任选一条 两个相邻树边之间的非树边方案应该是P(所有联通块阅读全文
posted @ 2018-10-08 11:57 AKCqhzdy 阅读(7) 评论(0) 编辑