13.5 沿一個方向一直走:射線與標記表
第二種常見的動作是沿著固定方向一直走,直到出界或撞到東西——像一道射線。寫法就是把上一節的「算下一格、檢查、踏上去」放進 while:
int r = sr, c = sc, steps = 0; // 從起點出發
while (true) {
int nr = r + dr[d], nc = c + dc[d];
if (!inside(nr, nc) || grid[nr][nc] == '#') break; // 出界或撞牆:停
r = nr; c = nc; // 踏上去
steps++;
}