100 atcoder#ABC089D. [ABC089D] Practical Skill Test
[ABC089D] Practical Skill Test
题目描述
行 列のマス目があり、 行目の 列目のマスをマス と呼びます。
このマス目には から までの整数が重複なく書かれており、マス に書かれている整数は です。
魔法少女であるあなたは、魔力 を消費することでマス に置かれた駒をマス に瞬間移動させることができます。
あなたは、魔法少女としての能力を計るために、 回の実技試験を受けなければなりません。
回目の実技試験は、以下の手順で行われます。
- 初めに、駒が整数 の書かれているマスに置かれている。
- 駒の置かれているマスに書かれている整数を とする。 が でない限り、駒を の書かれているマスに移動することを繰り返す。 となったら終了する。
- ただし、 が の倍数であることは保証される。
それぞれの実技試験に対し、あなたの消費する魔力の総和を求めてください。
输入格式
入力は以下の形式で標準入力から与えられる。
输出格式
それぞれの実技試験に対し、あなたの消費する魔力の総和を出力せよ。
ただし、出力する順番は実技試験の行われる順とすること。
题目大意
-
给定一个 的矩阵,上面分别是 的每一个数。有 次询问,每次询问从数 移动到数 的代价。
-
每次移动的代价为两个数在矩阵上的曼哈顿距离。
-
移动方式为先从 移动到 ,再移动到 ... 直到移动到 。其中 是一开始给定的常数。保证 是 的倍数。
-
$1 \le h,w\le 300,1 \le d \le h \times w,1 \le Q \le 10^5$
3 3 2
1 4 3
2 5 7
8 9 6
1
4 8
5
4 2 3
3 7
1 4
5 2
6 8
2
2 2
2 2
0
0
5 5 4
13 25 7 15 17
16 22 20 2 9
14 11 12 1 19
10 6 23 8 18
3 21 5 24 4
3
13 13
2 10
13 13
0
5
0
提示
制約
- は の倍数
Sample Explanation 1
- が書かれたマスは、マス です。 - が書かれたマスは、マス です。 - が書かれたマスは、マス です。 よって、 回目の実技試験であなたの消費する魔力の総和は、 です。
Sample Explanation 2
駒を全く移動しない実技試験が存在する場合や、複数の実技試験の内容が同じ場合に注意してください。