제출 #710525

#제출 시각아이디문제언어결과실행 시간메모리
710525yellowtoadBitaro the Brave (JOI19_ho_t1)C++17
100 / 100
734 ms159424 KiB
#include <iostream>
using namespace std;

long long n, m, psx[3010][3010], psy[3010][3010], ans;
char c[3010][3010];

int main() {
	cin >> n >> m;
	for (int i = 1; i <= n; i++) for (int j = 1; j <= m; j++) cin >> c[i][j];
	for (int i = 1; i <= n; i++) {
		for (int j = m; j >= 1; j--) {
			psx[i][j] = psx[i][j+1];
			if (c[i][j] == 'O') psx[i][j]++;
		}
	}
	for (int j = 1; j <= m; j++) {
		for (int i = n; i >= 1; i--) {
			psy[i][j] = psy[i+1][j];
			if (c[i][j] == 'I') psy[i][j]++;
		}
	}
	for (int i = 1; i <= n; i++) for (int j = 1; j <= m; j++) if (c[i][j] == 'J') ans += psx[i][j]*psy[i][j];
	cout << ans << endl;
}
#결과 실행 시간메모리채점기 출력
결과를 불러오는 중입니다…
#결과 실행 시간메모리채점기 출력
결과를 불러오는 중입니다…
#결과 실행 시간메모리채점기 출력
결과를 불러오는 중입니다…