d732-二分搜尋法
題目解析
這道題目要求在一個嚴格遞增的數列中,檢查多個詢問數是否存在於數列中,如果存在則返回其在數列中的位置,否則返回 0。
解題方向
- 使用二分搜尋法:
- 因為數列是嚴格遞增的,所以可以使用二分搜尋法來有效地查找某個數是否存在於數列中。
- 二分搜尋法的時間複雜度是 O(logn),適合用來處理大量數據的查找問題。
- 處理多個詢問數:
- 對於每個詢問數,使用二分搜尋法在數列中查找其位置,並輸出結果。
程式解析
範例輸入
範例輸出
- 輸入讀取:
- 第一行讀取數列長度
𝑛
和詢問數 𝑘
。
- 第二行讀取長度為
𝑛
的嚴格遞增數列。
- 第三行讀取
𝑘
個詢問的整數。
- 二分搜尋法查找:
- 對每個詢問數使用二分搜尋法查找其在數列中的位置,若找到則返回其索引(索引從
1
開始),若未找到則返回 0
。
- 輸出結果:
完整程式碼