AT_joisc2016_e.サンドイッチ
NOI/NOI+/CTSC
通过率:0%
AC君温馨提醒
该题目为【atcoder】题库的题目,您提交的代码将被提交至atcoder进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
你买了 2nm块三明治,并将它们拼成了一个n×m 的矩形。

你现在可以选择吃掉一些三明治,每次吃的三明治都必须在边界上。更具体地, 你不能吃掉一块三明治当且仅当以下两个条件同时成立:
-
这块三明治的斜边与某块未被吃掉的三明治相邻;
-
这块三明治的至少一条直角边与某块未被吃掉的三明治相邻。
请你求出,对于每个小正方形内的两块三明治,要把它们全部吃掉,至少需要吃多少块三明治(包括这两块三明治)。
输入格式
第一行两个整数 n,m,表示矩形大小。
接下来 n 行,每行一个长度为 m 的字符串,每个字符为'N'或'Z' 表示这个小矩形内的三明治沿主对角线放置还是沿副对角线放置。

输出格式
输出 n 行每行 m 个整数,第 i 行第 j 个表示对应位置小正方形的答案,若无解则为 −1。
样例输入1
2 3
NZN
ZZN
样例输出1
10 8 2
8 6 4
样例输入2
2 2
NZ
ZN
样例输出2
-1 -1
-1 -1
样例输入3
5 5
NZZZN
NNNZN
NNZNN
NZNNN
NZZZN
样例输出3
10 12 14 16 2
8 -1 -1 -1 4
6 -1 -1 -1 6
4 -1 -1 -1 8
2 16 14 12 10
说明/提示
对于 35% 的数据,n,m≤50;
对于所有数据,1≤n,m≤400。
输入解题思路,AI测评打分。不知道怎么写?