AT_agc034_e.[AGC034E] Complete Compress

NOI/NOI+/CTSC

通过率:0%

AC君温馨提醒

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

题目描述

给定一棵有 NN 个顶点的树,顶点编号为 1,2,…,N1, 2, \ldots, N。第 ii 条边连接顶点 aia_i 和顶点 bib_i。另外,给定一个长度为 NN 只包含 0 和 1 的字符串 SS,SS 的第 ii 个字符表示在顶点 ii 上放置的棋子数量。

すぬけ君可以进行如下操作任意次:

  • 选择距离至少为 22 的两个棋子,将它们各自向对方靠近一步。具体来说,选择放有棋子的顶点 uu 和 vv,考虑 uu 到 vv 的最短路径,要求该路径的边数至少为 22。然后,将 uu 上的一个棋子移动到与 uu 相邻的顶点,将 vv 上的一个棋子移动到与 vv 相邻的顶点。

すぬけ君希望通过若干次操作,将所有棋子集中到同一个顶点。请判断是否可能做到。如果可能,请输出所需的最小操作次数。

输入格式

输入通过标准输入给出,格式如下:

NN

SS

a1a_1 b1b_1

a2a_2 b2b_2

…\ldots

aN−1a_{N-1} bN−1b_{N-1}

输出格式

如果无法将所有棋子集中到同一个顶点,输出 -1;如果可以,输出所需的最小操作次数。

输入输出样例

  • 输入#1

    7
    0010101
    1 2
    2 3
    1 4
    4 5
    1 6
    6 7

    输出#1

    3
  • 输入#2

    7
    0010110
    1 2
    2 3
    1 4
    4 5
    1 6
    6 7

    输出#2

    -1
  • 输入#3

    2
    01
    1 2

    输出#3

    0

说明/提示

限制条件

  • 2≤N≤20002 \leq N \leq 2000。
  • ∣S∣=N|S| = N。
  • SS 只包含 0 和 1,且至少有一个字符为 1。
  • 1≤ai,bi≤N1 \leq a_i, b_i \leq N,且 ai≠bia_i \neq b_i。
  • 边 (a1,b1),(a2,b2),…,(aN−1,bN−1)(a_1, b_1), (a_2, b_2), \ldots, (a_{N-1}, b_{N-1}) 构成一棵树。

样例说明 1

  • 选择顶点 3,53, 5 上的棋子。
  • 选择顶点 2,72, 7 上的棋子。
  • 选择顶点 4,64, 6 上的棋子。

通过 33 次操作,可以将所有棋子集中到顶点 11。

由 ChatGPT 4.1 翻译

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

首页