AtCoder Beginner Contest #129
問題文
省略
省略
C++に変換後のコードはこちら
int X, Y;
char S[2000][2002];
int dp1[2000][2000];
int dp2[2000][2000];
int dp3[2000][2000];
int dp4[2000][2000];
{
int i, j, res;
rd(X,Y,S(X));
rep(i,X) rep(j,Y){
dp1[i][j] = dp2[i][j] = 1;
if(i-1 >= 0) dp1[i][j] += dp1[i-1][j];
if(j-1 >= 0) dp2[i][j] += dp2[i][j-1];
if(S[i][j]=='#') dp1[i][j] = dp2[i][j] = 0;
}
for(i=X-1;i>=0;i--) for(j=Y-1;j>=0;j--){
dp3[i][j] = dp4[i][j] = 1;
if(i+1 < X) dp3[i][j] += dp3[i+1][j];
if(j+1 < Y) dp4[i][j] += dp4[i][j+1];
if(S[i][j]=='#') dp3[i][j] = dp4[i][j] = 0;
}
res = 0;
rep(i,X) rep(j,Y){
res >?= dp1[i][j] + dp2[i][j] + dp3[i][j] + dp4[i][j] - 3;
}
wt(res);
}
Current time: 2024年04月18日05時59分21秒
Last modified: 2019年06月26日23時06分50秒 (by laycrs)
Tags: Competitive_Programming_Incomplete AtCoder AtCoder_Beginner_Contest ABC129 ABC_D
トップページに戻る
Logged in as: unknown user (not login)