摘要: 题意 见原题 题解 重链剖分模板题 cpp include include using std::swap; typedef long long ll; const int N = 1e5 + 10; int n, m, c[N], opt, x, y; int dep[N], siz[N], fa 阅读全文
posted @ 2018-10-21 18:26 water_mi 阅读(203) 评论(0) 推荐(0) 编辑
摘要: 题意 原文很清楚了 题解 重链剖分模板题,用线段树维护即可。 cpp include include include using std::max; using std::swap; const int N = 3e4 + 10, Inf = 1e9 + 7; int n, q, c[N], x, 阅读全文
posted @ 2018-10-21 18:24 water_mi 阅读(191) 评论(0) 推荐(0) 编辑
摘要: 题意 给定$n$个软件包,每个软件包都有一个依赖软件包,安装一个软件包必须安装他的依赖软件包,卸载一个软件包必须先卸载所有依赖于它的软件包。给定$m$此操作,每次一个操作$install/unistall$表示安装或者卸载。 题解 可以通过简单画图看出,在这个树形结构的依赖层次图上,安装一个包相当于 阅读全文
posted @ 2018-10-21 18:19 water_mi 阅读(184) 评论(0) 推荐(0) 编辑