2011-11-22 47 views
0

所以我正在處理一個字的問題,它是這樣的:想法創建一個程序來解決Word Prob

!刪除部分

我不會發布確切的問題或圖表,以防萬一有人無法阻止他們發佈直接答案。

我想爲此編寫一個Java程序,但我無法真正瞭解如何在邏輯上做到這一點。我知道我可以像這樣每平方米的數組開始的:

int square1 = //four sides with each liquid value 

,但我不知道如何將無限的人(這是對角線),或如何繼續當我弄明白。

對此編程邏輯的任何幫助表示讚賞。

+1

您可以先閱讀最大流量問題:http://en.wikipedia.org/wiki/Maximum_flow_problem –

+0

美麗。我從來不會想到有這樣的想法。 – nmagerko

回答

0

我想說,通過每個管道,並記錄最大通過它,這應該是其容量或進入它的最大值的總和的較低。無限的那些只需要把它們全部放入它們中(或者在最初的時候,Integer.MAX_VALUE)。或者您可以使用bool來追蹤它是否無限。或者,只是爲了好玩,Double.POSITIVE_INFINITY

請注意,如果管道中有任何週期,您可能需要循環並更新幾次,直到得到穩定的答案。

編輯:看了一下評論中的最大流量問題並思考它後,我不太確定這是正確的路,因爲我不認爲它說明了分裂電流之間兩個輸出管道。也許歐姆定律的一些遠親,適應水?

+0

我明白你說的是其他行,但不是第一行。如果我記錄最大值,我怎麼能得到低於其容量的東西? – nmagerko

+1

如果具有無限流量的管道只有兩根管道通向它,一個管道的容量爲10,另一個管道的管道數量爲5,實際上可能通過該管道的管道數量最多爲15,因爲它不能進給超過。 – Kevin

相關問題