水を汲む問題                     戻る

問題
     容積が4リットルと7リットルの容器を使って、
    2リットルの水を汲むには、どうしたらよいか?
     ただし、容器はそれぞれ1個のみとする。
 

 この問題は、とても単純、素朴で親しみやすい。小学生でも、考えてみようと思うような問
題である。しかし、この問題の奥には、実は、高等数学が深く根付いている。

 その背景を知れば、この問題のからくりが見えてくる。
 4リットルの容器をA、7リットルの容器をBとする。Aに水を汲んでBにうつし、途中でBが
一杯になったら、それを捨てて、Aに残った水をBにうつす。
(この操作を一つの段階と考える。)

 
  左のように操作すれば、
 4段階で目的の2リットルを得ることができる。




  私自身、このような問題に対して、今まで数学的にとらえることはなかった。
上記のように試行錯誤して、解決にいたっていた。しかし、この問題の奥深くには、深遠なる
整数論の世界が渦巻いていることを、最近知る機会があった。

 このページでは、この問題のからくりと整数論との関係について、まとめてみたい。

 上記の操作を、もう一度おさらいしてみよう。

 Bが一杯になるたびに、7リットルが捨てられるので、4,8,12,16,20,24,・・・から、
7の倍数を引いて、7より小さくした数(即ち、7で割った余り)4,1,5,,6,3,・・・が、各
段階でBに残る量である。

 従って、X段階目にBに残る水の量が2リットルということは、4Xを7で割った余りが2にな
るということである。・・・・・・・・・・(*)

 ここで、合同式を紹介する。合同式は、整数論をとても見やすいものにしてくれる魔法の
道具である。整数論が飛躍的に発展した原動力の一つといっても過言ではないと、私的に
は思う。

合同式  整数 a、b に対して、その差 a−b が、自然数 m で割り切れるとき、

     a と b は m を法として合同であるといい、記号 a≡b (mod m) で表す。

 つまり、m で割った余りが同じ数は、同じ(様な)数とみなそうということである。

 合同式については、次の性質が成り立つ。

(反射律)  a≡a (mod m)
(対称律)  a≡b (mod m)ならば、b≡a (mod m)
(推移律)  a≡b (mod m)、b≡c (mod m)ならば、a≡c (mod m)
 
 合同式について、次のような演算が可能である(定義より明らか)。

        a≡b (mod m)、c≡d (mod m)ならば、a+c≡b+d (mod m)
                                   a−c≡b−d (mod m)
                                     ac≡bd (mod m)

例 10≡1 (mod 9)なので、100≡1 (mod 9)、1000≡1 (mod 9)、・・・
  一般に、(10のn乗)≡1 (mod 9)が成り立つ。

 この事実を用いれば、654321を9で割った余りを求めることは、とても易しい。
    654321≡6+5+4+3+2+1≡21≡2+1≡3 より、余りは3となる。

 この合同式の記号を用いれば、(*)のことは、簡単に、 4X≡2 (mod 7)
と表される。あとは、この方程式を解けばよい。

 方程式の解法について、次の事実は有名である。

定理  ac≡bc (mod m)で、(c,m)=1のとき、a≡b (mod m)

定理  aX≡b (mod m)は、(a,m)=1のとき、(mを法として)ただ一つの解をもつ。

 方程式 4X≡2 (mod 7)は、いろいろな方法で解かれる。

(ユークリッドの互除法利用)
  4X≡2 (mod 7)より、4X−7Y=2
  ユークリッドの互除法により、7=4・1+3、4=3・1+1なので、
   1=4+3・(−1)=4+(7−4・1)・(−1)=4・2−7・1
   よって、4・4−7・2=2   この式と 4X−7Y=2 を辺々引いて、
        4(X−4)=7(Y−2)
   従って、X−4=7K、Y−2=4K (Kは0以上の整数)より、
  求める解は、X=7K+4、Y=4K+2 (Kは0以上の整数)

(注) ここで、Xが最小となるのは、K=0のとき。よって、X=4となり、4段階目で水汲み
   問題は解決する。

(合同式の性質利用)
・・・多分、この解法が一番シンプルで、実戦的あろう。
    4X≡2 (mod 7)
    7X≡0 (mod 7)・・・・この式はXが何であっても、常に成り立つ。(テクニック!)
   4X≡2 (mod 7)の両辺を2倍して、8X≡4 (mod 7)
   この式と、7X≡0 (mod 7)を辺々引いて、X≡4 (mod 7)


   (追記) 平成23年3月3日付け

     上記では、4リットルの容器に水を汲み、満杯になった7リットルの容器の水を捨て
    て、最終的に7リットルの容器だけに2リットルの水を残す方法をとっていますが、逆
    にやってはどうか?とHN「数学愛好者」さんからアドバイスをいただいた。

 
  左のように操作すれば、
 2段階で目的の2リットルを
 得ることができる。

     また、「4X≡2 (mod 7)」を解くよりも、「7X≡2 (mod 4)」を解く方が容易であ
    る。

     実際に、 7X≡2 (mod 4) で、4X≡0 (mod 4) より、8X≡0 (mod 4)
    よって、 X≡−2 (mod 4) すなわち、 X≡2 (mod 4) から、2段階目で水汲
    み問題は解決する。


(連分数利用)・・・連分数は、ユークリッドの互除法に直結しており、その考え方は、ギリシャ
           からあるものである。不定方程式や実数の分数近似などに用いられる。

  分数の連分数表示
 このとき、右辺の連分数展開の途中で区切った値  を用いて、

             7・1−4・2=−1
が成り立つ。
 この式を利用して、(ユークリッドの互除法利用)の場合と同様に解けばよい。

一般に、次の定理が知られている。

定理 と連分数展開するとき、
   次の等式が成り立つ。
           
   但し、P=1、Q=0 とする。

 証明は、P=q−1+P−2、Q=q−1+Q−2 であることから、明らかであろう。

例  43X−30Y=1 を解け。
    なので、 となる。
  よって、定理により、
     30・10−43・7=−1 すなわち、 43・7−30・10=1
  従って、X=30t+7、Y=43t+10 ( t は整数)と書くことができる。

(注) ユークリッドの互除法を用いても、同様の式は作れるが、連分数展開した方が、断然
   速く解に到達することができると思う。

(参考文献:山崎圭次郎 著 数を考える(岩波書店)
        和田秀男 著 数の世界 整数論への道(岩波書店)
        北村泰一 著 数論入門(槙書店))

