COCI '15 Contest 4 #4 Chewbacca

View as PDF

Submit solution

Points: 12 (partial)
Time limit: 1.0s
Memory limit: 64M

Problem type

You are given a tree of order K with N nodes or, in other words, each node can have at most K children. The tree is constructed so it's of the "lowest energy": the nodes are placed in a new depth of the tree only when all the places (from left to right) in the previous depth have been filled. This is also the order of enumerating the nodes, starting with 1. Image depicts an example of a tree of order 3 with 9 nodes.

You need to output answers to Q queries in the form of x y, where the answer is the minimal number of steps needed to get from node x to node y.

Input

The first line of input contains the integers N (1 \le N \le 10^{15}), K (1 \le K \le 1\,000) and Q (1 \le Q \le 100\,000) from the task.

Each of the following Q lines contains pairs x y (1 \le x, y \le N, x \neq y) from the task.

Output

Output Q lines, each line containing the answer to a query from the task.

Scoring

In test cases worth 20% of total points, it will hold 1 \le N, Q \le 1\,000.

In test cases worth 50% of total points, it will hold 1 \le N, Q \le 100\,000.

Sample Input 1

7 2 3
1 2
2 1
4 7

Sample Output 1

1
1
4

Explanation for Sample Output 1

You are given a complete binary tree. Node 2 is a direct child of node 1 so the distance between them is exactly 1. Nodes 4 and 7 are on complete opposite sides of the tree, so the distance between them is 4: 4 \to 2 \to 1 \to 3 \to 7.

Sample Input 2

9 3 3
8 9
5 7
8 4

Sample Output 2

2
2
3

Explanation for Sample Output 2

This example corresponds to the image.


Comments

There are no comments at the moment.