编程题
### 问题描述 小齐的农场里有 $N$ 头奶牛,每头奶牛都有一个编号从 $1$ 到 $N$。它们之间的关系由一棵树来描述。不幸的是,一种疾病正在蔓延。 一开始,一些奶牛已经感染了疾病。每天晚上,一头感染的奶牛会把疾病传给它的邻居。一旦一头奶牛感染了疾病,她就会一直保持感染状态。在经过一定数量的晚上后,小齐意识到有问题,于是她测试了她的奶牛,以确定哪些奶牛患有疾病。 给定 $Q$ 个不同的晚上数量,每个都是在区间 $[0, N]$ 的整数。对于每个晚上的数量,请确定可能起初感染疾病的奶牛的最少数量,或者如果给定的信息与现实矛盾,则输出 $-1$。 ### 输入格式 第一行包含一个整数 $N$。 第二行包含一个长度为 $N$ 的位字符串,其中第 $i$ 位为 $1$ 表示第 $i$ 头奶牛感染了疾病,为 $0$ 表示没有感染。至少有一头奶牛感染了疾病。 接下来的 $N-1$ 行包含树的边。 然后是 $Q$,接着是 $Q$ 个表示晚上数量的整数。 ### 输出格式 输出 $Q$ 行,分别对应每个晚上数量的答案,或者输出 $-1$ 表示不可能。 ### 样例输入 ``` 5 11111 1 2 2 3 3 4 4 5 6 5 4 3 2 1 0 ``` ### 样例输出 ``` 1 1 1 1 2 5 ``` ### 评测数据规模 $1\leq Q\leq 20$。
查看答案
赣ICP备20007335号-2