摘要:
嘟嘟嘟 题目大意:n个人排队,每一个人有一个pos和一个val,表示这个人要插到第pos这个位置,pos以及pos之后的人就都往后挪一位,最后输出整个序列的val。 后面的人可能会对前面的人造成影响,因此可以想到离线逆序插入。然后用线段树维护当前区间的空位数量,那么每一个人的pos就变成了要插入第p 阅读全文
摘要:
嘟嘟嘟 这道题正解是怎么对的其实我也不清楚,总之靠感性理解吧。 首先当然要把1到n / 2的素数都筛出来,因为两两能配对的数一定都是这些素数的倍数。这也就说明对于(n / 2, n]的素数,他们一定不能配对,所以就不用筛他们了。 筛完后我们考虑怎么配对,对于一个素数的所有倍数xi,他们任意两个都可以 阅读全文
摘要:
嘟嘟嘟 题面就是说,解方程 a + c * x Ξ b (mod 2k) 然后变个型:a + c * x - 2k * y = b - a。用exgcd求解即可。 刚开始我以为b - a还要正负讨论,但其实不用,因为正负数取摸结果不一样。 然后我调了半天是因为当a = b = c = k = 0的时 阅读全文
摘要:
嘟嘟嘟 我一眼就知道是exgcd,但是还是想的不太周全。 应该分两种情况:1.a在左边,b在右边。那么得出方程ax - by = d。然后就是正常的exgcd求解了: 解得ax + by = (a, b)的解x', y'。 算出ax + by = d的解x = x' * d / (a, b) 算出x 阅读全文