This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include <bits/stdc++.h>
using namespace std;
#define ll long long
#define ff first
#define sc second
#define pb push_back
#define in insert
ll p[3005][3005], d[3005][3005];
int32_t main () {
ios::sync_with_stdio(false);
cin.tie(nullptr);
ll n , m; cin>>n>>m;
string s[n + 1];
for (int i = 1; i <= n; i++)
cin>>s[i];
for (int i = n; i > 0; i--) {
for (int j = m - 1; j >= 0; j--) {
d[i][j] = d[i][j + 1];
p[i][j] = p[i + 1][j];
if (s[i][j] == 'O') d[i][j]++;
if (s[i][j] == 'I') p[i][j]++;
}
}
ll ans = 0;
for (int i = n; i > 0; i--) {
for (int j = m - 1; j >= 0; j--) {
if (s[i][j] == 'J') {
ans += (d[i][j] * p[i][j]);
}
}
}
cout<<ans;
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |