USACO 2023 December Contest, Platinum
Problem 1. Cowntact Tracing
Contest has ended.
Log in to allow submissions in analysis mode
Farmer John has $N$ ($2\le N\le 10^5$) cows labeled $1\dots N$, where the connections between cows are described by a tree. Unfortunately, there is a sickness spreading throughout.
Initially, some cows start off infected. Every night, an infected cow spreads the sickness to their neighbors. Once a cow is infected, she stays infected. After some amount of nights, Farmer John realizes that there is an issue so he tests his cows to determine who has the sickness.
You are given $Q$ ($1\le Q\le 20$) different values for the number of nights, each an integer in the range $[0,N]$. For each number of nights, determine the minimum number of cows that could have started with the illness, or that the number of nights is inconsistent with the given information.
INPUT FORMAT (input arrives from the terminal / stdin):
The first line contains $N$.The next line contains a bit string of length $N$, where the $i$th bit is 1 if the $i$th cow is infected and 0 otherwise. At least one cow is infected.
The next $N-1$ lines contain the edges of the tree.
Then $Q$, followed by the $Q$ values for the number of nights.
OUTPUT FORMAT (print output to the terminal / stdout):
$Q$ lines, the answers for each number of nights, or $-1$ if impossible.SAMPLE INPUT:
5 11111 1 2 2 3 3 4 4 5 6 5 4 3 2 1 0
SAMPLE OUTPUT:
1 1 1 1 2 5
For the first four queries, one possibility is that just cow 3 started with the illness. For the fifth query (1 night), one possibility is that cows 2 and 4 started with the illness. For the sixth query (0 nights), one possibility is that all five cows started with the illness.
SAMPLE INPUT:
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
SAMPLE OUTPUT:
10 3 2 1 1 1 1 1 1 1 1
For the first query (0 nights), one possibility is that all ten cows started with the illness. For the second query (1 night), one possibility is that cows 2, 7, and 9 started with the illness. For the third query (2 nights), one possibility is that cows 2 and 9 started with the illness. For the fourth to eleventh queries, one possibility is that just cow 7 started with the illness.
SAMPLE INPUT:
5 11100 1 2 2 3 3 4 4 5 6 0 1 2 3 4 5
SAMPLE OUTPUT:
3 1 1 -1 -1 -1
For the first query (0 nights), one possibility is that cows 1, 2, and 3 started with the illness. For the second query (1 night), one possibility is that just cow 2 started with the illness. For the third query (2 nights), one possibility is that just cow 1 started with the illness. For the fourth through sixth queries, there is no consistent possibility.
SCORING:
- Inputs 4-5: $N \le 10$
- Inputs 6-8: All cows are infected.
- Inputs 9-11: $N \le 400$
- Inputs 12-23: No additional restrictions.
Problem credits: Suhas Nagar and Brandon Wang