#ABC377B. Avoid Rook Attack
Avoid Rook Attack
AT_abc377_b [ABC377B] Avoid Rook Attack
题目描述
有一个由 行 列共 个格子组成的棋盘。我们将从上往下的第 行()、从左往右的第 列()的格子称为格子 。
每个格子要么是空格,要么已经有棋子放置。棋盘的状态由一个长度为 的字符串序列 表示。对于格子 (),如果 的第 个字符为 .,则该格子为空;如果为 #,则该格子上有一个棋子。
你想在任意一个空格上放置你自己的棋子,并且要保证不会被已经放置的任何棋子吃掉。
对于放在 的棋子,如果满足以下任一条件,则可以吃掉其他棋子:
- 在第 行的格子上放置的棋子
- 在第 列的格子上放置的棋子
例如,放在 的棋子可以吃掉下图中蓝色标记的格子上的棋子。

请你计算,有多少个格子可以放置你的棋子,并且不会被已经放置的任何棋子吃掉。
输入格式
输入从标准输入中给出,格式如下:
输出格式
输出一个整数,表示可以放置你的棋子且不会被已有棋子吃掉的空格数量。
输入输出样例 #1
输入 #1
...#....
#.......
.......#
....#...
.#......
........
........
..#.....
输出 #1
4
输入输出样例 #2
输入 #2
........
........
........
........
........
........
........
........
输出 #2
64
输入输出样例 #3
输入 #3
.#......
..#..#..
....#...
........
..#....#
........
...#....
....#...
输出 #3
4
说明/提示
限制条件
- 是由
.和#组成的长度为 的字符串()
样例解释 1
已经放置的棋子可以吃掉下图中蓝色标记的格子上的棋子。

因此,你可以安全放置棋子的格子为 、、、 共 个格子。
样例解释 2
也有可能没有任何棋子被放置。
由 ChatGPT 4.1 翻译
Related
In following contests: