September Challenge 2020

挑几道题讲讲

Chefina and Swap

由于我比较傻,所以列了个暴力的式子:\(Ans=\sum\limits_{i=1}^n\sum\limits_{j=1}^{i}\sum\limits_{k=i+1}^n [k-j={n+1\choose 2}-{i+1\choose 2}]\)
然后化简后能得到三个单调的区间,然后二分,加上自然数二次幂、三次幂求和。\(O(logn)\)

被官方题解吊着打
对于存在\(i\)使得\({i+1\choose 2}=sum/2(sum~is~even)\)很简单
否则对于唯一的\(i\)\({i+1\choose 2}\)较小,\({i+2\choose 2}较大\),使得交换\([1,i]\)\([i+1,n]\)内的才能合法

Divide Candies

我瞎写了个乱搞硬艹过去了code

被官方题解吊着打
对于\(N=1~or~N\equiv 2(mod~4)\)答案是只能是奇数
结论1\(对于K=M\)\(x^K,(x+1)^K,(x+2)^K,\cdots,(x+2^{K+1}-1)^K\),一定存在最小差\(0\)

\(K\)施归纳,令对于\(M=0\)显然成立
\(\begin{aligned}Sum(B) - Sum(A) &= - \sum_{i = x}^{x + 2^{M + 1} - 1} i^M * (-1)^{bits(i)} \\ &= \sum_{i = x}^{x + 2^M - 1} ((i + 2^M)^M - i^M) * (-1)^{bits(i)} \\ &= \sum_{i = x}^{x + 2^M - 1} (\sum_{j = 0}^{M - 1} i^j \binom{M}{j} (2^M)^{M - j})* (-1)^{bits(i)} \\ &= \sum_{j = 0}^{M - 1} \binom{M}{j} (2^M)^{M - j} \sum_{i = x}^{x + 2^M - 1} i^j * (-1)^{bits(i)}\end{aligned}\)

打表可以发现,\(2^{K+1}\le N<2^{K+2}\)时是对的,\(N>2^{K+2}\)的情况可以反复删掉末尾\(2^{K+1}\)
可以对\(N<2^{K+2}\)写个布尔型背包,用bitset优化

posted @ 2020-09-15 22:04  Grice  阅读(137)  评论(0编辑  收藏  举报