test20190906

卡空间是真的毒瘤.

$kanade$

设那两个数为 $x,y$ .将所有数都异或起来,记得到的结果是 $z=x\mbox{ xor } y$ .

$z\not= 0$ ,所以可以找出 $z$ 二进制上为 $1$ 的某一位.

将所有数分成两组,这一位上为 $0$ 的分在一组,这一位上为 $1$ 的分在另一组,那么 $x,y$ 就被分到了不同的组.

将某一组内的数全部异或起来,就得到了 $x,y$ 其中的一个,继而可以求出另一个.

$sakura$

设 $f(i)$ 表示将节点 $i$ 放上樱花所需要的樱花数目.

在 $dfs$ 时,显然将子节点按照 $f(i)-a(i)$ 从大到小排序,依次放就可以了.

$chtolly$

设 $f_i$ 表示当前在位置 $i$ ,走到终点的期望时间,则答案为 $f_0$ .

有 $f_0=f_1+1,f_1=f_1$ ,而方程都是线性的,所以可以将所有 $f_i$ 都表示成 $f_i=kf_1+b$ 的形式.

前两项的表达形式已知,一直往后递推,可以得到 $f_{n+1}=1$ 的表示形式,解出 $f_1$ ,也就得到了 $f_0$ .