P10257 [COCI 2023/2024 #5] Zlagalica

题目背景

**译自 [COCI 2023/2024 Contest #5](https://hsin.hr/coci/archive/2023_2024) T1「[Zlagalica](https://hsin.hr/coci/archive/2023_2024/contest5_tasks.pdf)」**

题目描述

Little Maja 喜欢拼图。既然大家都已经认识她很久了,那么一定不会对 Maja 在一个晴朗的日子里,收到一份奇怪的拼图作为礼物感到惊讶。 这个拼图由 $n$ 片组成。每片拼图的形状都是矩形,并具有一定的颜色。同时,每片拼图的背面都写着 $u$ 和 $d$ 两个数字。在精心尝试了一段时间后,Maja 发现了这些数字的含义。 她发现数字 $u$ 表示**方向**,换句话说,描述了下一块拼图从上侧还是从右侧连接这一块拼图。数字 $d$ 表示下一块拼图连接这一块拼图的起点行/列。更具体地: - 如果 $u=0$,我们通过将下一块拼图左下角放在当前拼图上边的第 $d$ 列,将下一块拼图拼接在当前拼图的上方。 - 如果 $u=1$,我们通过将下一块拼图左下角放在当前拼图右边的第 $d$ 行,将下一块拼图拼接在当前拼图的右边。 假设有颜色分别为 `a` 和 `b` 的两块拼图。图一展示了 $u=0,d=3$ 时的拼接情况;图二展示了 $u=1,d=3$ 时的拼接情况(这里的 $u,d$ 均写在颜色为 `a` 的拼图上) | 图一 | 图二 | |:--:|:--: |![](https://cdn.luogu.com.cn/upload/image_hosting/b6c7t1e9.png)| ![](https://cdn.luogu.com.cn/upload/image_hosting/sxahll4p.png)| Maja 已经厌烦了这个拼图,但是她的好奇心是无限的。这正是她寻求你帮助的原因。她想知道,给出全部的拼图信息,以及拼装它们的顺序序列,最终拼图是什么样的?编写程序输出一个长方形字符矩阵,恰好包含最终拼图的样子,用 `.` 表示这里没有拼图。

输入格式

输入的第一行包含一个整数 $n$($1 \le n \le 20$),表示拼图的数目。 接下来 $n$ 行,第 $i$ 行包含一个字符和四个整数 $b_i,r_i,s_i,u_i,d_i$,描述了第 $i$ 块拼图: - $b_i$ 是一个小写英文字母,表示第 $i$ 块拼图的颜色。 - $r_i,s_i$($1 \le r_i,s_i \le 10$)依次表示第 $i$ 块拼图行与列的长度。 - $u_i,d_i$($0 \le u_i \le 1$,$1 \le d_i \le r_i,s_i$(与 $u_i$ 有关))表示第 $i$ 块拼图背面的数字,含义如题所述。 最后一行包含 $n$ 个整数,表示拼图拼接的顺序。其中数字 $i$ 表示第 $i$ 块输入的拼图。保证每块拼图在序列中出现且仅出现一次。

输出格式

第一行输出完成的拼图的高度与宽度。 接下来若干行,输出拼图,不属于拼图的位置用 `.` 替代。

说明/提示

### 子任务 | Subtask | Points | Constraints | | :--: | :--: | :--: | | 1 | 17 | 拼图拼接的顺序与输入相同 | | 2 | 12 | 对于所有拼图,$u=0$ | | 3 | 12 | 对于所有拼图,$u=1$ | | 4 | 9 | 无额外限制 |