前往
大廳
主題

ZeroJudge - f820: 極限運動 (Sports) 解題心得

Not In My Back Yard | 2021-05-11 00:00:09 | 巴幣 0 | 人氣 299

題目連結:


題目大意:
輸入第一列給定一正整數 N (2 ≦ N ≦ 30),代表滑雪場有 N 個位置(由左至右為每個位置編號為 1 ~ N)。接著一列給定 N 個整數 X (0 ≦ X ≦ 100000),代表由左至右的每個位置之高度。最後一列給定一正整數 T (1 ≦ T ≦ 30),代表小王從哪個位置出發(由左至右數來第 T 個位置)。

小王會從位置 T 往左或是往右滑下,他會一直滑到下一個位置的高度比現在的高才會停止。而決定要往左或是往右的基準是看往哪個方向最後停留的位置最低就往哪裡滑。

試問小王最後停留的位置為何?



範例輸入:
範例輸入 #1
10
1 2 5 2 9 1 4 3 3 3
5

範例輸入 #2
5
1 2 3 4 5
5

範例輸入 #3
7
5 1 1 6 3 3 2
4

範例輸入 #4
6
4 1 2 3 5 2
1


範例輸出:
範例輸出 #1
6

範例輸出 #2
1

範例輸出 #3
2

範例輸出 #4
2


解題思維:
就是直接地從位置 T 往左跟往右一直跑,直到停下(或是碰到邊界,例如跑到了位置 1 或是位置 N,這兩者都沒有下一個位置)。

然後看往左最後停下的位置以及往右最後停下的位置,兩者何者高度較低,就輸出何者的位置編號。




此次分享到此為止,如有任何更加簡潔的想法或是有說明不清楚之地方,也煩請各位大大撥冗討論。

創作回應

更多創作