제출 #1355293

#제출 시각아이디문제언어결과실행 시간메모리
1355293kapoBitaro the Brave (JOI19_ho_t1)C++20
100 / 100
220 ms166820 KiB
#include <bits/stdc++.h>
using namespace std;
long long int n,i,k,a[3333][3333],t,cnt,ans=0,cur,sufo[3333][3333],sufi[3333][3333];
int h,w,j;
    string s[3333];
#define all(x) (x).begin(), (x).end()
#define sz(x) ((int)(x).size())
#define pb push_back
#define mp make_pair

int main() {
    ios::sync_with_stdio(false);
    cin.tie(nullptr);
    
    cin>>h>>w;
    for(i=0;i<h;i++) 
    {
        cin>>s[i];

    }
    for(i=0;i<h;i++) 
    {  
        for(j=w-1;j>=0;j--) 
        {
          if(j!=w-1) sufo[i][j]=sufo[i][j+1];  
          if(s[i][j]=='O') sufo[i][j]++;  
        }
    }
    for(j=0;j<w;j++) 
    {  
        for(i=h-1;i>=0;i--) 
        {
          if(i!=h-1) sufi[i][j]=sufi[i+1][j];  
          if(s[i][j]=='I') sufi[i][j]++;  
        }
    }
    for(i=0;i<h;i++) 
    {
        for(j=0;j<w;j++) 
        {
            if(s[i][j]=='J') ans+=sufo[i][j]*sufi[i][j];
        }
    }
    cout<<ans;
    return 0;
}
#결과 실행 시간메모리채점기 출력
결과를 불러오는 중입니다…
#결과 실행 시간메모리채점기 출력
결과를 불러오는 중입니다…
#결과 실행 시간메모리채점기 출력
결과를 불러오는 중입니다…