Submission #304820

#TimeUsernameProblemLanguageResultExecution timeMemory
304820sofapudenBitaro the Brave (JOI19_ho_t1)C++14
100 / 100
696 ms91256 KiB
#include <bits/stdc++.h>

using namespace std;
typedef long long ll;

int main(){
	ll ans = 0;
	int h, w; cin >> h >> w;
	vector<string> gri(h);
	vector<vector<ll>> val(h, vector<ll> (w,0LL));
	for(auto &x : gri)cin >> x;
	for(int i = 0; i < h; ++i){
		ll cn = 0;
		for(int j = w-1; j >= 0; --j){
			if(gri[i][j] == 'O')cn++;
			if(gri[i][j] == 'J')val[i][j] = cn;
		}
	}
	for(int j = 0; j < w; ++j){
		ll cn = 0;
		for(int i = h-1; i >= 0; --i){
			if(gri[i][j] == 'I')cn++;
			if(gri[i][j] == 'J')ans += cn*val[i][j];
		}
	}
	cout << ans << "\n";
}
			
	
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...