120 likes | 281 Views
HKOI Senior Q2 - Igloo. Ivan Li. Background. A peaceful sports event of innocent cute little penguins...... mercilessly destroyed by Big Bad Monsters!. In short. Single elimination tournament Tree structure Taller penguin wins In case of a tie, compare index Must not let monsters win!.
E N D
HKOI Senior Q2 - Igloo Ivan Li
Background • A peaceful sports event of innocent cute little penguins...... • mercilessly destroyed by Big Bad Monsters!
In short • Single elimination tournament • Tree structure • Taller penguin wins • In case of a tie, compare index • Must not let monsters win!
Direct simulation • Stores the penguins in an array, and simulate the competition process • After some tedious typing work, you get 50%
When there is no monsters • The tallest penguin wins • If tie, the lowest index • Hurrah! 20%!
When monsters step in • They may beat the potential winners • Good news – monsters live in the same igloo. Their indexes are consecutive
Observation 1 • When the monsters are not the tallest, we don’t have to be afraid of them • Just ignore them
Observation 2 • When the monsters on the left subtree, all normal penguins in that subtree will be beaten. • Only consider the right subtree • Similar holds for right subtree
Full Solution • Call the penguins on the left(right) of the monsters “the left(right) band”. • Find the largest subtree that is included in the bands • Lengths must be power of 2 • Which subtree survives longer? • The taller (larger) one • Tie – the right one • The tallest penguin in that subtree
Alternative solution • Maintain the start and end index of each igloo • Simulate the rounds • Calculate the boundaries • Match on the boundaries? • Who wins?