ARC149D Simultaneous Sugoroku
有 N 个数 Xi 和 M 个数 Di,对每个 Xi 询问依次对 j=1→n 执行:如果 Xi>0 就 −Dj,如果 Xi<0 就 +Dj,Xi=0 啥都不做。问每个 Xi 最后能否变成 0,如果能问当 j 为何值时,否则问最后的值。N,M≤300000,Xi,Di≤1000000。
CODE
模拟加裸并查集。X 值小,可以维护 [−1000000,−1] 和 [1,1000000] 两个区间。对于每个 Di 就是把两个区间移移,重叠的用并查集合起来,如果有等于 0 的记录一下,并从 0 处断开。
最后对于 N 个询问看看 Xi 在并查集上的祖先最后怎么样了即可,时间复杂度 Θ(n⋅α(n))。
中间有一些人投稿
所以包含了一些投稿用户名
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 提示词工程——AI应用必不可少的技术
· .NET周刊【3月第1期 2025-03-02】