省略
省略
C++に変換後のコードはこちら
int X, Y; char A[1000][1002];
int dist[1000][1000];
int q[1d6], qs, qe;
dimcomp2 dm;
{
int i, j, k, si, sj, d, res;
int di[4] = {-1,1,0,0};
int dj[4] = {0,0,-1,1};
rd(X,Y,A(X));
dm.set(X,Y);
rep(i,X) rep(j,Y) dist[i][j] = -1;
rep(i,X) rep(j,Y) if(A[i][j]=='#') dist[i][j] = 0, q[qe++] = dm(i,j);
while(qs<qe){
dm(q[qs++], i, j);
res = dist[i][j];
rep(d,4){
si = i + di[d];
sj = j + dj[d];
if(si < 0 || sj < 0 || si >= X || sj >= Y || dist[si][sj] >= 0) continue;
dist[si][sj] = res + 1;
q[qe++] = dm(si, sj);
}
}
wt(res);
}
Current time: 2024年04月26日02時43分51秒
Last modified: 2019年11月24日12時50分49秒 (by laycrs)
Tags: Competitive_Programming_Incomplete AtCoder AtCoder_Grand_Contest AGC033 AGC_A
トップページに戻る
Logged in as: unknown user (not login)