#CSPR08B. [CSP复赛模拟第08套-B题] 有多少把刀
[CSP复赛模拟第08套-B题] 有多少把刀
有多少把刀
题目描述
小珅拿到了一副 行 列的二维字符画,字符画中的 个字符都是 个小写英文字母中的一个。小珅认为 'v'是个笑脸,而如果有一些 'v'构成了一个开口朝着左上方的直角,就认为这是一把刀。比如下面的所有 'v'就构成了一个开口朝着左上方的直角:
ooooov
ooooov
ovvvv
形式化的说,如果有一个 'v'左边有连续的不少于一个 'v',上面也有连续的不少于一个 'v',那么这些 'v'就构成了一个开口朝着左上方的直角,小珅就认为是一把刀。
小珅认为只要形状不同或者位置不同就是不同的刀,所以上面的那个例子中有 把刀。(下面展现了那六把刀的位置,和刀无关的部分都用 'o'表示了。)
ooooo oooov ooooo oooov ooooo oooov
oooov oooov oooov oooov oooov oooov
oovvv oovvv oovvv oovvv ovvvv ovvvv
现在给你一个 行 列的字符画,请你数数有多少把刀吧!
输入格式
第一行为两个整数 。
接下来 行,每行有 个字符,即 的字符画。
输出格式
一个整数,即刀的数量。
输入输出样例
输入 #1
3 5
oooov
oovov
ovvvv
输出 #1
7
输入 #2
3 5
vvoov
vooov
ovvvv
输出 #2
6
输入 #3
3 3
vvv
vvv
vvv
输出 #3
9
输入 #4
10 10
vvvvvoovvv
oovvvvvvvv
ovvvvvvooo
vvvvooovvv
vvvvvvvvvv
vvvvvvvvvv
vvvvvvvvvv
vvvvvvvvvv
vvvvvvovvv
vvvvvvvvvv
输出 #4
850
说明/提示
对于 的数据,。
子任务 (分):保证 。
子任务 (分):保证 。
子任务 (分):保证 。
子任务 (分):没有特殊限制。