Baltic Olympiad in Informatics: 2013 Day 1, Problem 1
We have a "ball machine" that can be visualized as a rooted tree. The nodes of the tree are numbered
from
- Add
balls to the ball machine: Balls are put one by one into the root node. As long as a ball has an empty node directly beneath it, it will roll down. If there are multiple empty child nodes, the ball will choose the one which has the node with the smallest number in its subtree. So if the ball rolls down multiple levels, it makes a choice at each level. For example: If we add two balls to the machine in the picture below, they will go to nodes and : The first ball rolls from node to node because node is empty and it contains node in its subtree (which consists of nodes and ); it further rolls from node to node . The second ball rolls from node to node as well and stops there. - Remove a ball from a specified node: This node becomes empty and balls from above (if there
are any) roll down. Whenever a parent of an empty node contains a ball, this ball will roll down.
If we remove balls from nodes
, and (in this order) from the machine in the picture below, nodes , and will become empty.

Constraints
Input Specification
The first line contains two integers
The next
Each of the next 1 k
where 2 x
where
It is guaranteed that all performed operations are correct: Operations will not require to add more balls than there are empty nodes in the ball machine or to remove a ball from an empty node.
Output Specification
For each operation of type
Sample Input
8 4
0
1
2
2
3
3
4
6
1 8
2 5
2 7
2 8
Sample Output
1
3
2
2
Comments