上一页 1 ··· 4 5 6 7 8 9 10 11 12 ··· 17 下一页
摘要: 求最大值,看二分答案,但是非常困难,看贪心,发现很难贪。考虑dp,找一个没有后效性的来设计状态,发现如果状态是前缀gcd的话就比较好,没有后效性。转移的话就是从大的向小的转移,那么转移方程就是\(dp[i]=max(dp[i],dp[i*j]+cnt[i]-cnt[i*j])\) cnt[i]为i的 阅读全文
posted @ 2024-07-19 20:30 wuhupai 阅读(8) 评论(0) 推荐(0) 编辑
摘要: 首先这个半连通子图一定是由许多强连通子图组成的,那么我们可以进行缩点,然后求有多少条最长链即可。 其实这题一开始我是完全没思路的,但是我觉得在遇到新的问题时要考虑转化,找一个自己类似的学过的东西,在考虑其中的联系和如何转化 阅读全文
posted @ 2024-07-19 20:13 wuhupai 阅读(3) 评论(0) 推荐(0) 编辑
摘要: 首先建出这个图,如果有一些间谍之间可以互相到达,那么贿赂这些间谍的花费即为所有间谍的花费的最小值,那么我们可以缩点,然后用拓扑dp求出答案,如果有入度为0的点不能贿赂,那么就是-1,否则就是所有点的权值之和 阅读全文
posted @ 2024-07-19 20:07 wuhupai 阅读(3) 评论(0) 推荐(0) 编辑
摘要: 求的是s,t路径之间必须经过的点,想到建一颗圆方树,路径上的一个圆点就是答案 阅读全文
posted @ 2024-07-19 19:51 wuhupai 阅读(4) 评论(0) 推荐(0) 编辑
摘要: 所有他的旅行路径中最低售价的最低可能值。那我们可以想到建立一颗圆方树,那在圆方树上就是所有路径上圆点和方点(权值为周围圆点)的最小值。然后发现在更新圆点权值的时候,无法快速更新方点的权值(会被菊花图卡掉)。所以xuzishuai给出了一种方法:就是所有圆点更新时,都只更新它的父亲,这样分讨一下易证, 阅读全文
posted @ 2024-07-19 19:48 wuhupai 阅读(4) 评论(0) 推荐(0) 编辑
摘要: 对于一个拓扑图,可以建反图。首先考虑连边,从a到b的代表val[a]<val[b]。那么DAG上每条链上的时间都递减。同时因为拓扑的性质,时间的要求是可以保证的。从入度为0的结点开始考虑贪心,让限制紧的人先飞,所以我们可以将队列换成优先队列,这样就可以满足这个性质了,因为题目保证有解。然后想让一个飞 阅读全文
posted @ 2024-07-19 19:03 wuhupai 阅读(7) 评论(0) 推荐(0) 编辑
摘要: 最简单的就是枚举两个根,然后进行树哈希。树哈希有且仅与子树的形态有关,如子树的哈希值之和。但是找根的这个实在太慢了。我们可以利用树的重心来进行求解。先求出树的重心,再两两枚举即可时间复杂度O(n) 阅读全文
posted @ 2024-07-19 16:49 wuhupai 阅读(4) 评论(0) 推荐(0) 编辑
摘要: 这题的题意比较简单。我们可以枚举不同的字符的位置,然后利用字符串哈希进行判断,因为所有不存在两个相同的账户名称,所以这个不会算重。 阅读全文
posted @ 2024-07-19 15:34 wuhupai 阅读(3) 评论(0) 推荐(0) 编辑
摘要: 仔细观察题目可以发现,对于那些停靠的车站是没有约束的,而对于停靠的车站是有约束的。因为题目保证了存在方案,那么车站最多分级就是DAG上的最长链。 阅读全文
posted @ 2024-07-19 14:47 wuhupai 阅读(4) 评论(0) 推荐(0) 编辑
摘要: 看到平方,要想到进行质因数分解,然后看指数。所以我们可以对每个数进行质因数分解,然后指数取模后求出它的反,那么这个就只可以从它的反转移过来了。然后就是一个拓扑求DAG最长路。 阅读全文
posted @ 2024-07-19 14:42 wuhupai 阅读(4) 评论(0) 推荐(0) 编辑
上一页 1 ··· 4 5 6 7 8 9 10 11 12 ··· 17 下一页