摘要: 一、题目 点此看题 二、解法 首先拆限制,看似他给的是区间相等,其实是若干组单点相等。 那么把单点的限制用并查集连起来,我们只需要关系联通块个数即可。 问题转化为了每次给两个区间,要求区间对应位连边。线段树优化建图做不了,但是 \(st\) 表可以,设 \(fa[i][j]\) 表示以 \(i\) 阅读全文
posted @ 2021-07-15 22:21 C202044zxy 阅读(42) 评论(0) 推荐(0) 编辑
摘要: 一、题目 点此看题 二、解法 最后形成的强联通分量肯定是一个环,每个点的出度一直为 \(1\),那么我们只要让入度也都为 \(1\) 即可。 每个点保留权值最大的入边,其他入边贪心断开即可。 但是这样还有问题,操作过后可能会形成若干个环,我们要把这些小环接成一个大环。那么一个环上至少满足一个点他断开 阅读全文
posted @ 2021-07-15 21:45 C202044zxy 阅读(417) 评论(0) 推荐(0) 编辑
摘要: 一、题目 题目描述 有 \(n\) 个点排成一列,相邻两个点之间连边,\(i\) 到 \(i+1\) 的双向边代价是 \(a_i\),转向的代价是 \(a_0\),现在我们想选出 \(m\) 个点,可以构成若干个回路,每个点最多被选一次,起点也算一次转向,试最大化代价。 比如选出的点是 1,3,2, 阅读全文
posted @ 2021-07-15 20:46 C202044zxy 阅读(758) 评论(5) 推荐(1) 编辑
摘要: 一、题目 点此看题 二、解法 把时间点排序,考虑每个时间段在什么条件下才会贡献,可以分成 \(4\) 种情况讨论(\(i\) 表示排序后这个点的人): \(i\) 进 \(i+1\) 出,什么情况下都可以贡献。 \(i\) 进 \(i+1\) 进,当且仅当 \(i+1\) 有钥匙才能开门,\(i\) 阅读全文
posted @ 2021-07-15 11:17 C202044zxy 阅读(362) 评论(0) 推荐(0) 编辑