B.Box and Ball
模拟,第 k k k步中每个盒子球的数目是一定的,维护 a i = 1 / 0 a_i=1/0 ai=1/0表示当前第 i i i个位置是否可能存在黑球。若 a x i = 1 a_{x_i}=1 axi=1,则 b x i = 1 b_{x_i}=1 bxi=1,若 x i x_i xi此时只有一个球,则需要将 a x i a_{x_i} axi重新设为 0 0 0。
C.Knot Puzzle
贪心找到一段只剩一个绳结且相邻两端长度之和 ≥ L \geq L ≥L的段,向外解开倒着输出即可。
D.Stamp Rally
整体二分+启发式合并维护可撤回的并查集。
E.Candy Piles
把堆按糖果数目降序排序,看做二维平面上的列,第 i i i列有 a i a_i ai个格子。从左下角的格子出发,每次向上/右走一格,走到一个上面和右边都没有格子的地方就输了。
按博弈论的
N
/
P
N/P
N/P状态可以推出每一条斜线上的结果相同,如图:
图片来源-yww
直接找到 ( 0 , 0 ) (0,0) (0,0)对应的是哪个点 ( i , i ) (i,i) (i,i),算出这个点到上方和右方轮廓的距离,只要有一个是偶数,就先手必胜。
F.Leftmost balls
显然任意前缀中白球数目
≥
\geq
≥其它颜色数
从前向后
d
p
dp
dp,
d
p
i
,
j
dp_{i,j}
dpi,j表示出现
i
i
i个白球
j
j
j种其它颜色的球的方案,转移:
d
p
i
,
j
=
d
p
i
−
1
,
j
+
d
p
i
,
j
−
1
×
(
n
−
i
+
(
k
−
1
)
(
n
−
j
+
1
)
−
1
k
−
2
)
×
(
n
−
j
+
1
)
dp_{i,j}=dp_{i-1,j}+dp_{i,j-1}\times\dbinom{n-i+(k-1)(n-j+1)-1}{k-2}\times (n-j+1)
dpi,j=dpi−1,j+dpi,j−1×(k−2n−i+(k−1)(n−j+1)−1)×(n−j+1)