省略
省略
C++に変換後のコードはこちら
int X, Y, R, C;
char S[1d6+2], res[1d6+1];
graph g;
int n, m, a[8d6], b[8d6], d[1d6];
{
int i, j, ij;
rd(X, Y, R--, C--);
rep(i,X) rd(S+i*Y);
n = X * Y;
rep(i,X) rep(j,Y){
ij = i * Y + j;
if((S[ij]=='.' || S[ij]=='<') && j) arrInsert(m, m, a, ij, b, ij-1);
if((S[ij]=='.' || S[ij]=='^') && i) arrInsert(m, m, a, ij, b, ij-Y);
if((S[ij]=='.' || S[ij]=='>') && j+1<Y) arrInsert(m, m, a, ij, b, ij+1);
if((S[ij]=='.' || S[ij]=='v') && i+1<X) arrInsert(m, m, a, ij, b, ij+Y);
}
g.setDirectEdge(n, m, b, a);
g.getDist(R*Y+C, d);
rep(i,X){
rep(j,Y){
if(S[i*Y+j] == '#') res[j] = '#', continue;
res[j] = if[d[i*Y+j]==-1, 'x', 'o'];
}
wt(res);
}
}
Current time: 2024年04月21日00時53分07秒
Last modified: 2020年12月30日16時59分19秒 (by laycrs)
Tags: Competitive_Programming_Incomplete AtCoder
トップページに戻る
Logged in as: unknown user (not login)