#include <iostream>
#include <string>
constexpr int N=3007;
int sumorb[N][N];
int sumingot[N][N];
bool is[N][N];
using namespace std;
int main() {
int h,w;
string s;
cin>>h>>w;
for(int i=1;i<=h;i++){
cin>>s;
for(int j=1;j<=w;j++){
if(s[j-1]=='J')is[i][j]=1;
else if(s[j-1]=='I') sumingot[i][j]++;
else
sumorb[i][j]++;
}
}
for(int i=h;i>0;i--){
for(int j=w;j>0;j--) {
sumorb[i][j]+=sumorb[i][j+1];
sumingot[i][j]+=sumingot[i+1][j];
}
}
long long res=0;
for(int i=1;i<=h;i++){
for(int j=1;j<=w;j++){
if(!is[i][j]) continue;
res+=sumorb[i][j]*sumingot[i][j];
}
}
cout<<res;
return 0;
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |