#P7975. 「Stoi2033」分裂
「Stoi2033」分裂
题目背景
趁时间没发觉 让我带着你离开
没有了证明 没有了空虚
基于两种立场我会罩着你
趁时间没发觉 让我带着你离开
这不是顽固 这不是逃避
没人绑着你走才快乐
——《分裂》
题目描述
有一个 的棋盒(四周为棋盒壁)与黑、红各 颗棋。棋子有若干种类,红色的一种棋子个数和黑色的该种棋子个数相等。棋子种类用特征值 标记。特征值相同的棋子种类相同,特征值不同的棋子种类不同。红色棋子摆放在棋盒的下层,已经摆好。现在 Vinsta 要将黑棋按照规定顺序摆放在棋盒上层。设棋盒内坐标以左上角为 ,右下角为 ,依此第 行第 列为 ,则每颗摆进去的黑棋必须摆在满足以下要求的位置:
-
其摆放位置没有黑棋子且下方为与其种类相同的红棋;
-
在 1. 的要求下,若有多个,令一个位置的 紧密度 为其四边有黑棋子相邻或为棋盒壁的个数,则选择 紧密度 最大的一个;
-
在 2. 的要求下,若还有多个,则设此位置的坐标为 ,要求 最小;
-
在 3. 的要求下,若还有多个,要求 最小。
给出红棋的摆放情况和黑棋放入的顺序,她想请你帮忙求出每个位置的黑棋子被放入的顺序。
输入格式
第一行两个整数 。
接下来 行 列,第 行第 列表示 。
接下来一行 个整数,表示按顺序每次放入的棋子的种类。
输出格式
输出 行 列,每个位置上的数 表示 上的棋是第 个被放进去的。
3 3
1 1 1
1 1 1
1 1 1
1 1 1 1 1 1 1 1 1
1 2 3
4 6 7
5 8 9
3 3
1 2 3
2 2 1
3 1 3
1 3 3 2 1 2 2 3 1
1 4 2
6 7 5
3 9 8
10 10
4 9 3 9 3 6 4 8 7 7
7 5 3 8 7 10 10 8 7 10
10 9 3 10 3 3 3 2 3 8
9 6 3 1 10 10 3 4 2 6
10 5 9 9 5 7 7 6 2 7
1 1 6 3 2 10 10 7 6 7
1 7 10 7 3 10 3 9 10 9
1 5 1 2 2 4 4 9 10 8
6 3 7 1 5 8 10 4 10 7
5 4 8 3 3 9 2 6 8 2
6 6 6 1 10 8 5 5 4 2 1 5 5 9 4 3 4 6 3 5 9 7 4 8 9 3 5 9 1 7 4 1 1 2 2 6 7 10 6 2 6 6 1 8 4 7 7 10 3 1 9 8 10 9 4 7 9 10 2 3 3 3 2 7 2 9 7 7 3 8 8 9 3 2 10 9 10 7 8 10 8 3 7 7 3 3 7 3 7 3 3 10 3 10 10 10 10 10 10 10
9 14 16 28 49 1 15 24 37 46
22 12 26 79 84 94 92 70 56 53
5 21 61 80 85 93 91 63 62 6
25 18 60 50 58 95 90 23 34 3
38 13 51 54 20 87 89 39 59 64
29 32 36 69 74 97 96 78 42 67
11 30 48 68 86 98 88 76 77 72
4 8 33 40 35 31 45 57 99 81
2 19 47 43 27 71 75 55 100 83
7 17 52 73 82 66 65 41 44 10
提示
对于 的数据,;
对于另外 的数据,;
对于 的数据,,保证每种棋子黑色与红色数量相等。