{"problem":{"name":"[NOIP 2008 普及组] 立体图","description":{"content":"小渊是个聪明的孩子，他经常会给周围的小朋友们讲些自己认为有趣的内容。最近，他准备给小朋友们讲解立体图，请你帮他画出立体图。 小渊有一块面积为 $m \\times n$ 的矩形区域，上面有 $m \\times n$ 个边长为 $1$ 的格子，每个格子上堆了一些同样大小的积木（积木的长宽高都是 $1$），小渊想请你打印出这些格子的立体图。我们定义每个积木为如下格式，并且不会做任何翻转旋转，只会严格以","description_type":"Markdown"},"platform":"Luogu","limit":{"time_limit":1000,"memory_limit":128000},"difficulty":{"LuoguStyle":"P3"},"is_remote":true,"is_sync":true,"sync_url":null,"sign":"LGP1058"},"statements":[{"statement_type":"Markdown","content":"小渊是个聪明的孩子，他经常会给周围的小朋友们讲些自己认为有趣的内容。最近，他准备给小朋友们讲解立体图，请你帮他画出立体图。\n\n小渊有一块面积为 $m \\times n$ 的矩形区域，上面有 $m \\times n$ 个边长为 $1$ 的格子，每个格子上堆了一些同样大小的积木（积木的长宽高都是 $1$），小渊想请你打印出这些格子的立体图。我们定义每个积木为如下格式，并且不会做任何翻转旋转，只会严格以这一种形式摆放：\n\n$$\n\\def\\arraystretch{1e-10}\n\\begin{aligned}\n&\\verb!  +---+!\\\\\n&\\verb! /   /|!\\\\\n&\\verb!+---+ |!\\quad\\textsf{高}\\\\\n&\\verb!|   | +!\\\\\n&\\verb!|   |/ !\\quad\\textsf{宽}\\\\\n&\\verb!+---+  !\\\\\n& \\quad\\textsf{长}\n\\end{aligned}$$\n\n每个顶点用 $1$ 个加号 `+` 表示，长用 $3$ 个 `-` 表示，宽用 $1$ 个 `/`，高用两个 `|` 表示。字符 `+`，`-`，`/`，`|` 的 ASCII 码分别为 $43$，$45$，$47$，$124$。字符 `.`（ASCII 码 $46$）需要作为背景输出，即立体图里的空白部分需要用 `.` 来代替。立体图的画法如下面的规则：\n\n若两块积木左右相邻，图示为：\n\n$$\n\\def\\arraystretch{1e-10}\n\\begin{aligned}\n\\verb!..+---+---+!\\\\\n\\verb!./   /   /|!\\\\\n\\verb!+---+---+ |!\\\\\n\\verb!|   |   | +!\\\\\n\\verb!|   |   |/.!\\\\\n\\verb!+---+---+..!\\\\\n\\end{aligned}\n$$\n\n若两块积木上下相邻，图示为：\n\n$$\n\\def\\arraystretch{1e-10}\n\\begin{aligned}\n\\verb!..+---+!\\\\\n\\verb!./   /|!\\\\\n\\verb!+---+ |!\\\\\n\\verb!|   | +!\\\\\n\\verb!|   |/|!\\\\\n\\verb!+---+ |!\\\\\n\\verb!|   | +!\\\\\n\\verb!|   |/.!\\\\\n\\verb!+---+..!\\\\\n\\end{aligned}\n$$\n\n若两块积木前后相邻，图示为：\n\n$$\n\\def\\arraystretch{1e-10}\n\\begin{aligned}\n\\verb!....+---+!\\\\\n\\verb!.../   /|!\\\\\n\\verb!..+---+ |!\\\\\n\\verb!./   /| +!\\\\\n\\verb!+---+ |/.!\\\\\n\\verb!|   | +..!\\\\\n\\verb!|   |/...!\\\\\n\\verb!+---+....!\\\\\n\\end{aligned}\n$$\n\n立体图中，定义位于第 $(m,1)$ 的格子（即第 $m$ 行第 $1$ 列的格子）上面自底向上的第一块积木（即最下面的一块积木）的左下角顶点为整张图最左下角的点。\n\n## Input\n\n第一行有用空格隔开的 $2$ 个整数 $m$ 和 $n$，表示有 $m \\times n$ 个格子 $(1 \\le m,n \\le 50)$。\n\n接下来的 $m$ 行，是一个 $m \\times n$ 的矩阵，每行有 $n$ 个用空格隔开的整数，其中第 $i$ 行第 $j$ 列上的整数表示第 $i$ 行第 $j$ 列的格子上摞有多少个积木（$1 \\le $ 每个格子上的积木数 $ \\le 100$）。\n\n## Output\n\n输出包含题目要求的立体图，是一个 $K$ 行 $L$ 列的字符串矩阵，其中 $K$ 和 $L$ 表示最少需要 $K$ 行 $L$ 列才能按规定输出立体图。\n\n[samples]\n\n## Note\n\nNOIP2008 普及组第四题","is_translate":false,"language":"English"}],"meta":{"iden":"LGP1058","tags":["模拟","字符串","2008","NOIP 普及组","枚举"],"sample_group":[["3 4\n2 2 1 2\n2 2 1 1\n3 2 1 2\n","......+---+---+...+---+\n..+---+  /   /|../   /|\n./   /|-+---+ |.+---+ |\n+---+ |/   /| +-|   | +\n|   | +---+ |/+---+ |/|\n|   |/   /| +/   /|-+ |\n+---+---+ |/+---+ |/| +\n|   |   | +-|   | + |/.\n|   |   |/  |   |/| +..\n+---+---+---+---+ |/...\n|   |   |   |   | +....\n|   |   |   |   |/.....\n+---+---+---+---+......"]],"created_at":"2026-03-03 11:09:25"}}