AT_abc222_e.[ABC222E] Red and Blue Tree

提高+/省选-

通过率:0%

AC君温馨提醒

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

题目描述

给定一棵有 NN 个顶点的树,以及一个长度为 MM 的数列 A=(A1,…,AM)A=(A_1,\ldots,A_M),还有一个整数 KK。
树的顶点编号为 11 到 NN,第 ii 条边连接顶点 UiU_i 和 ViV_i。

现在要将这棵树的 N−1N-1 条边分别涂成红色或蓝色。这样的涂色方法共有 2N−12^{N-1} 种。请计算其中有多少种涂色方法满足如下条件,并将答案对 998244353998244353 取模输出。

条件:
最开始,将棋子放在顶点 A1A_1。对于 i=1,…,M−1i=1,\ldots,M-1,依次将棋子从顶点 AiA_i 沿最短路径移动到顶点 Ai+1A_{i+1}。在所有这些操作完成后,设经过红色边的总次数为 RR,经过蓝色边的总次数为 BB,则要求 R−B=KR-B=K。

输入格式

输入按以下格式从标准输入读入。

NN MM KK
A1A_1 A2A_2 …\ldots AMA_M
U1U_1 V1V_1
⋮\vdots
UN−1U_{N-1} VN−1V_{N-1}

输出格式

输出答案。

输入输出样例

  • 输入#1

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

    输出#1

    2
  • 输入#2

    3 10 10000
    1 2 1 2 1 2 2 1 1 2
    1 2
    1 3

    输出#2

    0
  • 输入#3

    10 2 -1
    1 10
    1 2
    2 3
    3 4
    4 5
    5 6
    6 7
    7 8
    8 9
    9 10

    输出#3

    126
  • 输入#4

    5 8 -1
    1 4 1 4 2 1 3 5
    1 2
    4 1
    3 1
    1 5

    输出#4

    2

说明/提示

限制条件

  • 2≤N≤10002\leq N\leq 1000
  • 2≤M≤1002\leq M\leq 100
  • ∣K∣≤105|K|\leq 10^5
  • 1≤Ai≤N1\leq A_i\leq N
  • 1≤Ui,Vi≤N1\leq U_i,V_i\leq N
  • 给定的图一定是一棵树
  • 输入中的所有值均为整数

样例解释 1

将第 11、33 条边涂成红色,第 22 条边涂成蓝色时,

  • 从顶点 22 移动到顶点 33 时,经过红色边 00 次,蓝色边 11 次
  • 从顶点 33 移动到顶点 22 时,经过红色边 00 次,蓝色边 11 次
  • 从顶点 22 移动到顶点 11 时,经过红色边 11 次,蓝色边 00 次
  • 从顶点 11 移动到顶点 44 时,经过红色边 22 次,蓝色边 11 次

总共经过红色边 33 次,蓝色边 33 次,因此满足条件。

除此之外,将第 11、33 条边涂成蓝色,第 22 条边涂成红色时也满足条件,除此之外没有其他满足条件的涂色方法,因此答案为 22。

样例解释 2

也有可能不存在满足条件的涂色方法。

由 ChatGPT 4.1 翻译

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

首页