CF1498F.Christmas Game

省选/NOI-

通过率:0%

时间限制:2.00s

内存限制:256MB

AC君温馨提醒

该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

Alice and Bob are going to celebrate Christmas by playing a game with a tree of presents. The tree has nn nodes (numbered 11 to nn, with some node rr as its root). There are aia_i presents are hanging from the ii-th node.

Before beginning the game, a special integer kk is chosen. The game proceeds as follows:

  • Alice begins the game, with moves alternating each turn;
  • in any move, the current player may choose some node (for example, ii) which has depth at least kk. Then, the player picks some positive number of presents hanging from that node, let's call it mm (1≤m≤ai)(1 \le m \le a_i);
  • the player then places these mm presents on the kk-th ancestor (let's call it jj) of the ii-th node (the kk-th ancestor of vertex ii is a vertex jj such that ii is a descendant of jj, and the difference between the depth of jj and the depth of ii is exactly kk). Now, the number of presents of the ii-th node (ai)(a_i) is decreased by mm, and, correspondingly, aja_j is increased by mm;
  • Alice and Bob both play optimally. The player unable to make a move loses the game.

For each possible root of the tree, find who among Alice or Bob wins the game.

Note: The depth of a node ii in a tree with root rr is defined as the number of edges on the simple path from node rr to node ii. The depth of root rr itself is zero.

爱丽丝和鲍勃将通过在一棵礼物树上玩游戏来庆祝圣诞节。这棵树有 nn 个节点(编号为 11 到 nn,其中某个节点 rr 作为根节点)。第 ii 个节点上悬挂着 aia_i 件礼物。

游戏开始前,先选定一个特殊的整数 kk。游戏规则如下:

  • 爱丽丝先手,之后双方轮流进行操作;
  • 在每次操作中,当前玩家可选择一个深度至少为 kk 的节点(例如节点 ii),然后从中取走若干件礼物(设为 mm 件,满足 1≤m≤ai1 \le m \le a_i);
  • 接着,该玩家将这 mm 件礼物移动到节点 ii 的第 kk 级祖先节点(记为 jj)上(节点 ii 的第 kk 级祖先 jj 是指:ii 是 jj 的后代,且 jj 与 ii 的深度之差恰好为 kk)。此时,节点 ii 上的礼物数 aia_i 减少 mm,而节点 jj 上的礼物数 aja_j 增加 mm;
  • 爱丽丝与鲍勃均以最优策略进行游戏。无法进行合法操作的一方判负。

对树的每一种可能的根节点(即对每个 r=1,2,…,nr = 1, 2, \dots, n),判断爱丽丝与鲍勃中谁获胜。

注:在以 rr 为根的树中,节点 ii 的深度定义为从根节点 rr 到节点 ii 的简单路径上的边数;根节点 rr 自身的深度为 00。

输入格式

The first line contains two space-separated integers nn and kk (3≤n≤105,1≤k≤20)(3 \le n \le 10^5, 1 \le k \le 20).

The next n−1n-1 lines each contain two integers xx and yy (1≤x,y≤n,x≠y)(1 \le x, y \le n, x \neq y), denoting an undirected edge between the two nodes xx and yy. These edges form a tree of nn nodes.

The next line contains nn space-separated integers denoting the array aa (0≤ai≤109)(0 \le a_i \le 10^9).

第一行包含两个以空格分隔的整数 nn 和 kk (3≤n≤105,1≤k≤20)(3 \le n \le 10^5, 1 \le k \le 20)。

接下来的 n−1n-1 行每行包含两个整数 xx 和 yy (1≤x,y≤n,x≠y)(1 \le x, y \le n, x \neq y),表示节点 xx 与节点 yy 之间的一条无向边。这些边构成一棵含 nn 个节点的树。

下一行包含 nn 个以空格分隔的整数,表示数组 aa (0≤ai≤109)(0 \le a_i \le 10^9)。

输出格式

Output nn integers, where the ii-th integer is 11 if Alice wins the game when the tree is rooted at node ii, or 00 otherwise.

输出 nn 个整数,其中第 ii 个整数为 11 表示当树以节点 ii 为根时 Alice 获胜,否则为 00。

输入输出样例

  • 输入#1

    5 1
    1 2
    1 3
    5 2
    4 3
    0 3 2 4 4

    输出#1

    1 0 0 1 1

说明/提示

Let us calculate the answer for sample input with root node as 1 and as 2.

Root node 1

Alice always wins in this case. One possible gameplay between Alice and Bob is:

  • Alice moves one present from node 4 to node 3.
  • Bob moves four presents from node 5 to node 2.
  • Alice moves four presents from node 2 to node 1.
  • Bob moves three presents from node 2 to node 1.
  • Alice moves three presents from node 3 to node 1.
  • Bob moves three presents from node 4 to node 3.
  • Alice moves three presents from node 3 to node 1.

Bob is now unable to make a move and hence loses.

Root node 2

Bob always wins in this case. One such gameplay is:

  • Alice moves four presents from node 4 to node 3.
  • Bob moves four presents from node 5 to node 2.
  • Alice moves six presents from node 3 to node 1.
  • Bob moves six presents from node 1 to node 2.

Alice is now unable to make a move and hence loses.

我们来计算样例输入中以节点 1 和节点 2 分别为根节点时的答案。

根节点为 1

此时 Alice 总是获胜。Alice 与 Bob 之间的一种可能对局如下:

  • Alice 将 1 个礼物从节点 4 移动到节点 3。
  • Bob 将 4 个礼物从节点 5 移动到节点 2。
  • Alice 将 4 个礼物从节点 2 移动到节点 1。
  • Bob 将 3 个礼物从节点 2 移动到节点 1。
  • Alice 将 3 个礼物从节点 3 移动到节点 1。
  • Bob 将 3 个礼物从节点 4 移动到节点 3。
  • Alice 将 3 个礼物从节点 3 移动到节点 1。

此时 Bob 无法进行任何操作,因此失败。

根节点为 2

此时 Bob 总是获胜。其中一种可能对局如下:

  • Alice 将 4 个礼物从节点 4 移动到节点 3。
  • Bob 将 4 个礼物从节点 5 移动到节点 2。
  • Alice 将 6 个礼物从节点 3 移动到节点 1。
  • Bob 将 6 个礼物从节点 1 移动到节点 2。

此时 Alice 无法进行任何操作,因此失败。

输入解题思路,AI测评打分。不知道怎么写?

首页