(追記) 上記により、ユークリッドの互除法における連分数展開の有用性が確認された。
     ここでは、連分数展開された分数を、元の形に直す裏技を紹介したい。

  上記の例のように、  と比較的展開の項が少ない場合は、計算も
 容易であるが、展開の項が多いと、通分・逆数・通分・...と目が回ってしまう。

  裏技に用いる公式は、

       =qn-1+Pn-2  、 Q=qn-1+Qn-2   (n ≧3)

       1=11122212+1

例 次の連分数展開が表す分数を求めよ。

       

  公式により、
         

       (上の表では、Q2、Q3、P3 の計算方法が示されている。以下同様である。)

   したがって、求める分数は、
                      

(参考文献:石谷 茂 著 現代における古典整数論 (現代数学社))

(追々記) 1995年作のアメリカ映画「ダイ・ハード3」に、この水を汲む問題が、ブルース・
      ウィルスが演ずる刑事に犯人側からの問題として、次のように出されている。

       3リットルと5リットルの容器が、一つずつある。
      この容器を用いて、4リットルを汲み出せ。
           

 この問題に対しては、上記のような数式処理は望むべくもなく、映画では試行錯誤で何と
か解答を探し当てていた。

 3リットルの容器に水を汲んで、2回、5リットルの容器に移すと、2回目には、3リットルの
容器に水が1リットル余る。5リットルの容器を空にして、その1リットルを5リットルの容器に
移す。そこに、3リットルの容器の水を5リットルの容器に入れれば、ちょうど4リットルとなる。

 ブルース・ウィルス扮する刑事が、 3X≡4 (mod 5) という合同式を、
    6X≡3 (mod 5)、5X≡0 (mod 5) から辺々引いて、X≡3 (mod 5)
と解いて、3回で可能ということを知るよしもない。

 1作目の「ダイ・ハード」は、手に汗握るアクションの連続で、画面に引き込まれていったが、
3作目となる、この「ダイ・ハード3」はB級映画並に感じられた。唯一この水を汲む問題にだ
けは、注目をしたが...。


(追記) 平成22年5月16日付け

 この「ダイ・ハード3」で出された問題が、

  NHK教育TV「テストの花道」(毎週月曜放送 18:55〜19:25)

で出題された。

 また、この番組では次のような興味ある問題も出題された。

 140g の塩と7g 、2g の重りが1個ずつある。天秤を3回だけ使って、90g と50g
の塩に分けよ。


 考え方はいくつかあり、以下は、そのうちのひとつ。

(解) 天秤1回目: 70g と70g の塩に分ける。

    天秤2回目: 70g の塩を、35g と35g の塩に分ける。

    天秤3回目: 35g の塩を、

                7g の重り+(15g の塩)、2g の重り+(20g の塩)

             に分ける。

  よって、 70g の塩と20g の塩で、90g の塩、35g の塩と15g の塩で、50g の塩が

 できる。 (終)

(コメント) 柔軟な発想が必要かも...。


(追記) 平成22年2月11日付け

 2月9日付けで、当HPの掲示板「出会いの泉」に当HPがいつもお世話になっている GAI
さんが「超難問」と題して次の問題を出題された。

 40リットルの油が入った容器から空の11リットル容器3個と9リットル
容器1個を使って10リットルずつ4つに分ける方法を編み出して下さい。
           

 終了時4つの容器に振り分けられているものとし、他に油を移し換える容器は無いものと
する。この1リットルの差が大きな障害になることが体験できます。

 この問題に対して、同日付けで、凡人さんとらすかるさんが挑戦され解決された。以下の
解はお二方の解をまとめたものである。

 以下で、(40リットル,11リットル,11リットル,11リットル,9リットル)の順になっています。

(40,0,0,0,0) → (29,11,0,0,0) → (29,2,0,0,9) → (38,2,0,0,0) → (27,2,11,0,0) → 

(27,2,2,0,9) → (27,4,0,0,9) → (36,4,0,0,0) → (25,4,11,0,0) → (25,4,2,0,9) → 

(25,6,0,0,9) → (34,6,0,0,0) → (23,6,11,0,0) → (23,6,2,0,9) → (23,8,0,0,9) → 

(32,8,0,0,0) → (32,0,0,0,8) → (21,0,11,0,8) → (10,0,11,11,8) → (0,10,11,11,8) → 

(0,10,10,11,9) → (11,10,10,0,9) → (11,10,10,9,0) → (2,10,10,9,9) → (2,10,10,11,7) → 

(13,10,10,0,7) → (13,10,10,7,0) → (4,10,10,7,9) → (4,10,10,11,5) → (15,10,10,0,5) → 

(15,10,10,5,0) → (6,10,10,5,9) → (6,10,10,11,3) → (17,10,10,0,3) → (17,10,10,3,0) → 

(8,10,10,3,9) → (8,10,10,11,1) → (19,10,10,0,1) → (19,10,10,1,0) → (10,10,10,1,9) → 

(10,10,10,10,0)
                                             以上 40手

  (注) 平成23年3月2日付けで、HN「数学愛好者」様より手順の誤りのご指摘をいた
     だきました。上記手順は訂正済みのものです。数学愛好者様に感謝します。


 上記では、手順が40手かかっているが、当HPがいつもお世話になっているHN「GAI」さ
んがもっと短い手数の解を見いだされた。(平成23年3月3日付け)

(40,0,0,0,0) → (29,11,0,0,0) → (18,11,11,0,0) → (18,2,11,0,9) → (18,2,11,9,0) → 

(18,0,11,9,2) → (18,0,4,9,9) → (18,9,4,9,0) → (18,7,4,11,0) → (18,7,0,11,4) → 

(18,7,0,6,9) → (18,11,0,6,5) → (18,11,5,6,0) → (18,2,5,6,9) → (18,0,5,8,9) → 

(18,9,5,8,0) → (18,3,11,8,0) → (18,3,2,8,9) → (18,3,0,10,9) → (18,11,0,10,1) → 

(18,11,1,10,0) → (18,2,1,10,9) → (27,2,1,10,0) → (27,0,1,10,2) → (16,11,1,10,2) → 

(16,4,1,10,9) → (25,4,1,10,0) → (25,0,1,10,4) → (14,11,1,10,4) → (14,6,1,10,9) → 

(23,6,1,10,0) → (23,0,1,10,6) → (12,11,1,10,6) → (12,8,1,10,9) → (21,8,1,10,0) → 

(21,0,1,10,8) → (10,11,1,10,8) → (10,10,1,10,9) → (10,10,10,10,0)

                                              以上 38手

(コメント) 手順が巧妙ですね!GAIさんに感謝します。


 FNさんからのコメントです。(平成23年3月3日付け)

 GAIさんが、「水を汲む問題」について、38手の解を書かれました。38手は最短のような
