专栏文章

题解:AT_abc429_d [ABC429D] On AtCoder Conference

AT_abc429_d题解参与者 1已保存评论 0

文章操作

快速查看文章及其快照的属性,并进行相关操作。

当前评论
0 条
当前快照
1 份
快照标识符
@min6muve
此快照首次捕获于
2025/12/01 21:25
3 个月前
此快照最后确认于
2025/12/01 21:25
3 个月前
查看原文

题目大意

有一环,长为 MM,有 NN 个人,第 ii 个人位于 AiA_i。给了个 C(CN)C(C\le N)。这个环的坐标范围为 0M10\sim M-1
定义 XiX_i 为:从 (i+0.5)(i+0.5) 开始移动,遇到的人数达到或超过 CC 时遇到的人数。如果在结束的位置有多个人,那么这些人亦计入 XiX_i
i=0M1Xi\sum_{i=0}^{M-1} X_i

思路

M1012M\le 10^{12}。显然,真的照它题意求和,时间占用飞起。
注意到,任意的一对在 [Ai,Ai+1][A_i,A_{i+1}] 范围内的整数 i,ji,j,都满足 Xi=XjX_i=X_j。用这个性质来做。答案乘上区间之间的长度。
但它是个环。
因此需要做环上的特殊处理,比如 [An,M1][0,A11][A_n,M-1]\cap[0,A_1-1] 这段区间需要格外处理。
再考虑怎么求,设现在位于 xx,进行分类讨论:
  1. 如果 [x,M1][x,M-1] 区间的人数小于 CC,还要加上另一端的。
  2. 否则直接做。
那么求终止位置只需要二分即可。

评论

0 条评论,欢迎与作者交流。

正在加载评论...