給定長度為n的字串s,要構造乙個長度為n的字串t。期初,t是乙個空串,隨後反覆進行下列任意操作:
1>從s的頭部刪除乙個字元,加到t的尾部;
2>從s的尾部刪除乙個字元,加到t的尾部。
目標是要構造字典序盡可能小的字串t。
比如當n=6,s=」acdbcb」時,程式應輸出abcbcd。
思路:
將s反轉後的字串定為s』,比較s和s』的字典序,如果s較小則從s開頭取字元加到t的末尾,反之從s末尾取字元加到t的末尾。字典序相同時兩者等價,取哪個都行。
字典排序(lexicographical order)是一種對於隨機變數形成序列的排序方法。其方法是,按照字母順序,或者數字小大順序,由小到大的形成序列。
比如說有乙個隨機變數x包含三個數值。
其字典排序就是{}
找本英漢字典,和那個排序方法一樣。
對於字串,先按首字元排序,如果首字元相同,再按第二個字元排序,以此類推。
如aa,ab,ba,bb,bc就是乙個字典序。
字典序最小問題
給定長度為n的字串s,要構造乙個長度為n的字串t。起初,t 是乙個空串,隨後反覆進行下列 任意 操作。1 從 s 的頭部 刪除乙個 字元,加到 t的 尾部 2 從 s 的尾部 刪除乙個 字元,加到 t 的 尾部 你的 目標是 要構造字典序盡可能小的字串 t。s 只包含大寫英文本母 輸入10 asdf...
貪心 字典序最小問題
貪心 字典序最小問題 題目大意 給你乙個長為n的字串s,並提供下列2種操作 讓你構造出字典序最小的字串t 思路 因為每次我們能直接考慮的只有s的首尾字母,所以每次新增到t中的不是第乙個就是最後那乙個,沒有別的方法,並且都是新增到t的末尾 根據字典序的定義,越靠前的字母越小,則字典序越小,所以我們每次...
字典序最小問題(貪心)
題目大意 輸入n,代表有乙個長度為n的字串。起初,t是乙個空串,隨後反覆進行下列任意操作 從s 的頭部刪除乙個字元,加入到t的尾部 從s的尾部刪除乙個字元,加入到t的尾部 目的是構造字典序盡可能小的字串t 限制條件 1 n 2000,每個字串只包含大寫字母 思路 這題主要要知道當前後一樣時該選哪個,...