これはインタビューの質問です。与えられた整数配列から、その要素の合計の絶対値が最小になる部分列 (連続している必要はありません) を見つけます。
DPの問題のようです。
Let
S1[i]は、a[i]その合計 > 0 およびabs (合計) が最小化される部分シーケンスです。Letは、合計 < 0 でabs (合計) が最小化
S2[i]される部分シーケンスです。a[i]S1[i]if > 0 && < 0のすべてS1[j] + a[i]の最小値j < iS1[j] + a[i]a[i]S2[i]if < 0 && > 0のすべてS2[j] + a[i]の最小値j < iS2[j] + a[i]a[i]
これS1[i]でS2[i]、すべてのインデックスについて、その要素の最小絶対値を持つサブシーケンスを簡単に見つけることができます。
それは理にかなっていますか?