Submission #328670

#TimeUsernameProblemLanguageResultExecution timeMemory
328670a_playerBitaro the Brave (JOI19_ho_t1)C++14
100 / 100
694 ms18236 KiB
#include <bits/stdc++.h>

using namespace std;
typedef long long ll;

const int nax=3e3+3;
char m[nax][nax];
int row[nax];
int col[nax];
int q[nax];
int main(){
  int h,w;
  cin>>h>>w;
  for(int i=0;i<h;i++)
  for(int j=0;j<w;j++){
    cin>>m[i][j];
    if(m[i][j]=='O')row[i]++;
    if(m[i][j]=='I')col[j]++;
  }
  ll sol=0;
  for(int i=0;i<h;i++){
    int p=0;
  for(int j=0;j<w;j++){
    if(m[i][j]=='J'){
      sol+=(ll)(row[i]-p)*(ll)(col[j]-q[j]);
    }else if(m[i][j]=='O')p++;
    else q[j]++;
  }
}
  cout<<sol<<endl;

}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...