Submission #963334

#TimeUsernameProblemLanguageResultExecution timeMemory
963334Saul0906Bitaro the Brave (JOI19_ho_t1)C++14
100 / 100
304 ms159528 KiB
#include <bits/stdc++.h> #define rep(a,b,c) for(int a=b; a<c; a++) #define ll long long using namespace std; int main(){ ll h, w; cin>>h>>w; string g[h]; ll ans=0, p[h][w], dp[h][w]{}; rep(i,0,h){ cin>>g[i]; rep(j,0,w){ p[i][j]=(g[i][j]=='O'); if(j) p[i][j]+=p[i][j-1]; } } rep(i,0,h){ rep(j,0,w){ if(i) dp[i][j]=dp[i-1][j]; if(i && g[i-1][j]=='J') dp[i][j]+=p[i-1][w-1]-p[i-1][j]; if(g[i][j]=='I') ans+=dp[i][j]; } } cout<<ans<<endl; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...