Submission #519770

#TimeUsernameProblemLanguageResultExecution timeMemory
519770andreeatomescu16Bitaro the Brave (JOI19_ho_t1)C++14
100 / 100
742 ms158844 KiB
#include <bits/stdc++.h>

using namespace std;

long long n, m, s, nri, nro, v[3001][3001], w[3001][3001];
char a[3001][3001];

int main()
{
    cin>>n>>m;
    for(int i=1; i<=n; i++)
        for(int j=1; j<=m; j++)
            cin>>a[i][j];
    for(int j=m; j>=1; j--)
    {
        for(int i=n; i>=1; i--)
            if(a[i][j]=='I')
            {
                nri++;
                v[i][j]=nri;
            }
            else
                v[i][j]=nri;
        nri=0;
    }
    for(int i=n; i>=1; i--)
    {
        for(int j=m; j>=1; j--)
            if(a[i][j]=='O')
            {
                nro++;
                w[i][j]=nro;
            }
            else
                w[i][j]=nro;
        nro=0;
    }
    for(int i=1; i<=n; i++)
        for(int j=1; j<=m; j++)
            if(a[i][j]=='J')
                s+=v[i][j]*w[i][j];
    cout<<s;
    return 0;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...