気がします。証明は無理として、状況証拠ぐらいは見つけられないかと思います。

 問題の最終状態だけを弱めた問題を考えます。10リットルを4個作るというのを次のよう
に変えます。

 (1) 10リットルを1個つくる。(1つが10リットルであれば他はどうでもよい)

 (2) 10リットルを2個つくる。(2つが10リットルであれば他はどうでもよい)

 GAIさんの解では、(1)は18手でできています。18手は最短でしょうか。11リットルの容器
が1個しかないときも18手でできます。そしてこの場合は、18手が最短であることが多分証
明できます。11リットルの容器が余分にあっても18手は短かくできないかということです。

 GAIさんの解の22手目を変えれば、(2)は22手でできます。22手は最短でしょうか。この
問題で、22手が最短となると、状況証拠的には38手が最短になります。


 攻略法さんが、手順を整理されました。(平成23年3月4日付け)

 1つ目の11リットルの容器を用意して、容器の容量は、

   容器1(40)>容器2(11)>容器3(9)

とする。次の手順で「油の移動」を試みる。

(手順) 容器2は空か?
    −はい→ 容器1からいっぱいに注ぐ(汲む)
    −いいえ→ 容器3はいっぱいか?
             −はい→ 容器1に戻す(戻す)
             −いいえ→ 容器2からいっぱいに注ぐ(移す)
解は、18手

  (40,11, 9)  11*x≡a mod 9
 0: 40 0 0  11*0≡0 mod 9
 1: 29 11 0
 2: 29 2 9  11*1≡2 mod 9
 3: 38 2 0
 4: 38 0 2
 5: 27 11 2
 6: 27 4 9  11*2≡4 mod 9
 7: 36 4 0
 8: 36 0 4
 9: 25 11 4
10: 25 6 9  11*3≡6 mod 9
11: 34 6 0
12: 34 0 6
13: 23 11 6
14: 23 8 9  11*4≡8 mod 9
15: 32 8 0
16: 32 0 8
17: 21 11 8
18: 21 10 9  11*5≡1 mod 9

2つ目の11リットルの容器を用意して、2つ目の10リットルをつくる。

   容器1(40)>容器2(11)>容器3(11)>容器4(9)

   (40,11,11, 9)
 18: 21 10 0 9
 19: 10 10 11 9

3つ目の11リットルの容器を用意して、上記の受け皿とする。

   容器1(40)>容器2(11)>容器3(11)>容器4(11)>容器5(9)

   (40,11,11,11, 9)
 19: 10 10 0 11 9
 20: 0 10 10 11 9

最後に、残りの2つの10リットルをつくる。

 21: 9 10 10 11 0 → 1: に帰着
 22: 9 10 10 2 9 → 2:
 23: 18 10 10 2 0 → 3:
 24: 18 10 10 0 2 → 4:
 25: 7 10 10 11 2 → 5:
 26: 7 10 10 4 9 → 6:
 27: 16 10 10 4 0 → 7:
 28: 16 10 10 0 4 → 8:
 29: 5 10 10 11 4 → 9:
 30: 5 10 10 6 9 →10:
 31: 14 10 10 6 0 →11:
 32: 14 10 10 0 6 →12:
 33: 3 10 10 11 6 →13:
 34: 3 10 10 8 9 →14:
 35: 12 10 10 8 0 →15:
 36: 12 10 10 0 8 →16:
 37: 1 10 10 11 8 →17:
 38: 1 10 10 10 9 →18:
 39: 10 10 10 10 0
            以上 39手

 さらに、攻略法さんからの続報です。(平成23年3月5日付け)

<機械的な手順で近似解を得る>

 1つの10リットルを求める「18手」に帰着させれば、40リットルは高々18×3=54手程
度で完了する。実際は、2つ目の10リットルは「18手」を使わなくてもつくることができる。

 また、「18手」の手順は、 a>b のとき、 ax≡r  (mod b)を求める作業となる。

同様にショートカット可能な部分があるかどうか調べてみた。

●30リットル・・・解は、22手

  (30,11,11, 9)
 0: 30 0 0 0

2つを用意して、1つ目の10リットルをつくる。
 1: 19 11 0 0
 2: 10 11 0 9
 3: 0 11 10 9

最後に、残りの2つの10リットルをつくる。
 4: 9 11 10 0 → 1: に帰着
 5: 9 2 10 9 → 2: に帰着
 6: 18 2 10 0
 7: 18 0 10 2
 8: 7 11 10 2
 9: 7 4 10 9
 10: 16 4 10 0
 11: 16 0 10 4
 12: 5 11 10 4
 13: 5 6 10 9
 14: 14 6 10 0
 15: 14 0 10 6
 16: 3 11 10 6
 17: 3 8 10 9
 18: 12 8 10 0
 19: 12 0 10 8
 20: 1 11 10 8
 21: 1 10 10 9 → 18: に帰着
 22: 10 10 10 0

●50リットル・・・解は、45手

(50,11,11,11,11, 9)
0: 50 0 0 0 0, 0

30リットルの手順の要領で、2つの10リットルをつくる。
1: 39 11 0 0 0 0
2: 30 11 0 0 0 9
3: 19 11 0 11 0 9
4: 19 11 0 11 9 0
5: 10 11 0 11 9 9
6: 0 11 10 11 9 9
7: 9 11 10 11 9 0 → 変則 1:〜5:
8: 9 2 10 11 9 9
9: 18 2 10 11 9 0
10: 18 2 10 2 9 9
11: 18 4 10 0 9 9
12: 27 4 10 0 0 9 → 6: に帰着
13: 36 4 10 0 0 0
14: 36 0 10 0 0 4
15: 25 11 10 0 0 4
16: 25 6 10 0 0 9
17: 34 6 10 0 0 0
18: 34 0 10 0 0 6
19: 23 11 10 0 0 6
20: 23 8 10 0 0 9
21: 32 8 10 0 0 0
22: 32 0 10 0 0 8
23: 21 11 10 0 0 8
24: 21 10 10 0 0 9 → 18: に帰着

3つ目を用意して、3つ目の10リットルをつくる。
25: 10 10 10 0 11 9

4つ目を用意して、上記の受け皿とする。
26: 0 10 10 10 11 9

最後に、残りの2つの10リットルをつくる。
27: 9 10 10 10 11 0 → 1: に帰着
28: 9 10 10 10 2 9 → 2: に帰着
29: 18 10 10 10 2 0
30: 18 10 10 10 0 2
31: 7 10 10 10 11 2
32: 7 10 10 10 4 9
33: 16 10 10 10 4 0
34: 16 10 10 10 0 4
35: 5 10 10 10 11 4
36: 5 10 10 10 6 9
37: 14 10 10 10 6 0
38: 14 10 10 10 0 6
39: 3 10 10 10 11 6
40: 3 10 10 10 8 9
41: 12 10 10 10 8 0
42: 12 10 10 10 0 8
43: 1 10 10 10 11 8
44: 1 10 10 10 10 9 → 18: に帰着
45: 10 10 10 10 10 0

