摘要: 链接 思路借鉴了这个博客: 我们可以想到状压dp 用一个十进制数来表示状态,即第i位表示位置i处的物品等级 用f[i][j][k]表示第i天,仓库的物品等级为j,状态为k时的最大收益 但是状态数貌似很多,开不下,同时上面的式子好像不太好转移 我们可以预处理出所有的合法状态,即无法消除的状态,然后在预阅读全文
posted @ 2018-10-12 16:49 logeadd 阅读(5) 评论(0) 编辑
摘要: 题目链接 考试考了一道类似的题目,然后不争气的挂掉了,于是跑过来学习这道题的解法... 我还是太菜了.... 我们可以发现任意时刻,原树中颜色相同的点的集合一定是一条链, 即上面这种状态,而这种结构是不是跟某种毒瘤数据结构很想,没错,就是LCT 我们发现LCT中的每一颗splay对应着每一段颜色的链阅读全文
posted @ 2018-10-09 21:48 logeadd 阅读(9) 评论(0) 编辑
摘要: LOJ上有全套的模板 题号为115,116,117。 先贴个板子,到时候再填坑 无源无汇可行流 有原有汇最大流 有源有汇最小流阅读全文
posted @ 2018-09-27 21:59 logeadd 阅读(7) 评论(0) 编辑
摘要: 题目链接 一道神仙题,有很多思考的方式,这里选择最好理解的一种来讲 我们将序列分为两种,一种开头递增,一种开头递减,显然这两种序列的数目是一样的 现在我们只用考虑开头递增的情况 f[i][j]表示前i个数,最后一个数字在前i个数的排名在1~j之间的方案数 显然有f[i][j]=f[i][j-1],如阅读全文
posted @ 2018-09-26 22:04 logeadd 阅读(8) 评论(0) 编辑
摘要: 老师居然考这么毒瘤的题目!!!!! 很容易想到dp,f[i][j]表示有i个节点,左子树的最深深度为j的方案数 枚举左子树有多少节点然后转移,复杂度为n^3 T飞~ 我们考虑到有深度为h的树的节点有多少,可以发现深度为h的节点有着一定的范围 设minn为深度为h的树最少有多少节点,maxh为深度为h阅读全文
posted @ 2018-09-18 21:41 logeadd 阅读(19) 评论(0) 编辑
摘要: 链接 用f[i][j]表示乘积为i的,包含的最大数小于等于j时的方案总数 我们先考虑所用的数为1到n的情况 最后的答案就是f[n][n]-1 转移时考虑f[i][j]可以转移到的状态 显然f[i][j]可以转移到f[i*k][k](k>j),可以转移到f[i][k](k>j) 我们在考虑,可以发现只阅读全文
posted @ 2018-09-12 19:31 logeadd 阅读(16) 评论(0) 编辑
摘要: 链接 很容易想到状压,f[i][s]表示前i个选择的箱子集合为s的最大期望 果断wa了,因为有一些不合法的状态,譬如f[1][1111001]这样的状态 这样的状态不好排除,所以改用倒推 用f[i][s]表示i-1的选择集合为s的,i到k的最大期望 转移时枚举i处的选择,如果可以选该箱子,则为f[i阅读全文
posted @ 2018-09-10 19:47 logeadd 阅读(15) 评论(0) 编辑
摘要: 一道思维神题.... 我们像网络流一样加入原点S,与汇点T 用f[i]表示原点到i的最长路,用g[i]表示i到汇点的最长路 f数组与g数组都可以dp求出来的 接下来考虑如何通过这些信息来维护删除某个点的最长路 用拓扑序来删点 我们先将所有g数组加入一个集合中, 每次删点是就先将所有该点的入边的点的f阅读全文
posted @ 2018-09-07 18:58 logeadd 阅读(25) 评论(0) 编辑
摘要: 链接 我太菜了,连贪心题都不会写。。。 贪心思路很简单,我们能满足顾客就满足他,如果满足不了,就看之前的顾客中 有没有需求比该顾客多的顾客,如果有的话改为卖给这位顾客会使解更优 所以我们用一个优先队列维护一下所有卖的顾客,然后每此判断一下就好了阅读全文
posted @ 2018-09-06 19:46 logeadd 阅读(15) 评论(0) 编辑
摘要: 李超树是个什么东西呢? 其实就是一棵线段树。。。。 我们来看这一道题 其实就是这样一道题目 在二维空间中插入一条直线,询问x=k的地方最上面一条直线的编号 李超树储存的是区间[l,r]中'最优线段', 最优线段,就是[l,r]中最暴露最长的线段 可以发现在k处的答案就是 所有包含此区间的最优线段中的阅读全文
posted @ 2018-09-04 20:18 logeadd 阅读(34) 评论(0) 编辑