R1CのA
これは簡単だったので、フルで参加しませんでしたが解きました。
int main() { int T; cin >> T; for (int ix=1; ix<=T; ix++) { int R, C; cin >> R >> C; ves input(R); bool flag=true; for (int i=0; i<R; i++) cin >> input[i]; for (int i=0; i<R; i++) { for (int j=0; j<C; j++) { if (input[i][j]=='#') { if (i+1<R&&j+1<C&&input[i][j+1]=='#'&&input[i+1][j]=='#'&&input[i+1][j+1]=='#') { input[i][j] = '/'; input[i][j+1] = '\\'; input[i+1][j] = '\\'; input[i+1][j+1] = '/'; j++; } else { flag = false; break; } } } if (!flag) break; } printf("Case #%d:\n",ix); if (flag) { for (int i=0; i<R; i++) cout << input[i] << endl; } else { cout << "Impossible" << endl; } } }
vesはvector
largeまでこの単純な探索で解けました。おわり。