[USACO23DEC] Cowntact Tracing P

Luogu
IDLGP9983
Time2000ms
Memory256MB
DifficultyP7
动态规划 DP贪心USACO点分治2023O2优化树形 DP
Farmer John 有依次编号为 $1\dots N$ 的 $N$($2\le N \le 10^5$)头奶牛,奶牛间的关系可以用树结构描述。不幸的是,有一种疾病正在传播。 最初,有一些奶牛被感染。每到夜晚,被感染的奶牛会将疾病传播给它的邻居。一旦奶牛被感染,她就会持续处于感染状态。经过一些晚上,Farmer John 意识到这样的情况,因此他对奶牛进行了检测以确定哪些奶牛感染了疾病。 你将得到 $Q$($1\le Q \le 20$)个不同的夜晚数,每个都是 $[0,N]$ 范围内的整数。对于每个夜晚数,请找出最少有多少头奶牛最初可能感染了这种疾病,或者报告夜晚数与给出的信息不符。 ## Input 第一行为一个整数 $N$。 接下来一行,包含长度为 $N$ 的由 $1$ 和 $0$ 组成的位串。其中 $1$ 表示一头被感染的奶牛,$0$ 表示一头在经过若干晚之后仍未被感染的奶牛。 接下来 $N-1$ 行描述了树的边。 接着输入 $Q$ 和 $Q$ 个夜晚数。 ## Output 输出 $Q$ 行,表示每个夜晚数的答案。若无解,输出 $-1$。 [samples] ## Note ### 样例解释 1 对于前四个询问,一种可能是只有 $3$ 号奶牛一开始被感染。对于第五组询问($1$ 晚),一种可能是 $2,4$ 号奶牛一开始被感染。对于第六组询问($0$ 晚),一种可能是所有的五只奶牛在一开始都被感染。 ### 样例解释 2 对于第一组询问($0$ 晚),一种可能是所有的十只奶牛一开始都被感染。对于第二组询问($1$ 晚),一种可能是 $2,7,9$ 号奶牛一开始被感染。对于第三组询问($2$ 晚),一种可能是 $2,9$ 号奶牛一开始被感染。对于第四至第十一组询问,一种可能是只有 $7$ 号奶牛一开始被感染。 ### 样例解释 3 对于第一组询问($0$ 晚),一种可能是 $1,2,3$ 号奶牛一开始被感染。对于第二组询问($1$ 晚),一种可能是只有 $2$ 号奶牛一开始被感染。对于第三组询问($2$ 晚),一种可能是只有 $1$ 号奶牛一开始被感染。对于第四至第六组询问,不可能满足题给条件。 ### 测试点性质 - 测试点 $4-5$ 满足 $N \le 10$。 - 测试点 $6-8$ 满足所有奶牛都被感染。 - 测试点 $9-11$ 满足 $N \le 400$。 - 测试点 $12-23$ 没有额外限制。
Samples
Input #1
5
11111
1 2
2 3
3 4
4 5
6
5
4
3
2
1
0
Output #1
1
1
1
1
2
5
Input #2
10
1111111111
1 2
2 3
2 4
2 5
2 6
6 7
7 8
8 9
9 10
11
0
1
2
3
4
5
6
7
8
9
10
Output #2
10
3
2
1
1
1
1
1
1
1
1
Input #3
5
11100
1 2
2 3
3 4
4 5
6
0
1
2
3
4
5
Output #3
3
1
1
-1
-1
-1
API Response (JSON)
{
  "problem": {
    "name": "[USACO23DEC] Cowntact Tracing P",
    "description": {
      "content": "Farmer John 有依次编号为 $1\\dots N$ 的 $N$($2\\le N \\le 10^5$)头奶牛,奶牛间的关系可以用树结构描述。不幸的是,有一种疾病正在传播。 最初,有一些奶牛被感染。每到夜晚,被感染的奶牛会将疾病传播给它的邻居。一旦奶牛被感染,她就会持续处于感染状态。经过一些晚上,Farmer John 意识到这样的情况,因此他对奶牛进行了检测以确定哪些奶牛感染了疾病。 你",
      "description_type": "Markdown"
    },
    "platform": "Luogu",
    "limit": {
      "time_limit": 2000,
      "memory_limit": 262144
    },
    "difficulty": {
      "LuoguStyle": "P7"
    },
    "is_remote": true,
    "is_sync": true,
    "sync_url": null,
    "sign": "LGP9983"
  },
  "statements": [
    {
      "statement_type": "Markdown",
      "content": "Farmer John 有依次编号为 $1\\dots N$ 的 $N$($2\\le N \\le 10^5$)头奶牛,奶牛间的关系可以用树结构描述。不幸的是,有一种疾病正在传播。\n\n最初,有一些奶牛被感染。每到夜晚,被感染的奶牛会将疾病传播给它的邻居。一旦奶牛被感染,她就会持续处于感染状态。经过一些晚上,Farmer John 意识到这样的情况,因此他对奶牛进行了检测以确定哪些奶牛感染了疾病。\n\n你...",
      "is_translate": false,
      "language": "English"
    }
  ]
}
Full JSON Raw Segments