传统题 1000ms 256MiB

棋盘

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

背景

人生如棋,落子无悔。

溪月想设计一款五子棋ai,中间有一步是要统计局面下每个可落子点(若无棋子,即可落子)的权重,你能帮助他完成这一步吗?

题目描述

  • 可落子点的权重等于其所在直线所有已有的棋子数目之和。
  • 现在给出 nnmm 列的棋盘中的棋子分布,要求计算出每个可落子点的权重。
  • 注:一个可落点所在的直线包括其上到下、左到右两条线。

输入格式

第一行是用一个空格隔开的两个整数 nnmm (1n,m100)(1≤n,m≤100),分别表示棋盘的行数和列数。

接下来 nn 行,每行 mm 个字符,描述了棋盘中的棋子分布情况。字符 *\texttt{*} 表示相应位置有棋子,字符 ?\texttt{?} (英文)表示相应位置无棋子。相邻位置之间无分隔符。

输出格式

输出文件包含 nn 行,每行 mm 个字符,描述整个棋盘的可落子权重情况。用 *\texttt{*} 表示棋子,用整数表示可落子点的权重。相邻字符之间无分隔符。

输入输出样例 #1

输入 #1

3 3
*??
???
?*?

输出 #1

*21
110
2*1

输入输出样例 #2

输入 #2

2 3
?*?
*??

输出 #2

2*1
*21

限制条件

1s, 1024KiB 每次测试。

25级新生周赛(三)

未参加
状态
已结束
规则
ACM/ICPC
题目
8
开始于
2025-11-15 19:00
结束于
2025-11-15 21:30
持续时间
2.5 小时
主持人
参赛人数
48