Re: [問題] 連續整數相乘,求乘積最大?
看板Prob_Solve (計算數學 Problem Solving)作者denehs (DE)時間16年前 (2008/05/19 12:06)推噓3(3推 0噓 5→)留言8則, 3人參與討論串6/6 (看更多)
※ 引述《aknow (嘎嘎)》之銘言:
: 上面的都對
: 不過在這問題裡有個很重要的地方
: 那就是
: 不看正負號的話, 整數都是越乘越大!!!
: 所以大略是
: 只要簡單找一段偶數個負號
: 然後讓這段越長就越好
: 不考慮一些boundary condition
: 只提大概
: 方法如下
: 看到0就切斷 O(n)
: 所以現在有一段段沒有0的
: 對於一段找最大的方法
: 1. 長度為1, 就是這個
: 2. 頭到尾數一次
: 如果有偶數個負號
: 那這整個就是最大的
: 3. 若是奇數個負號
: 左邊少幾個讓他變成偶數個
: 或是右邊少幾個
: 選一個乘起來最大的
: O(n)
反例:
-1, 1, 1, 1, 1, 1, -1, 1, -1, 100000
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.112.30.37
推
05/19 12:17, , 1F
05/19 12:17, 1F
→
05/19 12:18, , 2F
05/19 12:18, 2F
推
05/19 13:50, , 3F
05/19 13:50, 3F
→
05/19 13:51, , 4F
05/19 13:51, 4F
推
05/19 14:47, , 5F
05/19 14:47, 5F
→
05/19 14:49, , 6F
05/19 14:49, 6F
→
05/19 14:49, , 7F
05/19 14:49, 7F
→
05/19 15:07, , 8F
05/19 15:07, 8F
討論串 (同標題文章)
Prob_Solve 近期熱門文章
PTT數位生活區 即時熱門文章