AT_abc018_3.[ABC018C] 菱型カウント
提高+/省选-
通过率:0%
AC君温馨提醒
该题目为【atcoder】题库的题目,您提交的代码将被提交至atcoder进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
有一个纵向 R 行、横向 C 列的矩形区域。从上往下第 i 行(1≤i≤R)、从左往右第 j 列(1≤j≤C)的格子称为格子 (i,j)。这些格子中有一些被涂成黑色,其他格子被涂成白色。
另外,给定一个整数 K。
现在,考虑进行如下操作,将一些格子涂成绿色。该操作只进行一次。
- 对于某一整数对 x(K≤x≤R−K+1)、y(K≤y≤C−K+1),对于所有满足 ∣i−x∣+∣j−y∣≤K−1 的格子 (i,j),如果该格子原本是白色,则在本次操作中被涂成绿色。对于所有满足 ∣i−x∣+∣j−y∣≥K 的格子,则不会被涂成绿色。
问满足上述条件的绿色涂色方法有多少种。这里的“涂色方法”指的是哪些格子被涂成了哪种颜色的组合,不考虑涂色的顺序。
输入格式
输入以如下格式从标准输入读入。
R C K
s1
s2
⋮
sR
- 第 1 行包含三个整数 R(3≤R≤500)、C(3≤C≤500)、K(2≤K≤500),表示矩形区域有 R 行 C 列,K 是题目中给定的整数。
- 接下来的 R 行,每行一个长度为 C 的字符串 si。字符串 si 仅由
o和x两种字符组成,si 的第 j 个字符为o表示格子 (i,j) 是白色,x表示格子 (i,j) 是黑色。
输出格式
请输出绿色涂色方法的总数,输出一行,末尾需换行。
输入输出样例
输入#1
4 5 2 xoooo oooox ooooo oxxoo
输出#1
3
输入#2
4 5 2 ooooo oxoox oooox oxxoo
输出#2
0
输入#3
8 6 3 oooooo oooooo oooooo oooooo oxoooo oooooo oooooo oooooo
输出#3
4
说明/提示
部分分
本题设有部分分。
- 对于满足 R≤50 且 C≤50 的数据集 1,答对可获得 30 分。
样例解释 1
有如下 3 种情况(o 表示白色格子,x 表示黑色格子,\* 表示绿色格子):
x*ooo
***oxo
*ooooxxoo
xo*ooo
***xoo
*oooxxoo
xoooooo
*xoo***
oxx*o
由 ChatGPT 4.1 翻译
输入解题思路,AI测评打分。不知道怎么写?