Re: [理工] 107台大資演對答案

作者: Moderator (ㄒㄒㄒㄒㄒㄒㄒㄒㄒㄒㄒx)   2020-01-24 00:47:29
: http://0rz.tw/fLPOZ
: 題目PDF如上
又來問這張考卷>"<
想請問題號V.a.2
題目說要用O(n^2)的時間
以一個雙邊queue(dequeue)製造max alternative sum
作者: cossetannie (paa)   2020-01-24 01:34:00
我是先選最大的pop之後再挑最小的pop 然後重複 剛好O(n^2) 你那樣的作法也是可以不過題目的input應該是一個deque吧?
作者: gash55025502 (白影弓)   2020-01-24 12:03:00
題目說要對given deque做 你這樣的做法感覺破壞了原本的deque 而且也不一定能夠在原本的deque做出這樣的sequence?一樓的做法不就是題目給的greedy嗎?
作者: FRAXIS (喔喔)   2020-01-24 12:34:00
這題應該要 DP 吧
作者: cossetannie (paa)   2020-01-24 13:30:00
我是挑整個deque的最大最小 題目是看兩個end的元素先取較大的再取較小的
作者: mathtsai (mathtsai)   2020-01-25 02:58:00
定義dp[a][b]為從a到b所能得的最大alternative sumdp[a][b] = max{in[a]+dp[a+1][b], in[b]+dp[a][b-1]}表格: n^2格 , 每格要查另外兩格得到答案 時間O(n^2)_recurrence、boundary condition還要看現在要加還是減寫的時候寫仔細點別漏掉就好題目的deque是給定的,不能改變裡面的順序a的話 隨便給個反例就行了 ex. {5,3,1,2,4}
作者: FRAXIS (喔喔)   2020-01-25 12:32:00
你這樣定義 dp[a][b] 要怎麼考慮 alternative?
作者: mathtsai (mathtsai)   2020-01-25 14:48:00
樓上的疑問是...?定義不清楚嗎?看dp[a][b]是第幾次要取的數字 來決定這次要加還是減要減的話 在上面in[a]、in[b]前面加上"-"就好

Links booklink

Contact Us: admin [ a t ] ucptt.com