B. 徐老师的循环迷宫

    传统题 1000ms 256MiB

徐老师的循环迷宫

该比赛已结束,您无法在比赛模式下递交该题目。您可以点击“在题库中打开”以普通模式查看和递交本题。

题目背景

迷雾重重的清晨,徐老师独自站在教学楼顶,俯瞰着脚下那片神秘的迷宫。

题目描述

徐老师给出一个 n×nn \times n 的迷宫地图,由空地和障碍物构成。奇妙的是,这个迷宫仿佛连接着另一个世界 —— 它是循环的。向左走出边界,会从右边回来;向上走出边界,会从下方重新出现。徐老师决心探索这座迷宫,看看从起点出发,他能否抵达每一处角落。:

. 表示可以通行的空地; * 表示无法穿越的障碍物。

他从左上角的位置 (1,1)(1, 1)(即第一行第一列)出发,想知道到达每一个位置所需的最短步数。如果某个位置无法抵达,就记为 1-1

特别说明:这个迷宫是循环的,你可以从任意边缘走出并从对面边缘进入。例如:

  • 从第一行往上走,会进入最后一行;
  • 从最后一列向右走,会来到第一列。

请你帮助徐老师,输出从起点出发到每个位置的最短步数。

输入格式

第一行一个整数 nn (1n1000)(1 \le n \le 1000),表示迷宫的大小。

接下来 nn 行,每行 nn 个字符,构成迷宫地图。

  • . 表示空地;
  • * 表示障碍物。
  • 保证起点 (1,1)(1,1).

输出格式

输出nn 行,每行 nn 个整数,第 ii 行第 jj 个数表示从起点 (1,1)(1,1)(i,j)(i,j) 的最短距离,若无法到达,则输出 1-1

输入输出样例

输入

3
.**
.*.
.**

输出

0 -1 -1
1 -1 2
1 -1 -1

26春季 Level-4(数据结构专项)期末考

未参加
状态
已结束
规则
IOI
题目
5
开始于
2026-6-21 9:00
结束于
2026-6-21 12:00
持续时间
3 小时
主持人
参赛人数
6