Submission #1272178

#TimeUsernameProblemLanguageResultExecution timeMemory
1272178nonjapenzilBitaro the Brave (JOI19_ho_t1)C++20
100 / 100
335 ms150300 KiB
#include <bits/stdc++.h> using namespace std; #define pf(a) printf("%.9f", a) #define SZ size() #define ll long long #define pb push_back #define BBC ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0); void W2dNHK() { ll h,w; cin>>h>>w; ll i,j; char r[h+1][w+1]; ll a[h+1][w+1],b[h+1][w+1]; for(i=1 ; i<=h ; i++ ){ for(j=1 ; j<=w ; j++ ){ cin>>r[i][j]; a[i][j]=0; b[i][j]=0; } } for(i=1 ; i<=h ; i++ ){ if(r[i][w]=='O'){ a[i][w]=1; } for(j=w-1 ; j>=1 ; j-- ){ if(r[i][j]=='O'){ a[i][j]=a[i][j+1]+1; } else{ a[i][j]=a[i][j+1]; } } } for(i=1 ; i<=w ; i++ ){ if(r[h][i]=='I'){ b[h][i]=1; } for(j=h-1 ; j>=1 ; j-- ){ if(r[j][i]=='I'){ b[j][i]=b[j+1][i]+1; } else{ b[j][i]=b[j+1][i]; } } } ll sum=0; for(i=1 ; i<=h ; i++ ){ for(j=1 ; j<=w ; j++ ){ if(r[i][j]=='J'){ sum+=a[i][j]*b[i][j]; } } } cout<<sum; } int main() { BBC ll tc = 1; //cin>>tc; while (tc--) { W2dNHK(); } }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...