a250. TOI 2026/06 新手組:雷射探測

簡單TOI 歷屆

時間限制 1000 ms ・ 記憶體限制 256 MB

題目描述

一個 N 列、M 欄的盒子中,每格可能是空格、斜鏡或障礙物。雷射從左上角 (0, 0) 的空格出發,起初朝右前進。空格不改變光線方向;碰到障礙物時,光線停止;離開盒子範圍後也不再前進。

兩種鏡子的反射方式如下:

  • R 表示右斜鏡「/」:上→右、右→上、下→左、左→下。
  • L 表示左斜鏡「\」:上→左、右→下、下→右、左→上。

請計算雷射經過的不同格子數。起點與碰到的鏡子格都要計入,障礙物格不計入;同一格即使經過多次也只算一次。

輸入格式

第一行輸入整數 N、M。 接下來 N 行,每行包含 M 個字元,表示盒子配置。

  • 1 ≤ N、M ≤ 100
  • 「.」表示空格,「R」表示右斜鏡,「L」表示左斜鏡,「#」表示障礙物。
  • 左上角的字元保證為「.」。

輸出格式

輸出一個整數,表示雷射經過的不同格子數。

來源

TOI 2026 年 6 月新手組〈雷射探測〉,題目敘述重新撰寫,範例與測資另行設計。 https://tpmso.k12ea.gov.tw/toi/wp-content/uploads/question/202606/Laser.pdf

範例測資

範例輸入 1

3 4
...L
.#..
.R.R

範例輸出 1

8
請先登入後再提交程式碼

討論與題解

載入討論區…

更多