Submission #1223034

#TimeUsernameProblemLanguageResultExecution timeMemory
1223034ffeyyaae_Bitaro the Brave (JOI19_ho_t1)C++20
20 / 100
6 ms6728 KiB
#include <bits/stdc++.h>

using namespace std;

const int N = 3005;

int n, m;
string arr[N];
int qsO[N][N], qsI[N][N];

int main()
{
    ios_base::sync_with_stdio(0); cin.tie(0);
    cin >> n >> m;
    for( int i=1;i<=n;i++ )
    {
        cin >> arr[i];
        for( int j=m;j>0;j-- )
        {
            qsO[i][j] = qsO[i][j+1]+(arr[i][j-1]=='O');
        }
    }
    for( int j=1;j<=m;j++ )
    {
        for( int i=n;i>0;i-- )
        {
            qsI[i][j] = qsI[i+1][j]+(arr[i][j-1]=='I');
        }
    }
    int ans = 0;
    for( int i=1;i<=n;i++ )
    {
        for( int j=1;j<=m;j++ )
        {
            if( arr[i][j-1] == 'J' ) ans += (qsO[i][j]*qsI[i][j]);
        }
    }
    cout << ans << "\n";
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...