이 제출은 이전 버전의 oj.uz에서 채점하였습니다. 현재는 제출 당시와는 다른 서버에서 채점을 하기 때문에, 다시 제출하면 결과가 달라질 수도 있습니다.
#include<bits/stdc++.h>
using namespace std;
int h,w;
string grid[3005];
int qs1[3005][3005],qs2[3005][3005];
int main(){
ios_base::sync_with_stdio(false);
cin.tie(NULL);
cin >> h >> w;
for(int i=1;i<=h;i++){
string s;
cin >> s;
s=" "+s;
grid[i]=s;
}
memset(qs1,0,sizeof(qs1));
memset(qs2,0,sizeof(qs2));
for(int i=1;i<=h;i++){
for(int j=w;j>=1;j--){
qs1[i][j]=qs1[i][j+1]+(grid[i][j]=='O');
}
}
for(int i=h;i>=1;i--){
for(int j=1;j<=w;j++){
qs2[i][j]=qs2[i+1][j]+(grid[i][j]=='I');
}
}
int ans=0;
for(int i=1;i<=h;i++){
for(int j=1;j<=w;j++){
if(grid[i][j]=='J'){
ans+=qs1[i][j]*qs2[i][j];
}
}
}
cout << ans;
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |