Submission #1212467

#TimeUsernameProblemLanguageResultExecution timeMemory
1212467VMaksimoski008Bitaro the Brave (JOI19_ho_t1)C++17
20 / 100
9 ms4676 KiB
#include <bits/stdc++.h>
using namespace std;
using ll = long long;
const int N = 3005;

char a[N][N], O[N][N], I[N][N];

signed main() {
    int n, m; cin >> n >> m;

    for(int i=1; i<=n; i++)
        for(int j=1; j<=m; j++) cin >> a[i][j];

    for(int i=1; i<=n; i++)
        for(int j=m; j>=1; j--)
            O[i][j] = O[i][j+1] + (a[i][j] == 'O');
    for(int j=1; j<=m; j++)
        for(int i=n; i>=1; i--)
            I[i][j] = I[i+1][j] + (a[i][j] == 'I');

    ll ans = 0;
    for(int i=1; i<=n; i++)
        for(int j=1; j<=m; j++)
            if(a[i][j] == 'J') ans += (ll)O[i][j] * I[i][j];
    cout << ans << '\n';    
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...