SP25335 NPC2015B - Eefun the Accountant
题目描述
Eefun 是一名非常热爱电子表格的会计师。在电子表格中,数据必须保存在指定单元格中,该单元格由行和列确定。电子表格中有一个特别的功能:通过点按按钮,根据以下规则可以将光标从一个单元格移动到另一个单元格:
- **如果当前单元格和其右侧相邻单元格都有数据**,按下右方向键会使光标移动到右侧第一个其右侧相邻单元格没有数据的单元格。如果不存在这样的单元格,则光标移动到当前行的最右侧单元格。
- **如果不是上述情况**,按下右方向键会将光标移至右侧第一个有数据的单元格。如果这样的单元格不存在,则光标将移动到当前行的最右侧单元格。
按左、上、下按钮时采用相同的规则。
Eefun 对这个功能感到非常好奇。目前他需要编辑位于单元格 $(R, C)$ 的数据,但首先他需要将光标从左上角的起始位置 $(1, 1)$ 移动到目标单元格。他想知道到达目标单元格最少需要按下多少次按键。
输入格式
第一行包含两个整数 $N$ 和 $M$,表示电子表格的行数和列数。
第二行包含一个整数 $X$,表示当前已填入的数据个数。
接下来有 $N$ 行,每行包含两个整数 $A$ 和 $B$,表示数据所在单元格的位置。
第 $N + 3$ 行包含一个整数 $Q$,表示查询次数。
接下来的 $Q$ 行中,每行包含两个整数 $R$ 和 $C$,表示 Eefun 想要编辑的目标单元格位置。
输出格式
对于每一个查询,输出一个整数,表示 Eefun 到达指定单元格 $(R, C)$ 所需的最少按键次数。如果该单元格无法到达,则输出字符串 `Eefun gagal mengedit data`(意味着 "Eefun 无法编辑数据")。
**注意,每次查询都是独立的,因此光标的初始位置总是 $(1, 1)$。**
**本翻译由 AI 自动生成**