●40リットル・・・解は、41手

合同式は次のようになる。

  11*1≡2 mod 9
  11*2≡4 mod 9
  11*3≡6 mod 9
  11*4≡8 mod 9
  11*5≡1 mod 9≡10 mod 9
  11*6≡3 mod 9
  11*7≡5 mod 9
  11*8≡7 mod 9
  11*9≡0 mod 9≡9 mod 9

 作業は、一種の計算機に相当する。「容器」が変数、「移し替え」が合同式の演算となる。

 したがって、1つの11リットル容器で上からの合同式を、もう2つの11リットル容器で下か
らの合同式を計算すると、

 (40,11,11,11, 9)
0: 40 0 0 0 0

Step 1
1: 29 11 0 0 0
2: 29 2 0 0 9 11*1≡2 mod 9
3: 29 2 0 9 0
4: 20 2 0 9 9
5: 20 2 0 11 7 11*8≡7 mod 9
6: 20 2 7 11 0
Step 2
7: 20 2 7 2 9
8: 20 4 7 0 9 11*2≡4 mod 9
9: 20 4 11 0 5
10: 20 4 11 5 0 11*7≡5 mod 9
Step 3
11: 20 4 2 5 9
12: 20 6 0 5 9 11*3≡6 mod 9
13: 20 6 0 11 3
14: 20 6 3 11 0 11*6≡3 mod 9
Step 4
15: 20 6 3 2 9
16: 20 8 3 0 9 11*4≡8 mod 9
17: 20 8 11 0 1
18: 20 8 11 1 0 11*5≡1 mod 9≡10 mod 9
Step 5
19: 20 8 2 1 9
20: 20 10 0 1 9 11*5≡1 mod 9≡10 mod 9
21: 20 10 9 1 0
22: 20 10 10 0 0
Step 6 ・・・・・ 最後に、残りの2つの10リットルをつくる。これは、「18手」に帰着する。
23: 9 10 10 11 0
24: 9 10 10 2 9
25: 18 10 10 2 0
26: 18 10 10 0 2
27: 7 10 10 11 2
28: 7 10 10 4 9
29: 16 10 10 4 0
30: 16 10 10 0 4
31: 5 10 10 11 4
32: 5 10 10 6 9
33: 14 10 10 6 0
34: 14 10 10 0 6
35: 3 10 10 11 6
36: 3 10 10 8 9
37: 12 10 10 8 0
38: 12 10 10 0 8
39: 1 10 10 11 8
40: 1 10 10 10 9
41: 10 10 10 10 0


 FNさんからのコメントです。(平成23年3月5日付け)

 攻略法さんが、18手+2手+18手+1手=39手の手順を書かれました。18手のところ
は、11リットル升を1個だけ使った手順で、2つの18手は同じ手順です。すっきりしたわか
りやすい手順です。GAIさんの手順38手より1手だけ長いのが多少気になりますが...。

 しかし、この1手の違いは置いておいて、11リットル升は1個しか使わない18手の手順を
基本に、それに若干の手順をつけ足して最短ではなくてもいいから最短に近い手順を捜す
方向(攻略法さんがやられている方向ですが...)を考えるのがよさそうです。

 まず、18手が短縮できないことは、「クイズ&パズル」の「水の分配」で書いてあるグラフ
で考えれば証明できると思います。

 3リットルと5リットルの升を使って、4リットルを汲みだす問題も含めて、少し一般化した形
で書きます。

 n は、正の偶数とする。n+1リットルの升1個とn−1リットルの升1個を使って、
nリットルの水を汲みだす手順は最短2n−2手であることを示せ。



 FNさんが、上記の問題を考察されました。(平成23年3月10日付け)

 n+1リットルの升をA、n−1リットルの升をBとし、Aに x リットル、Bに y リットルの水が
入った状態を ( x , y ) で表す。水がたくさん(2nリットル以上)入った容器をCとする。

 許される操作で意味のある操作は、

  A、Bを一杯にすること 、 A、Bを空にすること

で、具体的に書けば、次のようになる。その操作により、状態 ( x , y ) がどうなるかを合わ
せて書くと、次の通りである。

 1 Aの水をCに入れてAを空にする。
    ( x , y )→( 0 , y )

 2 Cの水をAに入れてAを一杯にする。
    ( x , y )→( n+1 , y )

 3 Bの水をCに入れてBを空にする。
    ( x , y )→( x , 0 )

 4 Cの水をBに入れてBを一杯にする。
    ( x , y )→( x , n−1 )

 5a Aの水をBに入れてBを一杯にする。
    ( x , y )→( x+y−n+1 , n−1 )  if x+y≧n−1

 5b Aの水を全部Bに入れてAを空にする。
    ( x , y )→( 0 , x+y )  if x+y≦n−1

 6a Bの水をAに入れてAを一杯にする。
    ( x , y )→( n+1 , x+y−n−1 )  if x+y≧n+1

 6b Bの水を全部Aに入れてBを空にする。
    ( x , y )→( x+y , 0 )  if x+y≦n+1

 状態 ( x , y ) を座標平面上で表すことにする。

 O (0 ,0)、A (n+1,0)、B (0,n−1)、C (n+1,n−1) とすると、状態 ( x , y ) は、長
方形OACBの周上の格子点であり、上の操作はそれぞれ

 1 左に平行移動してOB上の点に移る。
 2 右に平行移動してAC上の点に移る。
 3 下に平行移動してOA上の点に移る。
 4 上に平行移動してBC上の点に移る。
 5 傾き−1の直線上を移動して、5aのとき、BC上の点、5bのとき、OB上の点に移る。
 6 傾き−1の直線上を移動して、6aのとき、AC上の点、6bのとき、OA上の点に移る。

即ち、縦・横・斜め(ただし傾き−1の方向のみ)に移動して、長方形OACBの周上の点に移
ることのみが許される。初期値は明示してないが、当然、O ( 0 , 0 )とする。

 初期値が、C ( n+1 , n−1 ) の場合も同じ結果になる。

 OまたはCから移れる点は、AまたはBである。最短な手順を考える場合、この2点以外か
ら移れる点は1点しかない。

 まず、A、Bから移れる点は3個あるが、2個は、O、Cであるから初期値に戻るので無意味。
