题号:NC53177
时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 32 M,其他语言64 M
64bit IO Format: %lld
题目描述
输入描述:
输入标准如下:
第一行为两个以空格分开的整数M,N。表示旧的JOI旗帜是由M行N列的M×N个正方形组成的图形。
接下来的M行,每行为含有N个字符的字符串。每个字符为J,O,I中的一个。这M行中的第
)
行中从左数第
)
个字符表示旧的JOI旗帜上的第i行第j列的正方形中所写的字符。
接下来的2行,每行为含有2个字符的字符串。每个字符为J,O,I中的一个。这2行中的第
)
行中从左数第
)
个字符表示JOI徽章上的第i行第j列的正方形中所写的字符。
输出描述:
输出一行一个整数:表示新的JOI旗帜所含的JOI徽章的个数的最大值。
示例1
输入
复制
3 5
JOIJO
IJOOO
IIJIJ
JO
IJ
说明
旧的JOI旗帜和JOI徽章和题目描述中的例子一样。从上面起第2行中,从左起第4列的正方形中的字符用白纸覆盖从而变为'J'。
像这样变化后的JOI旗帜含3个JOI徽章。
不存在能够包含4个JOI徽章的新的JOI旗帜。所以新的JOI旗帜所含的JOI徽章的个数的最大值为3。
示例3
说明
在输入样例3的情况下,对于任何可能的新的JOI旗帜,都不可能含有1个JOI徽章。
备注:
对于
的分值:


对于

的数据,满足以下条件。

CC-BY-SA,感谢LOJ分享,译文来自 https://loj.ac/problem/2756