摘要: 题解: 显然可以利用条件构成一颗树 不错的一道dp题 f[i][j]表示i点,在子树中排名j 那么转移方程不是特别难得出 其中那个可以用前缀和后缀和优化,即下面代码里的sp数组 枚举第x个位置上它排名为i,然后左儿子有ai个在x之前 之后将分界线两边排列组合一下就可以了 再乘以两边f[x'][i]满 阅读全文
posted @ 2018-02-21 21:59 尹吴潇 阅读(298) 评论(0) 推荐(0) 编辑
摘要: 题解: 裸的主席树吧 要想避免带修主席树的话先排序一下吧 阅读全文
posted @ 2018-02-21 15:59 尹吴潇 阅读(139) 评论(0) 推荐(0) 编辑
摘要: 题解: 好像有题解说可以贪心。。 显然这是一棵树,考虑树形dp 维护f[i][j]从点i往下走j再回来经过的最多点,g[i][j]从点i往下走j不用回来经过的最多点 转移方程还是挺显然的,枚举的时候像背包一下从大道小枚举 时间复杂度大概是n3的吧 阅读全文
posted @ 2018-02-21 15:34 尹吴潇 阅读(94) 评论(0) 推荐(0) 编辑
摘要: 题解: 首先,按照原树,构建出一个全部都是虚边的LCTLCT ,并用树剖维护每个点到根节点的路径权值valval。可以发现,每个点到根节点的路径权值就是每个点到根节点的路径上实链的个数。 我们发现,操作11 实际上就是LCTLCT 中AccessAccess 的操作。在AccessAccess 的操 阅读全文
posted @ 2018-02-21 10:50 尹吴潇 阅读(118) 评论(0) 推荐(0) 编辑