従って、1点にしか移れない。4頂点以外の場合は、4通りあるが、2個は頂点であり、最短
手順としては無意味。もう1点はその点から来たのだからやはり最短にはならず1点しかな
い。

 ということで、初手以外はすべて必然手になる。

 初手のみ選択の余地があり、A (n+1,0)かB (0,n−1)かである。

 初手がAだとすると、2手で、(2,n−1)、6手で、(4,n−1)、10手で、(6,n−1)、・・・ と
なる。

 2,6,10,・・・ の第N項は、2+4(N−1)=4N−2 であるから、n=2N とすると、

( n , n−1 )=( 2N , n−1 )に行くのに4N−2=2n−2手かかる。

 初手でBに行った場合の手数を同様に計算してもいいが、次のように考えてもいい。

 上の操作を更に続けていくと、長方形上の格子点を、C以外すべて通ってOに戻る。格子

点の数は4nであるから、4n−1手でOに戻る。だから逆回りに、即ち、初手をBとしておれ

ば、4n−1−(2n−2)=2n+1手で、( n , n−1 )に至る。その1手前に、 ( n , 0 )に行

っているから、2n手であるが、こちらの方が2手多い。

 従って、最短手数は、2n−2手である。

 升が3個以上ある場合に、補題的に使うことを意識した表現にしているが、升が2個の場
合の完結した定理的な表現としては次のほうがいい。

 n は、正の偶数とする。2nリットルの水を、n+1リットルの升1個とn−1リットルの
升1個を使って、2等分するのに必要な最短手数は、2n−1手である。


 これを、次の形に一般化することはできるでしょうか。

 n、m は、互いに素な奇数とする。n+mリットルの水を、nリットルの升1個とmリッ
トルの升1個を使って、2等分するのに必要な最短手数は、n+m−1手である。


 上のケースは、n−m=2 のときです。n−m=4 のときも成り立ちそうです。
m=1やm=3も成り立ちそうです。


 次に、FNさんは、11リットルの升が2個、3個、4個、・・・ ある場合で、水が、30、40、
50、・・・ あるとして、10リットルずつに分ける場合を考えました。(平成23年3月5日付け)

 今のところ、次のような結果になっています。(最短かどうかは未定)

 20リットル 19手=18手+1手
 30リットル 22手=3手+18手+1手
 40リットル 39手=18手+2手+18手+1手 (GAIさんの手順は38手)
 50リットル 45手=6手+18手+2手+18手+1手


 攻略法さんが、「40リットルの38手」を解析されました。(平成23年3月5日付け)

0: 40 0 0 0 0
1: 29 11 0 0 0
2: 18 11 11 0 0
として、

次に、合同式
 11*1≡2 mod 9
 11*2≡4 mod 9
 11*3≡6 mod 9
 11*4≡8 mod 9
 11*5≡1 mod 9≡10 mod 9
 11*6≡3 mod 9
 11*7≡5 mod 9
 11*8≡7 mod 9
 11*9≡0 mod 9≡9 mod 9
を、上からと下からを順に最少手数でつくっていく。

3: 18 2 11 0 9  11*1≡2 mod 9
4: 18 2 11 9 0
5: 18 0 11 9 2  11*9≡0 mod 9
6: 18 0 4 9 9  11*2≡4 mod 9
7: 18 9 4 9 0
8: 18 7 4 11 0  11*8≡7 mod 9
9: 18 7 0 11 4
10: 18 7 0 6 9  11*3≡6 mod 9
11: 18 11 0 6 5  11*7≡5 mod 9
12: 18 11 5 6 0
13: 18 2 5 6 9
14: 18 0 5 8 9  11*4≡8 mod 9
15: 18 9 5 8 0
16: 18 3 11 8 0  11*6≡3 mod 9
17: 18 3 2 8 9
18: 18 3 0 10 9  11*5≡10 mod 9
19: 18 11 0 10 1  11*5≡1 mod 9

後は「18手」に帰着させる。
20: 18 11 1 10 0 → 1: に帰着
21: 18 2 1 10 9 → 2: に帰着
22: 27 2 1 10 0 → 3: に帰着
23: 27 0 1 10 2
24: 16 11 1 10 2
25: 16 4 1 10 9
26: 25 4 1 10 0
27: 25 0 1 10 4
28: 14 11 1 10 4
29: 14 6 1 10 9
30: 23 6 1 10 0
31: 23 0 1 10 6
32: 12 11 1 10 6
33: 12 8 1 10 9
34: 21 8 1 10 0
35: 21 0 1 10 8
36: 10 11 1 10 8 → 17: に帰着
37: 10 10 1 10 9 → 18: に帰着

38: 10 10 10 10 0

 以上から、19手+18手+1手=38手


 FNさんからのコメントです。(平成23年3月5日付け)

 11と9は、実験するのにやや面倒なので、5と3で考えてみてもいいでしょう。もちろん、
11と9の特殊性、5と3の特殊性はあると思いますが、共通性もある程度はあるだろうと
思います。

 5リットルの升が k−1個、3リットルの升が1個ある。これらを使って、4k リットル
の水を、4リットルずつ k 個に分けなさい。


 11と9の場合の18手に相当する基本手順は、次の6手です。
(5リットルの升,3リットルの升)とします。

  (0,0)→(5,0)→(2,3)→(2,0)→(0,2)→(5,2)→(4,3)

 11と9の場合と同様に、多分次の手数でできます。

 k=2 のとき、  8リットル  7手=6手+1手
 k=3 のとき、 12リットル 10手=3手+6手+1手
 k=4 のとき、 16リットル 15手=6手+2手+6手+1手
 k=5 のとき、 20リットル 21手=6手+6手+2手+6手+1手

 11と9で、k=4のときのGAIさんの38手に相当する14手の手順は次の通り。

    16 5 5 5 3
0手  16 0 0 0 0
1手  11 5 0 0 0
2手   6 5 5 0 0
3手   6 2 5 0 3
4手   6 2 5 3 0
5手   6 0 5 3 2
6手   6 0 4 3 3
7手   6 0 4 5 1
8手   6 1 4 5 0  →ここから13手までは基本手順
9手   6 1 4 2 3
10手  9 1 4 2 0
11手  9 1 4 0 2
12手  4 1 4 5 2
13手  4 1 4 4 3
14手  4 4 4 4 0


 攻略法さんがこの話題をまとめられました。(平成23年3月7日付け)

■最少手数のパターン(予想)

(k*n; n+1,n+1,…,n+1,n-1) を解析する。例えば、n=10なら、(10k; 11,11,…,11,9) となる。
   └ (k−1)個 ┘

 基本手順「18手」などは、

   2つの容器 (n+1,n-1) を使って、(2n-2)手で、{n,n-1}をつくる

