所以我正在研究一个单词问题,它就是这样的:
!删除部分
我不会发布确切的问题或图表,以防万一有人无法阻止自己发布直接答案。
我正在尝试用Java编写程序,但我无法真正掌握如何在逻辑上执行此操作。我知道我可以开始为每个方块添加一个数组:
int square1 = //four sides with each liquid value
但是我不知道如何包含无限制的(对角线),或者一旦我搞清楚如何继续。
对此编程逻辑的任何帮助表示赞赏。
答案 0 :(得分:0)
我会说通过每个管道并记录通过它的最大值,它应该是其容量中的较低者或进入它的最大值的总和。然后无限制的只需要总计进入它们(或者,在最开始时,Integer.MAX_VALUE
)。或者您可以使用bool
来跟踪它是否无限。或者,只是为了好玩,Double.POSITIVE_INFINITY
。
请注意,如果管道中有任何循环,您可能需要循环并更新几次,直到您得到稳定的答案。
编辑:看了一下评论中关联的最大流量问题并考虑了它之后,我不太确定这是正确的方法,因为我不认为它解释了两者之间的分流输出管道。也许是欧姆定律的一个遥远的亲戚,适应水?