題意:
分為三個Task。 Task1:這是一個排序任務,將每個數列集合的第一個作為樞軸,將原集合劃分成小于、等于、大于樞軸的分布。要求是只在原始集合上面進行改變,且只有O(n)的復雜度。 Task2:任務是制作一個數獨游戲,分為五個步驟。1.讀取游戲網格檔案,進行輸出。2.根據數獨規則檢查插入位置是否有效。3.在第r行進行輸入,如果r行中已經有了這個數字,則回傳原始的網格游戲網格,否則回傳插入了該值的網格(可能會有多個位置能插入該數字)。4.向網格中輸入數字,輸出所有匹配的結果。5.輸入文本形式保存的游戲,輸出正確的數獨結果。 Task3:1.一條街道上相鄰的住戶不會同時購買商品,找到這條街上的最大的營業額。2.按照漢堡包的設定,判斷一個輸入是不是真的漢堡包。
決議:
任務一可以設定幾個指標表示三種數應該插入的位置,這樣遍歷一次陣列就能夠讓它們處在正確的位置。任務二需要處理一個多維陣列,判斷同一行同一列的數字是否相同,同時還有一個檔案讀入的問題,將保存在文本中的數獨游戲載入后輸出正確的數獨結果。任務三第一問可以采取動態規劃,第二問是一個字符匹配的問題,任務可以考慮是三種括號的匹配問題(左括號只能匹配對應括號的右括號)。
涉及知識點:陣列、字符處理
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/20750.html
標籤:非技術區
上一篇:線性表的順序存盤結構
