Submission #99000

#TimeUsernameProblemLanguageResultExecution timeMemory
99000aintaBitaro the Brave (JOI19_ho_t1)C++17
100 / 100
321 ms47228 KiB
#include<cstdio>
#include<algorithm>
char p[3010][3010];
int w[3010][3010];
long long res;
int n, m;
int main() {
	int i, j;
	scanf("%d%d", &n, &m);
	for (i = 1; i <= n; i++) {
		scanf("%s", p[i] + 1);
	}
	for (i = 1; i <= n; i++) {
		int c = 0;
		for (j = m; j >= 1; j--) {
			if (p[i][j] == 'O')c++;
			if (p[i][j] == 'J')w[i][j] = c;
		}
	}
	for (i = 1; i <= m; i++) {
		int c = 0;
		for (j = n; j >= 1; j--) {
			if (p[j][i] == 'I')c++;
			if (p[j][i] == 'J')res += w[j][i] * c;
		}
	}
	printf("%lld\n", res);
}

Compilation message (stderr)

joi2019_ho_t1.cpp: In function 'int main()':
joi2019_ho_t1.cpp:9:7: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
  scanf("%d%d", &n, &m);
  ~~~~~^~~~~~~~~~~~~~~~
joi2019_ho_t1.cpp:11:8: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
   scanf("%s", p[i] + 1);
   ~~~~~^~~~~~~~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...