In a number of sports, a championship may be determined by a double knockout competition. A team is eliminated on its second loss, so the winner is the last remaining team with one or fewer losses. The competition is played is a series of rounds: in each round, teams that have not been eliminated are paired subject to the constraint that an undefeated team never plays a team with one loss. As many teams as possible are paired in each round. After a number of rounds only two teams remain. These teams play in a round by themselves, although one is undefeated and the other is not. If neither is eliminated, they play again in a final round. For our analysis we assume that this extra round is always necessary.
Write a program to report on a Double Knockout Competition.
The first line of input contains one positive integer ~n~ which is the number of test cases which follow it. The next ~n~ lines each contain one positive integer ~t~, ~t < 32\,768~, which is the number of teams in the competition for that test case.
For each case there should be an initial line which has the form:
Round 0: 2 undefeated, 0 one-loss, 0 eliminated
This is followed by a similar line for each round of the competition, followed by a single line saying how my rounds were played. The output for different test cases is to be separated by a single blank line.
Round 0: 2 undefeated, 0 one-loss, 0 eliminated Round 1: 1 undefeated, 1 one-loss, 0 eliminated Round 2: 0 undefeated, 2 one-loss, 0 eliminated Round 3: 0 undefeated, 1 one-loss, 1 eliminated There are 3 rounds.