Submission #287344

#TimeUsernameProblemLanguageResultExecution timeMemory
287344reymontada61Bitaro the Brave (JOI19_ho_t1)C++14
100 / 100
801 ms159292 KiB
#include <bits/stdc++.h> using namespace std; #define int long long const int MXN = 3005; int h, w; string grid[MXN]; int sufo[MXN][MXN]; int lowi[MXN][MXN]; signed main() { cin >> h >> w; for (int i=1; i<=h; i++) { cin >> grid[i]; grid[i] = ' ' + grid[i]; } for (int i=1; i<=h; i++) { for (int j=w; j>=1; j--) { sufo[i][j] = sufo[i][j+1]; if (grid[i][j] == 'O') { sufo[i][j]++; } } } for (int j=1; j<=w; j++) { for (int i=h; i>=1; i--) { lowi[i][j] = lowi[i+1][j]; if (grid[i][j] == 'I') { lowi[i][j]++; } } } int x = 0; for (int i=1; i<=h; i++) { for (int j=1; j<=w; j++) { if (grid[i][j] == 'J') { x += (sufo[i][j] * lowi[i][j]); } } } cout << x << endl; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...