討論串[問題]n位整數拿掉m數字得到最大數值
共 5 篇文章
首頁
上一頁
1
下一頁
尾頁

推噓10(10推 0噓 4→)留言14則,0人參與, 最新作者PATRICKSTARS (PatrickStar)時間11年前 (2013/11/13 22:05), 編輯資訊
2
0
0
內容預覽:
Given an integer (not necessary a decimal number) with n digits, we want to. remove m (<=n) digits from this number such that the resulting number is

推噓0(0推 0噓 0→)留言0則,0人參與, 最新作者Leon (Achilles)時間11年前 (2013/11/15 11:10), 編輯資訊
1
0
0
內容預覽:
嗯, 我看了一下.. Range Minimum Query (RMQ) 似乎不太對啊.. 舉個簡單的例子好了(有人已經點出來了). 2-3-4-5-1-1, remove 2 digits. RMQ 應該會得到 2-3-4-5,. 但這題的最佳解應該是 4-5-1-1.. (希望我沒有誤解你的意思
(還有353個字)

推噓2(2推 0噓 0→)留言2則,0人參與, 最新作者CaptainH (Cannon)時間11年前 (2013/11/15 13:04), 編輯資訊
1
0
0
內容預覽:
說明一下, 這裡的 RMQ 是指Maximum.. 以 A=[2,3,4,5,1,1] 為例,六個數字去掉兩個等於保留四個,. 這四位數的最高位數字 一定是來自 A 的前 6-4+1=3 項,. 就是在子陣列[2,3,4]裡找出最大的那個數,也就是 4。. 找到第一個數之後就問題就縮小了,變成"從
(還有402個字)

推噓1(1推 0噓 1→)留言2則,0人參與, 最新作者stimim (qqaa)時間11年前 (2013/11/15 13:49), 編輯資訊
0
0
0
內容預覽:
Leon 的作法和我的應該是一樣的,. 假如現在的字串是. a_0 a_1 a_2 ... a_n. 而我們只打算刪掉一個數字,. 那我們刪的一定是第一個 a_i , s.t. a_i < a_{i + 1}. 如果不存在這樣的 i ,那我們就刪 a_n. 如果我們要刪掉兩個數字,可能很容易的證明.
(還有583個字)

推噓0(0推 0噓 0→)留言0則,0人參與, 最新作者nilson847552 (lalala)時間11年前 (2013/11/22 02:27), 編輯資訊
0
0
0
內容預覽:
從最高位往個位掃. 當目前數字 < 下一個. 則捨棄目前數字. 若下一個沒有數字了. 也捨棄目前數字. 虛擬碼. int f (int input, int m){. LinkedList l;. //雙向linked list l. //從頭到尾是高位到低位digit. if(m >= l.siz
(還有487個字)
首頁
上一頁
1
下一頁
尾頁