量水問題輸出任一解

2021-10-11 22:54:45 字數 441 閱讀 9158

(1)首先判斷有沒有容器符合題幹的取水量,如果有,則結束,如果沒有則進行操作

(2)如果兩個容器都是空的,則向第乙個容器裡面加滿水,然後將第乙個容器裡面的水加入到第二個容器裡面,在加水前,判斷兩個容器的存水量,進而對加水後的容器的存水量進行修改,如果第乙個容器此時還沒有滿足題幹要求,則判斷第二個容器是不是滿了,如果第二個容器已滿,則將第二個容器裡面的水全部倒出,轉操作(1)

#include

using

namespace std;

intmain()

else

else

if(a != s)}}

}return0;

}

執行結果:

用杯子量水問題通用解法

園子裡有朋友提到這個問題,相信各位都見過這種題,有時面試也會碰到。解題方法有很多,有人靠猜 窮舉 倒推,在倒水次數很多的情況下,就會比較麻煩了。早些年的時候我得出了一種通用而簡單的解此類題目的方法。以乙個5公升乙個6公升杯子倒3公升水為例,這兩個杯子根據裝的水量不同,共有22種狀態,而加水倒水的過程...

關於任一陣列的組合問題

任意給一陣列,如 再任意給乙個值,如35.請從上面的陣列中找出所有的組合,使他們的和等於35.例如對於上面的陣列,所有的組合情況為 35 10 45 17 18 6 9 20 10 35 10 10 17 18 10 10 6 9 20 10 注意,每一種組合中乙個數只能出現一次。include i...

一道有趣的筆試題 水杯量水問題

若干年前,剛進入程式設計行業不久,得到一家公司的筆試機會 其中一題印象深刻 給兩個空量杯,乙個5ml,乙個3ml,加水後,要通過量杯互倒,得到4ml水,求演算法 之前做過乙個人機對戰的遊戲,接觸到決策樹 看到這道題時,第一感覺應該也是可以用樹形資料結構來解決的 雖然它不屬於博弈類的問題。最初考慮,以...