Re: [問題] 連續整數,找出乘積最大?

看板java作者 (0.0)時間17年前 (2008/05/14 19:39), 編輯推噓2(201)
留言3則, 3人參與, 最新討論串5/12 (看更多)
※ 引述《polomoss (小澤)》之銘言: : 其實已經跟JAVA的語法沒有什麼相關~但JAVA版高手眾多 : 且不知道去哪問,如果違反版規,或有更適合的地方我自D : 大概就是 : 使用者給一串整數,要找出它"連續",且乘積最大者 : 例如: : 5 -2 1 -1 最大 5*-2*1*-1 : -1 2 5 最大 2*5 : 大概是這樣 : 不知道有沒有高手可以跟我講想法 : 大概要往哪方面想,或如何著手(不用附上程式碼) : 我只是腦筋有點轉不過來~~不過這跟資料結構好像比較有關係 : 不知道要怎麼去跑這個收尋 恩 我的想法是 : 把輸入的數 分成5群 : A : {X|X<=-1} = { a1, a2, ... , an } , |A|=N where a1 <= ... <= an B : {X|-1<X<1} C : {X|X>=1} = { c1, c2, ... ,cn} , |C| = M 然後 答案就是 : if ( N 是奇數 ){ N-1 M ans = Π Ai * Π Ci ; } i=1 i=1 else { N M ans = Π Ai * Π Ci; } i=1 i=1 m * Π Ai = An * A(n+1) * A(n+2) * ... * Am i=n 恩恩 應該這是你要的答案的算法~~ 其中會有把資料做排序的( sorting )~~ 跟做分群的(這應該用一堆 if-else 和 array 可以處理) 方法 以上是我的想法 雖然沒有提供啥資料結構或是扣的 (汗) -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.116.103.140 ※ 編輯: cai7773 來自: 140.116.103.140 (05/14 19:42)

05/14 21:00, , 1F
原 PO 的問題是要"連續",也就是說要維持原本的次序
05/14 21:00, 1F

05/14 21:13, , 2F
嘿嘿拍謝 = = 我以為是不用連續 囧rz
05/14 21:13, 2F

05/14 23:03, , 3F
這樣沒有連續耶~~不過還是感謝大大分享
05/14 23:03, 3F
文章代碼(AID): #18Aizb-L (java)
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 5 之 12 篇):
文章代碼(AID): #18Aizb-L (java)