我們都知道挖石油可以發大財,先不論放假能不能挖石油,但總之就是可以發大財沒錯。
現在我們在太平島旁發現了一處特別的石油井,該處蘊藏石油的地方就跟二元搜尋樹(BST)一模一樣。規則就是如果在一處發現石油,那在地下的下一層可能還會發現一處相連的石油蘊藏處,且左側的石油蘊藏量必定比他上一層連接的蘊藏處的量還少,而右側的石油蘊藏量必定比他上一層連接的蘊藏處的量還多。
現在探勘人員推測出這個石油井有 $n$ 個蘊藏處,並且模擬出了這個BST當初插入蘊藏量的順序 $v_0 \sim v_{n-1}$ (別問我為什麼),現在某人想發大財,但是挖太少賺不夠,挖太多帶不回去,只能挖剛剛好的量。所以現在告訴你他想要挖的量,而你必須找出這批石油的深度是在第幾層(定義根節點深度為第 $0$ 層)。
題目為多筆測資輸入。
每一組測資第一行有兩個正整數 $n$、$m$,且 $(n \ge m)$ 。
第二行有 $n$ 個正整數表示 $v_0 \sim v_{n-1}$ (保證所有數字不重複)。
接下來共有 $m$ 行,每一行有一正整數代表要搜尋的石油蘊藏量。
針對每一筆詢問輸出該蘊藏量的深度,若不存在該蘊藏量則輸出 $-1$ 。
10 4 562 727 349 916 7 595 873 516 960 976 562 349 516 6969
0 1 2 -1
全部數字都在int範圍內
編號 | 身分 | 題目 | 主題 | 人氣 | 發表日期 |
沒有發現任何「解題報告」 |