と言える。詳細は既に提示済みなので省略する。

 流れの記号は、 (n-1;n+1,0)⇒(1;n,n-1) と表記する。

これは、まず、

●k=2 ・・・ (2n)リットル  (2n−1)手=(2n−2)手+(1)手

 ・基本 (2n−2)手 ・・・ (2n−2)手で、{n,n-1} をつくる。ただし、最後に、{1} ができる。
 ・最後の1手 ・・・ {n-1} と {1} より、{n} をつくる。

で適用される。

流れの記号は、(2n;0,0)→(n-1;n+1,0)⇒(1;n,n-1)→(n;n,0) となる。

 また、この操作は途中や最後に、{1}、{n}もできる場合がある。最少手数は、この特性をう
まく利用している。

●k=3 ・・・ (3n)リットル  (2n+2)手=(3)手+(2n−2)手+(1)手

流れの記号は、 (3n;{0,0},0)⇒(0;{n+1,N},n-1)→(n-1;{n+1,N},0)⇒(1;{n,N},n-1)→(n;{n,N},0)

となる。

 ・3つの容器 (n+1,n+1,n-1) を使って、3手で ({n+1,N},n-1) をつくる。

     (3n, n+1, n+1, n-1)
   0: 3n 0 0 0
   1: 2n-1 n+1 0 0
   2: n n+1 0 n-1
   3: 0 n+1 N n-1

 ・{N}を除いて、基本 (2n−2)手 ・・・ (2n−2)手で、{n,n-1}をつくる。ただし、最後に、{1}
 ができる。

   4: n-1 n+1 N 0 → 1: に帰着
   5: n-1 2 N n-1 → 2: に帰着
         :
2n+1: 1 n N n-1 → (2n-2): に帰着

 ・最後の1手 … {n-1}と{1}より、{n}をつくる。
  2n+2: n n N 0

 ただし、n=2、(6,3,3,1)の5手は除く。
  0: 6 0 0 0
  1: 3 3 0 0
  2: 2 3 0 1
  3: 2 3 1 0
  4: 2 2 1 1
  5: 2 2 2 0

●k=4 ・・・ (4n)リットル  (4n−2)手=(2n−1)手+(2n−2)手+(1)手

流れの記号は、

  (4n;{0,0,0},0)⇒(2n-2;{n+1,N,0},1)→(2n-2;{n+1,N,1},0)⇒(n;{n,N,1},n-1)→(n;{n,N,n},0)
              (∵((n-1)+(n-1);{n+1,N,1},0)⇒((n-1)+1;{n,N,1},n-1)より)
 となる。

 ・4つの容器(n+1,n+1,n+1,n-1)を使って、(2n−1)手で、({n+1,N,0},1)をつくる。
  基本(2n-2)手目で{n,0}、(2n-1)手目で{n+1,1}となる。

 手順
  例 n=6 (24;7,7,7,5)
  合同式
   7*1≡2 mod 5
   7*2≡4 mod 5
   7*3≡1 mod 5≡6 mod 5
   7*4≡3 mod 5
   7*5≡0 mod 5
  を、上からと下からを順に最少手数でつくっていく。

  移動結果によって、移動元または移動先にこの値が現れるようにする。

   n=6   7, 7, 7, 5
   0: 24 0 0 0 0

   1: 17 7 0 0 0
   2: 17 2 0 0 5 7*1≡2 mod 5
   3: 10 2 7 0 5
   4: 10 2 7 5 0  7*5≡0 mod 5
   5: 10 0 7 5 2
   6: 10 0 4 5 5 7*2≡4 mod 5
   7: 10 5 4 5 0
   8: 10 3 4 7 0  7*4≡3 mod 5
   9: 10 3 4 2 5
   10: 10 3 6 0 5 7*3≡6 mod 5
   11: 10 7 6 0 1  7*3≡1 mod 5

 ・{N,1}を除いて、基本(2n−2)手 ・・・ (2n−2)手で、{n,n-1}をつくる。ただし、最後に、{n}
 ができる。

  2n-1: 2n-2 n+1 N 0 1 より

   2n: 2n-2 n+1 N 1 0 → 1: に帰着
  2n+1: 2n-2 2 N 1 n-1 → 2: に帰着
         :
  4n-3: n n N 1 n-1 → (2n-2): に帰着

 ・最後の1手 ・・・ {n-1}と{1}より、{n}をつくる。
  4n-2: n n N n 0


 FNさんからの続報です。(平成23年3月7日付け)

 n=2というつまらない場合を調べてみました。n=2ということは、1リットルの升があるの
でパズルにはなりません。しかし最短手順を求めるということになるとそれほど明らかでもあ
りません。

[2k;3,3,3,・・・,3,1] (3がk-1個)で、初期値(2k,0,0,・・・,0)を(2,2,・・・,2,0)にする。

 次のようになりそうな気がします。

 k≡1 (mod 3)のとき、 (2k−2)手

 k≡0、2  (mod 3)のとき、 (2k−1)手

即ち、水の量より1手少ない手順でできるが、k≡1 (mod 3)のときは、もう1手少ない。

 上記の手数でできることは、次のように確認できる。

 まず、k=2、3、4のときは、具体的に手順を作る。

k=2 のとき、 [4;3,1]  (4,0,0)→(1,3,0)→(1,2,1)→(2,2,0)

k=3 のとき、 [6;3.3.1]  (6,0,0,0)→(3,3,0,0)→(3,2,0,1)→(3,2,1,0)→(2,2,1,1)→(2,2,2,0)

k=4 のとき、

[8;3,3,3,1]  (8,0,0,0,0)→(5,3,0,0,0)→(5,2,0,0,1)→(2,2,3,0,1)→(2,2,3,1,0)→(2,2,2,1,1)→(2,2,2,2,0)

 k のときの手順をもとに、k+3のときの手順を、+6手で作ればよい。

基本的には次の手順でできます。

  (*,1, ,0)
  (*,1,3, ,0)
  (*,1,2, ,1)
  (*,2,2, ,0)
  (*,2,2,3, ,0)
  (*,2,2,2, ,1)
  (*,2,2,2,1, ,0)

 ただし、そのためには、3リットル升のどれかに、1リットル入っていて、1リットル升が空で
あるという状況が必要です。k=3、4は満たしています。

 k=2は満たしていないので、k=5の手順が必要です。これを満たすk=5の手順で、9手
であるものはあります。面倒なので省略しますが。最短であることは難しそうです。
(というか、最短であるかどうかもわかりません。)


 攻略法さんが、「■最少手数のパターン(予想)」について、分解して局所的な最少手の和
