Submission #945332

#TimeUsernameProblemLanguageResultExecution timeMemory
945332vako_pBitaro the Brave (JOI19_ho_t1)C++14
100 / 100
263 ms159184 KiB
#include <bits/stdc++.h>
using namespace std;
#define pb push_back
#define ll long long

const int mxN = 3e3 + 5;
ll n,cntl[mxN][mxN],cntk[mxN][mxN],m,ans;
char ch[mxN][mxN];

int main(){
	ios::sync_with_stdio(false);
	cin.tie(0);
	cout.tie(0);   
	cin >> n >> m;
	for(int i = 0; i < n; i++){
		for(int j = 0; j < m; j++){
			cin >> ch[i][j];
		}
	}
	for(int i = 0; i < n; i++){
		for(int j = m - 1; j >= 0; j--){
			cntl[i][j] = cntl[i][j + 1] + (ch[i][j] == 'O');		
		}
	}
	for(int j = 0; j < m; j++){
		for(int i = n - 1; i >= 0; i--){
			cntk[i][j] = cntk[i + 1][j] + (ch[i][j] == 'I');
		}
	}
	for(int i = 0; i < n; i++){
		for(int j = 0; j < m; j++){
			if(ch[i][j] == 'J') ans += cntl[i][j] * cntk[i][j];
		}
	}
	cout << ans;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...