考虑对于一颗子树,找到当前子树内 Bob 可以到达的编号最小的符文,然后考虑子树根走到该符文的路径,我们找到路径上一个节点 p,满足 p∤2,使得 wp−sumwp×2+1 的值为所有合法的点中最小的,其中 sumwi 表示在子树
i 中,在之前的决策中已经唤醒的守卫的 w 之和。考虑唤醒节点 p 处的守卫,并使以 p×2+1 为根的子树内所有被唤醒的守卫沉睡。同时使 k=k−wp+sumwp×2+1
我们不停执行上述操作直到某时刻 k<wp−sumwp×2+1 或找不到合法的点 p。
然后 Bob 会走到我们上述决策失败的符文位置,之后含顺序递归处理他之后到达的子树。
本人找不到该解法的问题,但是过不了大样例,求较小的 hack 数据。
/bx/bx/bx