を構成して、近似解とするように見直されました。(平成23年3月8日付け)

k=5 (5n)リットル」の場合

●5n=3n+2n形 ・・・ 3 +{2n+2} +{(2n-2) +1}=(4n+4)手

例1
5, 5, 5, 5, 3
0: 20 0 0 0 0 0

(5n;{0,0,0,0},0)⇒(3n;{n+1,n-1, 0,0},0)
1: 15 5 0 0 0 0
2: 12 5 0 0 0 3
3: 12 5 3 0 0 0

3n部分
(3n;{0,0,n+1,n-1},0)⇒(0;{n+1,n, n+1,n-1},n-1)
* * * *
4: 7 5 3 5 0 0
5: 4 5 3 5 0 3
6: 0 5 3 5 4 3

(n-1;{n+1, N,n+1,n-1},0)⇒(1;{n, N,n+1,n-1},n-1)
* * *
7: 3 5 3 5 4 0 → 1: に帰着
8: 3 5 3 2 4 3 → 2: に帰着
9: 6 5 3 2 4 0 → 3: に帰着
10: 6 5 3 0 4 2 → 4: に帰着
11: 1 5 3 5 4 2 → 5: に帰着
12: 1 5 3 4 4 3 → 6: に帰着

(1;{N,N,n+1,n-1},0)⇒(0;{N,N,n+1,n},n-1)
13: 0 5 4 4 4 3

2n部分
(n-1;{n+1, N,N,N},0)⇒(1;{n, N,N,N},n-1)
* * *
14: 3 5 4 4 4 0 → 1: に帰着
15: 3 2 4 4 4 3 → 2: に帰着
16: 6 2 4 4 4 0 → 3: に帰着
17: 6 0 4 4 4 2 → 4: に帰着
18: 1 5 4 4 4 2 → 5: に帰着
19: 1 4 4 4 4 3 → 6: に帰着
20: 4 4 4 4 4 0

例2
11,11,11,11, 9
0: 50 0 0 0 0 0

(5n;{0,0,0,0},0)⇒(3n;{n+1,n-1, 0,0},0)
1: 39 11 0 0 0 0
2: 30 11 0 0 0 9
3: 30 11 9 0 0 0

3n部分
(3n;{0,0,n+1,n-1},0)⇒(0;{n+1,n, n+1,n-1},n-1)
* * * *
4: 19 11 9 11 0 0
5: 10 11 9 11 0 9
6: 0 11 9 11 10 9

(n-1;{n+1, N,n+1,n-1},0)⇒(1;{n, N,n+1,n-1},n-1)
* * *
7: 9 11 9 11 10 0  → 1: に帰着
8: 9 11 9 2 10 9  → 2: に帰着
9: 18 11 9 2 10 0  → 3: に帰着
10: 18 11 9 0 10 2
11: 7 11 9 11 10 2
12: 7 11 9 4 10 9
13: 16 11 9 4 10 0
14: 16 11 9 0 10 4
15: 5 11 9 11 10 4
16: 5 11 9 6 10 9
17: 14 11 9 6 10 0
18: 14 11 9 0 10 6
19: 3 11 9 11 10 6
20: 3 11 9 8 10 9
21: 12 11 9 8 10 0
22: 12 11 9 0 10 8
23: 1 11 9 11 10 8
24: 1 11 9 10 10 9 → 18: に帰着

(1;{N,N,n+1,n-1},0)⇒(0;{N,N,n+1,n},n-1)
25: 0 11 10 10 10 9

2n部分
(n-1;{n+1, N,N,N},0)⇒(1;{n, N,N,N},n-1)
* * *
26: 9 11 10 10 10 0  → 1: に帰着
27: 9 2 10 10 10 9  → 2: に帰着
28: 18 2 10 10 10 0  → 3: に帰着
29: 18 0 10 10 10 2
30: 7 11 10 10 10 2
31: 7 4 10 10 10 9
32: 16 4 10 10 10 0
33: 16 0 10 10 10 4
34: 5 11 10 10 10 4
35: 5 6 10 10 10 9
36: 14 6 10 10 10 0
37: 14 0 10 10 10 6
38: 3 11 10 10 10 6
39: 3 8 10 10 10 9
40: 12 8 10 10 10 0
41: 12 0 10 10 10 8
42: 1 11 10 10 10 8
43: 1 10 10 10 10 9 → 18: に帰着
44: 10 10 10 10 10 0

●5n=n+4n形 ・・・ 5 +{4n-2}=(4n+3)手

次の手順で、4n形に持ち込むことができる。
  0: 5n; 0 0 0 0 0

 n部分 (5n;{0,0,0,0},0)⇒(n;{n+1,n+1,n-1,0},n-1)
  1:4n-1; n+1 0 0 0 0
  2:3n-2; n+1 n+1 0 0 0
  3:2n-1; n+1 n+1 0 0 n-1
  4:2n-1; n+1 n+1 n-1 0 0
  5: n; n+1 n+1 n-1 0 n-1

 4n部分 (4n;{0,0,0, N},0)⇒(n;{n,N,1, N},n-1)→(n;{n,N,n, N},0)
  6: 0; n+1 n+1 n-1 N n-1 変則 1:
  7: n-1; n+1 n+1 n-1 N 0 変則 2:
  8: n-1; 2 n+1 n-1 N n-1 変則 3:
  9:2n-2; 2 n+1 n-1 N 0  変則 4:
 10:2n-2; 0 n+1 n-1 N 2  → 5: に帰着
 11:2n-2; 0 4 n-1 N n-1  → 6:
 12:2n-2; n-1 4 n-1 N 0  → 7:
 13:2n-2; n-3 4 n+1 N 0  → 8:
   :
 4n+3: n; n n n N 0 → 4m-2:

例1
11,11,11,11, 9
0: 50 0 0 0 0 0

n部分
1: 39 11 0 0 0 0
2: 28 11 11 0 0 0
3: 19 11 11 0 0 9
4: 19 11 11 9 0 0
5: 10 11 11 9 0 9

