AtCoder Beginner Contest #129 D問題 - Lamp

Source

AtCoder Beginner Contest #129
問題文

問題概要

省略

解法

省略

cLayversion 20190626-1)のコード

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月25日13時55分15秒
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)

ログイン: