摘要: 非常套路的建图最短路。 首先有一个非常好思考的做法,对于 i,ji,ji,j,如果 iii 的集合和 jjj 的集合有交集,那么连 i↔ji \leftrightarrow ji↔j 的边。 但这样建图复杂度已经达到了 O(n2)O(n^2)O(n2) 以上,无法承受。 于是我们考虑转化。两个集合有 阅读全文
posted @ 2023-05-22 18:29 HappyBobb 阅读(14) 评论(0) 推荐(0)
摘要: 题意 有一张 nnn 个点,初始时没有边的无向图。 你要维护 qqq 次操作,每次操作可能是下面的其中一个: 添加一条 uuu 到 vvv 的边。 删除与 uuu 相连的所有边。 每次操作后,输出孤立点数量。 解法 发现添加只会添加一条边,而删除则可能删除许多。一条边如果被加入一次,那么最多只会被删 阅读全文
posted @ 2023-05-22 18:25 HappyBobb 阅读(10) 评论(0) 推荐(0)
摘要: 容易发现我们可以先对两个序列排序。 依次枚举 aia_iai​,那么另一个数应该 xxx 应该满足 x∈[ai−D,ai+D]x \in [a_i - D, a_i + D]x∈[ai​−D,ai​+D]。因此我们可以二分在这个区间的最大值 ppp,那么这个贡献就是 ai+pa_i+pai​+p,最 阅读全文
posted @ 2023-05-22 18:22 HappyBobb 阅读(26) 评论(0) 推荐(0)
摘要: 由于 n≤8n\leq 8n≤8,所以可以考虑 O(n!)O(n!)O(n!) 暴力枚举全排列,并且依次计算是否满足题意要求。 #include <iostream> #include <cstring> #include <algorithm> #include <cmath> #include 阅读全文
posted @ 2023-05-22 18:18 HappyBobb 阅读(8) 评论(0) 推荐(0)