Submission #1359214

#TimeUsernameProblemLanguageResultExecution timeMemory
1359214JohanBitaro the Brave (JOI19_ho_t1)C++20
100 / 100
121 ms150408 KiB
#include <bits/stdc++.h>
using namespace std;
#define int long long
const int N = 3e3 + 5;
char a[N][N];
int row[N][N], col[N][N];
signed main(){
  ios_base::sync_with_stdio(0);
  cin.tie(0);
  cout.tie(0);
  int n, m;
  cin >> n >> m;
  for(int i = 1; i <= n; i++){
    for(int j = 1; j <= m; j++){
      cin >> a[i][j];
      row[i][j] = row[i][j - 1] + (int)(a[i][j] == 'O');
      col[i][j] = col[i - 1][j] + (int)(a[i][j] == 'I');
    }
  }
  int tot = 0;
  for(int i = 1; i <= n; i++){
    for(int j = 1; j <= m; j++){
      if(a[i][j] != 'J')
        continue;
      int R = row[i][m] - row[i][j];
      int D = col[n][j] - col[i][j];
      tot += R * D;
    }
  }
  cout << tot;
}
#Result Execution timeMemoryGrader output
Fetching results...
#Result Execution timeMemoryGrader output
Fetching results...
#Result Execution timeMemoryGrader output
Fetching results...