
atcoder刷题报告
文章平均质量分 68
长青道人
大三在读
展开
-
AtCoder Beginner Contest 336
观察到,最后答案一定是以某个元素为中心向两侧扩展。所以我们预处理两个数组分别为L,R。L数组定义:以元素i为中心最长可以向左扩展多少,L[0] = 0R数组定义:以元素i为中心最长可以向右扩展多少,R[n+1] = 0。原创 2025-02-04 16:41:45 · 244 阅读 · 0 评论 -
AtCoder Beginner Contest 335 (Sponsored by Mynavi)
考虑动态规划,设dp[v]为从节点1到节点v的最长非递减路径。上述的转移,是假设仅有vis[u]<vis[v]的情况下进行的。但是由于存在相等的情况会导致以上转移方程不适用。所以我们考虑使用并查集维护vis[u] == vis[v]的边,也就是说相等的边并不进行存储,仅对vis[u]<vis[v]的边存储。例如:vis[1]<vis[2]=vis[3]=vis[4]<vis[5]。此时就可以正常转移了。原创 2025-02-03 10:03:04 · 297 阅读 · 0 评论