译自 JOI 2019 Final T1「勇者ビ太郎 Bitaro the Brave」 勇者比太郎正在面对恶魔。 为了攻击恶魔,比太郎会在一个的网格上放置三种道具(分别记作J,O,I)并施放咒语。网格上往下数第i行(),左往右数第j列()的格子坐标记为(i,j)。 现在,比太郎在网格的每个格子中放置了三种道具中的一种,比太郎将施放一个咒语,其威力取决于三种道具的排列方式。具体的,威力大小等于满足以下条件的有序四元组的数量。 条件:(i,j)位置的格子上的道具为J,(i,l)位置上的道具为O,(k,j)位置上的道具为I。 比太郎想知道他的咒语的威力是多少。 请写一个程序,根据三种道具在网格上的排列,计算出咒语的威力(即满足上述条件的四元组数量)。
输入描述:
从标准输入中读取数据。第一行包括两个整数H,W,表示网格的高度和宽度。接下来H行,第i行给出一个W位长的字符串,表示网格第i行的道具。


输出描述:
输出数据到标准输出中。输出一行一个整数,表示比太郎的咒语的威力。
示例1

输入

3 4
JOIJ
JIOO
IIII

输出

3

说明

在这个样例中,3个四元组分别是(1,1,3,2),(2,1,3,3),(2,1,3,4)。
示例2

输入

4 4
JJOO
JJOO
IIJO
IIIJ

输出

17

备注:
对于所有输入数据,有。CC-BY-SA,感谢LOJ分享,译文来自 https:loj.acproblem3010
加载中...