AI & Data Dreamers練功房
寶箱片場規則
ALGO GATES・演算法關卡・中階・4 題

演算法中階・雙指標與滑動視窗

這一頁是題幹試閱;登入/註冊後每題可以在瀏覽器裡執行、對答案,第一次交對 +10 XP。

  1. 01

    合併兩份已排序時間戳

    中等雙指標

    兩台伺服器各自輸出一份「已由小到大排序」的事件時間戳(整數秒),兩份之間可能有相同的時間戳。請合併成一份由小到大、沒有重複的清單。

    輸入:

    第 1 行:A 的時間戳(空白分隔,已排序,可能為空行)

    第 2 行:B 的時間戳(空白分隔,已排序,可能為空行)

    輸出:一行,合併去重後的時間戳,以空白分隔。

    要求:用雙指標一次走完,不要直接 sorted(set(A + B))。

    範例輸入:

    1 3 5

    2 3 6

    範例輸出:

    1 2 3 5 6

    類型對應:LeetCode「Merge Sorted Array」類(情境與敘述為本平台改寫)。

    輸入請用 input() 逐行讀取(平台不支援 sys.stdin)。執行時平台會把每一行測資回顯在輸出最前面,這是正常的,不用自己印。本題在瀏覽器內以 Pyodide 執行,只用標準函式庫。先把全部輸入讀完再輸出,不要在迴圈裡邊讀邊印(回顯行會插進輸出中間,就對不上答案)。

    作答登入後可作答
  2. 02

    最長不重複事件段

    中等滑動視窗

    使用者行為被編碼成一個字串,每個字元代表一種事件。請找出「不含重複事件」的最長連續片段。

    輸入:一行字串(只含英文字母)

    輸出:兩行

    第 1 行:最長長度

    第 2 行:該片段本身(若有多個同樣長的片段,取最早出現的)

    範例輸入:

    abcabcbb

    範例輸出:

    3

    abc

    類型對應:LeetCode「Longest Substring Without Repeating Characters」類(情境與敘述為本平台改寫)。

    輸入請用 input() 逐行讀取(平台不支援 sys.stdin)。執行時平台會把每一行測資回顯在輸出最前面,這是正常的,不用自己印。本題在瀏覽器內以 Pyodide 執行,只用標準函式庫。先把全部輸入讀完再輸出,不要在迴圈裡邊讀邊印(回顯行會插進輸出中間,就對不上答案)。

    作答登入後可作答
  3. 03

    尖峰 k 分鐘請求量

    中等滑動視窗

    監控系統每分鐘記錄一次請求數。容量規劃要知道「連續 k 分鐘」請求總和最大是多少、從第幾分鐘開始。

    輸入:

    第 1 行:n k

    第 2 行:n 個整數,第 i 個是第 i 分鐘(從 0 起算)的請求數

    輸出:一行「起始分鐘 最大總和」。若有多段同樣大,取起始分鐘最小的。

    要求 O(n):視窗往右移一格時,加上新進來的、減掉移出去的。

    範例輸入:

    5 2

    1 4 2 6 1

    範例輸出:

    2 8

    類型對應:LeetCode「Maximum Average Subarray I」類(情境與敘述為本平台改寫)。

    輸入請用 input() 逐行讀取(平台不支援 sys.stdin)。執行時平台會把每一行測資回顯在輸出最前面,這是正常的,不用自己印。本題在瀏覽器內以 Pyodide 執行,只用標準函式庫。先把全部輸入讀完再輸出,不要在迴圈裡邊讀邊印(回顯行會插進輸出中間,就對不上答案)。

    作答登入後可作答
  4. 04

    最長連續簽到天數

    中等雜湊集合

    學員簽到紀錄是一串「第幾天」的整數,沒有排序、可能重複。請找出最長的連續簽到天數,以及那段的起訖日。

    輸入:一行,空白分隔的整數

    輸出:一行「長度 起始日 結束日」。若有多段同樣長,取起始日最小的。

    要求 O(n):不要先排序。

    範例輸入:

    100 4 200 1 3 2

    範例輸出:

    4 1 4

    類型對應:LeetCode「Longest Consecutive Sequence」類(情境與敘述為本平台改寫)。

    輸入請用 input() 逐行讀取(平台不支援 sys.stdin)。執行時平台會把每一行測資回顯在輸出最前面,這是正常的,不用自己印。本題在瀏覽器內以 Pyodide 執行,只用標準函式庫。先把全部輸入讀完再輸出,不要在迴圈裡邊讀邊印(回顯行會插進輸出中間,就對不上答案)。

    作答登入後可作答