4n部分
* * * * *
6: 0 11 11 9 10 9
7: 9 11 11 9 10 0
8: 9 2 11 9 10 9   11*1≡2 mod 9
9: 18 2 11 9 10 0  11*9≡0 mod 9
10: 18 0 11 9 10 2
11: 18 0 4 9 10 9  11*2≡4 mod 9
12: 18 9 4 9 10 0
13: 18 7 4 11 10 0  11*8≡7 mod 9
14: 18 7 0 11 10 4
15: 18 7 0 6 10 9   11*3≡6 mod 9
16: 18 11 0 6 10 5
17: 18 11 5 6 10 0  11*7≡5 mod 9
18: 18 2 5 6 10 9
19: 18 0 5 8 10 9   11*4≡8 mod 9
20: 18 9 5 8 10 0
21: 18 3 11 8 10 0  11*6≡3 mod 9
22: 18 3 2 8 10 9
23: 18 3 0 10 10 9  11*5≡10 mod 9
24: 18 11 0 10 10 1  11*5≡1 mod 9
25: 18 11 1 10 10 0 → 1: に帰着
26: 18 2 1 10 10 9 → 2: に帰着
27: 27 2 1 10 10 0 → 3: に帰着
28: 27 0 1 10 10 2
29: 16 11 1 10 10 2
30: 16 4 1 10 10 9
31: 25 4 1 10 10 0
32: 25 0 1 10 10 4
33: 14 11 1 10 10 4
34: 14 6 1 10 10 9
35: 23 6 1 10 10 0
36: 23 0 1 10 10 6
37: 12 11 1 10 10 6
38: 12 8 1 10 10 9
39: 21 8 1 10 10 0
40: 21 0 1 10 10 8
41: 10 11 1 10 10 8
42: 10 10 1 10 10 9 → 18: に帰着
43: 10 10 10 10 10 0

 n、kによる手数一覧
     k= 2  3  4  5  6  7  8
  近似解= 2n-1 2n+2 4n-2 4n+3 ?  ?  ?
n= 2( 3, 1) 3  5*  6  9*  11  12  15
  4( 5, 3) 7  10  14  18* 21  ?   ?
  6( 7, 5) 11  14  22  27  ?   ?   ?
  8( 9, 7) 15  18  30  35  ?   ?   ?
 10(11, 9) 19  22  38  43  ?   ?   ?
 12(13,11) 23  26  46  ?   ?   ?   ?
 14(15,13) 27  30  ?   ?   ?   ?   ?



(追記) 平成22年4月7日付け

 凡人さんが、NHK教育「数学基礎」で秋山仁さんの6号升の話を聞いて、上記より、もっ
と簡単な方法を考えられました。
(当HPの掲示板「出会いの泉」(平成22年4月5日付け)より)

 容器を傾けることで、容積の半分が測れる(ただし、容器が歪だと出来ませんが...)と
いう点がキーポイントとのことです。

 以下で、(40リットル,11リットル,11リットル,11リットル,9リットル)の順になっています。

(40,0,0,0,0) → (29,11,0,0,0) → (20,11,0,0,9) → (20,5.5,5.5,0,9) → (20,10,5.5,0,4.5)

 → (20,10,10,0,0) → (9,10,10,11,0) → (0,10,10,11,9) → (5.5,10,10,5.5,9)

 → (10,10,10,5.5,4.5) → (10,10,10,10,0)

                                             以上 10手

(コメント) なるほど!短手順で済んでしまうんですね。
      当HPのクイズ&パズルの「水の分配」でも容器を傾けて半分にするという技を使
      いましたが、あらゆる容器を想定してのパズルなので「邪道?」という噂もあります。


(追記) 「酒飲みの数理」と題して、GAI さんからの投稿です。(平成26年7月15日付け)

<Trial 1>
 3合、5合枡が一つずつあり、並々とお酒が入っている一斗樽の酒樽が置いてある。さて、
この2つの枡を使って、4合の酒を計り取りたい。
 なお、途中に枡にいっぱいになった酒は、酒樽に戻すか、飲んでしまってもかまわない。
(もちろん飲み干すでしょう。)その手順を示してほしい。

<Trial 2>
 3合、5合、8合の枡があり、8合枡には並々とお酒がつがれている。今、これを2人に平
等に4合ずつ分けて飲ませてあげたい。その手順は?
(5合枡、8合枡にそれぞれ4合の酒が入っている状態にすること。)

<Trial 3>
 6合、1升(10合)、1升5合(15合)の3つの枡で一斗樽に入っている酒を2升3合計り出
すにはどうしたらよいか?2通り手順を考えてほしい。


 らすかるさんが考察されました。(平成26年7月15日付け)

<Trial 1>

 5合枡に酒を入れ、3合枡に移せるだけ移すと、5合枡に2合残る。3合枡の酒を飲み干し、
5合枡の2合を3合枡に移して、再度5合枡に酒を入れて、3合枡に入るだけ移せば、5合枡
に4合残る。

<Trial 2>
 8合枡から5合枡に入るだけ酒を入れ、3合枡に移せるだけ移すと、5合枡に2合残る。3
合枡の酒を8合枡に戻し、5合枡の2合を3合枡に移して、再度5合枡に8合枡から酒を入れ
て、3合枡に入るだけ移せば、5合枡に4合残る。最後に、3合枡の酒を8合枡に戻せば完了。

# <Trial 1>と<Trial 2>について、枡は傾けてちょうど半量だけ注ぐことができるので、5合枡
 と3合枡に半量ずつ入れて3合枡の1.5合を5合枡に移してもよい。

<Trial 3>
(1) 1升5合枡を一杯にして、1升枡に移せるだけ移すと5合残るので、それと6合枡3杯分
  で2升3合。
(2) 1升枡を一杯にして6合枡に移せるだけ移すと4合残るので、この方法で4合を2回計り、
  1升5合を加えれば2升3合。
(3) 枡は斜め方向に傾けると枡の容量の1/6が計れるから、6合枡だけで1合が計れる。
  よって、6合枡を一杯にして1合残るようにすれば、5合が計れるから、あと3回6合枡で
  量れば、2升3合になる。


(追記) 上記と同様の話題が、坪田耕三の「切ってはって算数力」でも紹介された。(朝日
    新聞 2015年12月10日付け)

 塵劫記(吉田光由)の「油はかり分ける事」

 一斗の油を、七升のますと三升のますで、五升ずつに量り分けよ。

 数学者のジョージ・ポリアは著書「いかにして問題をとくか」の中で「逆向きに解く」というア
イデアを載せている。つまり、結果から逆算するということ。

 最後に五升残すためには、七升のます一杯に入っている油からを二升分を捨てればよい。
次に、二升をどう量るか?三升のますにあらかじめ一升入っていれば、残りが二升になる。
では、一升はどうすれば量れるでしょう。

 七升のます一杯に入っている油を三升のますに2回移し替えて捨てると、七升のますの中
に一升ができる。これを三升のますに移せば、残りの部分が二升になる。

 そこで、次のようにすればよいことが分かる。

 もう一度、七升のますを一杯にして、中に一升が入っている三升のますに油を注ぐと、七升
のますに五升の油が残る。