高中物理是一門難度極高的科目,數不盡的拆國低中低能兒高中生涯的第一次不及格就是奉獻給了物理。信不信由你,每次的物理段考都會有性格扭曲的物理老師以虐待學生為樂,出一些上課沒有教過的東西來刁難學生。
但是全拆國低中的偶像,$\text{BrineTW}$,不這麼認為。
$\text{BrineTW}$ 雖然物理沒有很好,但每次都可以用他的唬爛神力飛越及格線,他大部分時間都沒有在聽課,那他每次都逃離不及格線怪物的秘訣到底是什麼呢?原來 $\text{BrineTW}$ 每次段考前的一節自習課都會把名師 $\text{Salix}$ 的講義看過一遍,然後把答案背下來,考試的時候遇到重複的題目就可以在 $\mathcal O(1)$ 的時間內回答。
一直以來 $\text{BrineTW}$ 都是這樣過生活的,他對自己的物理唬爛程度很有信心,每次補習班打電話過來的時候,$\text{BrineTW}$ 總是很有勇氣的拒絕他,具體來說,流程大概會像這樣:
$\text{BrineTW}$ 熱衷於寫沒有用的程式和題序,所以他寫出了一個程式 $P$,能夠自動接起電話,播放預錄的語音,判定 $|Q|$ 並回傳指定的 $R$。但是沒有人好像不會寫一個可以操作機器人的程式,所以 $\text{BrineTW}$ 把程式簡化成如下。
具體來說,簡化過後的程式如下:
但有一天 $\text{BrineTW}$ 的物理老師 $\text{Salix}$ 打電話到 $\text{BrineTW}$ 家中,因為 $\text{BrineTW}$ 請太多節公假了都沒有來上課,但是很不幸的這通電話被 $\text{BrineTW}$ 的程式攔截到了,更不幸的是,$\text{Salix}$ 遇到了「嗨,兒子」的回應,因此其深感不爽。
但這還不是慘劇發生的主因,整場事件的導火線其實是拆國低中墊神鹽咎社的學術長兼公關 $\text{AaW}$,在確診完後回來上課的第一堂物理課時回頭和 $\text{BrineTW}$ 講了兩句話,可能是因為 $\text{AaW}$ 講話本來就比較激動且大聲,因而使物理老師纖細的耳朵受到重創,因此使物理老師深感不爽,而他想到 $\text{AaW}$ 和 $\text{BrineTW}$ 是拆國低中人文社會資源班的學生,而自己是拆國低中人文社會資源班,所以可以自己獨立出題,搞死這群不知好歹的低能兒,並說出「老師我要把題目出得很難很難來教訓你們喔!」
此時認真聽課且物理段考次次破臺的 $\text{AaW}$ 心中一絲一毫的緊張都沒有,因為他是超級大電神,所以他反而很期待自己段考時透過很難的物理考卷來和同學拉開分數差距並打爛所有人,順利錄取自己心目中的臺灣大學資訊工程學系。
但是請了太多公假,該學段沒有上半節物理課的 $\text{BrineTW}$ 此時慌了,因為他深知老師會利用自己沒有上課這件事情來對他的分數造成傷害,所以他現在要來惡補物理課的錄影檔。他在影片中看到了一題,聽完老師的講解後還是聽不太懂,所以他決定自己寫一個程式來模擬。
該題的題目敘述如下:
在一個無限大的表面上有一個可以往任意方向射出一道高能光束的光源 S,在表面下有 $N$ 層互相平行的不同介質,每層介質都有不同的折射率,請問哪些介面可以產生全反射呢?
聰明的 $\text{BrineTW}$ 雖然沒上過物理課,但他知道一個至關重要的物理定律來解決這個問題:Snell's Law,該定律主要在說明,當有一道光束從折射率為 $n_1$ 的介質射到折射率為 $n_2$ 的介質時,入射角 $\theta_1$ 和折射角 $\theta_2$ 滿足下列關係式:$$n_1\sin\theta_1 = n_2\sin\theta_2$$ 而產生全反射的條件就是 $\theta_1 > \theta_c$,而 $\theta_c$ 符合 $n_1\sin\theta_c = n_2\sin 90^\circ$
因為你實在是太電了,所以走投無路的 $\text{BrineTW}$ 拜託您寫一個程式幫助他解決這個問題,$\text{BrineTW}$ 會告訴你光源所在的介質的折射率還有每層介質的折射率,請你回答哪些介面可以產生全反射。
$\text{BrineTW}$ 會先告訴你一個整數 $N$,代表表面底下會有幾層介質,接下來的第一行會有一個整數 $n_s$,代表光源所在的介質的折射率,接下來 $N$,每行會有一個整數 $n_i$ 代表第 $i$ 層的折射率。
$0 < N \le 2 \times 10^5 \\$
$0 < n_s \le 2^{31} \\$
$\forall n_i, 0 < n_i \le 2^{31} \\$
請回答所有能夠產生全反射的交界面,以兩個交界面的編號表示,如 $(s, 1)$ 或 $(2, 3)$,每個介面中間換一行
No. | Testdata Range | Score |
---|