||| ||| ++|
||||| ||++| ・・・ +++++
||||||| ||||||| +++++++
図1 図2 図3
分析方法:
まず,すべての棒の組み合わせを考える.
図1なら[357],図2なら[1237],図3なら[1]というように,
残っている縦棒のまとまりを表す.
これは,下記のように考えられるすべての組み合わせを,
初期状態[357]に当てはめればよい.
[1]->[]
[2]->[],[1]
[3]->[],[1],[2],[11]
[4]->[],[1],[2],[3],[11],[12]
[5]->[],[1],[2],[3],[4],[11],[12],[13],[22]
[6]->[],[1],[2],[3],[4],[5],[11],[12],[13],[14],[22],[23]
[7]->[],[1],[2],[3],[4],[5],[6],[11],[12],[13],[14],[15],[22],[23],[24],[33]
従って,[357]の場合[3]が4種類,[5]が9種類,[7]が15種類で
合計4+9+15=28種類の消し方があるといえる.
次に,表を自分の番の状態とし,勝つためにどのような状態を
相手に渡せばよいかを考える.
初期値として[1]は負けなので(x)を与えておく,
すると,[2]〜[7]は[1]を相手に送れば勝てることがわかるので,
最善を尽くす場合は必ず勝てる.従って[1]〜[7]は確実に勝てる
手として(o)を与えておく.
具体的には,
1.自分の可能な手をすべてリストアップする.
2.リストアップしたものを表で検索にかける.
3.もし,(x)マークがついているものが一つでもあれば,その状態を相手に渡せば
必ず勝てるので,その手を記憶し(o)マークをつける.
もし,すべてが(o)マークならば,絶対に勝てないので(x)マークをつける.
どちらのマークもついていない場合は,マークをつけずに次の状態の
チェックに行く.すべてをチェックした時点で(x)マークがなかった場合は,
現段階では判断できないのでスキップする.
これを,表がすべて埋まるまで繰り返す.
このような手順を踏むことにより,下のような[全対処法表]が求まる.
(この表は手作業で作成したので,上記の方法とは多少異なる)
この表の[357]を見ると,先手が[356],[347],[257],[2345]のうちどれかで
返すことにより,先手の勝利となる.
従って,互いに最善を尽くした場合,先手必勝である.
実行例:
[]:先手 ():後手
[357],(356),[346],(246),[234],(123),[23],(22),[12],(1)
この場合,後手は最前の尽くしようがないが,あえて尽くすならば
表の(o)の部分に(x)以外の手も入れておき,相手がミスをする可能性が高い手
(つまり,(o)の割合の高い手)を選ぶようにすればよい)
(x)と(x)の組み合わせは(x)になる.
たとえば,[22]と[33]の組み合わせ[2233]は(x)になる.
(x)に[1]を偶数個追加したものは(x)になる.
たとえば,[22]に[1111]を追加した[111122]は(x)になる.
全対処法表
----------------
o:自分がこの状態のときは,相手にxを送れば勝ち
x:自分がこの状態のときは,相手がミスしないと負け
例:[11o1x]とは,自分に[11]が回ってきた,場合[1]を返せば必ず勝てる
例:[33x3o,13o,23o,113o]とは,自分に[33]が回ってきた場合,なにを返しても勝てない
1x
2o1x
3o1x
4o1x
5o1x
6o1x
7o1x
11o1x
12o1x
13o1x
14o1x
15o1x
16o1x
17o1x
22x2o,12o
23o22x
24o22x
25o22x
26o22x
27o22x
33x3o,13o,23o,113o
34o33x,123x
35o33x
36o33x
37o33x
44x4o,14o,24o,34o,114o,124o
45o44x
46o44x
47o44x
55x5o,15o,25o,35o,45o,115o,125o,135o,225o
56o55x
57o55x
111x11o
112o111x
113o111x
114o111x
115o111x
116o111x
117o111x
122o22x
123x12o,13o,23o,112o,113o,122o,1112o
124o123x
125o123x
126o123x
127o123x
133o123x
134o123x
135o123x
136o123x
137o123x
144o44x
145x14o,15o,45o,114o,115o,124o,125o,134o,135o,144o,1114o,1115o,1124o,1125o,1134o
146o1144x
147o1144x
155o55x
156o55x
157o55x
222o22x
223o22x
224o22x
225o22x
226o22x
227o22x
233o123x
234o123x
235o123x
236o123x
237o123x
244o44x
245o145x
246x24o,26o,46o,124o,126o,146o,224o,226o,234o,236o,244o,245o,1124o,1126o,1224o,1226o,1324o,1244o
247o246x
255o246x
256o246x
257x25o,27o,57o,125o,127o,157o,225o,227o,235o,237o,245o,247o,245o,256o,1125o,1127o,1225o,1227o,1235o,1237o,1245o,1255o,2225o,2227o,2235o,2245o
333o33x
334o33x
335o33x
336o33x
337o33x
344o44x
345o145x
346o246x
347x34o,37o,47o,134o,137o,147o,234o,237o,247o,334o,337o,344o,345o,346o,1134o,1137o,1147o,1234o,1237o,1334o,1344o,1345o,2234o,2334o,2344o,3334o
355o55x
356x35o,36o,56o,135o,136o,156o,235o,236o,256o,335o,336o,345o,346o,355o,1135o,1136o,1156o,1235o,1236o,1335o,1336o,1345o,1355o
357o356x,347x,257x,2345x
1111o111x
1112o111x
1113o111x
1114o111x
1115o111x
1116o111x
1117o111x
1122x112o,122o,1112o
1123o123x,1122x
1124o1122x
1125o1122x
1126o1122x
1127o1122x
1133x113o,133o,1113o,1123o,11113o
1134o1133x
1135o1133x
1136o1133x
1137o1133x
1144x114o,144o,1114o,1124o,1134o,11114o,111124o
1145o1144x
1146o1144x
1147o1144x
1155x115o,155o,1115o,1125o,1135o,1145o,11125o,11135o,11225o
1156o1155x
1157o1155x
1222o1122x
1223o1122x
1224o1122x
1225o1122x
1226o1122x
1227o1122x
1233o1133x
1234o123x
1235o123x
1236o123x
1237o123x
1244o1144x
1245o245x
1255o1155x
1333o1133x
1334o1133x
1335o1133x
1336o1133x
1337o1133x
1344o1144x
1345o145x
1355o1155x
2222x222o,1222o
2223o2222x
2224o2222x
2225o2222x
2226o2222x
2227o2222x
2233x223o,233o,1223o,1233o,2223o,11223o
2234o2233x
2235o2233x
2236o2233x
2237o2233x
2244x224o,244o,1224o,1244o,2224o,2234o,11224o,12224o
2245o2244x
2333o2233x
2334o2233x
2335o2233x
2344o2244x
2345x234o,235o,245o,345o,1234o,1235o,1245o,1345o,2234o,2235o,2245o,2334o,2335o,2344o,11234o,11235o,11245o,12234o,12235o,12334o,22234o
3333x333o,1333o,2333o,11333o
3334o3333x
3335o3333x
11111x1111o
11112o11111x
11113o11111x
11114o11111x
11115o11111x
11116o11111x
11117o11111x
11122o1122x
11123x1112o,1113o,1123o,11112o,11113o,111112o
11124o11123x
11125o11123x
11126o11123x
11127o11123x
11133o1133x
11134o1133x
11135o1133x
11136o1133x
11137o1133x
11144o1144x
11145o1144x
11155o1155x
11222o1122x
11223o1122x
11224o1122x
11225o1122x
11226o1122x
11227o1122x
11233o1133x
11234o11123x
11235o11123x
11244o1144x
11245x1124o,1125o,1145o,1245o,11124o,11125o,11145o,11224o,11225o,11234o,11235o,11244o,111124o,111125o,111224o,111225o,111234o
11333o1133x
11334o1133x
11335o1133x
12222o2222x
12223x1222o,1223o,2223o,11222o,11223o,12222o,111222o
12224o12223x
12225o12223x
12233o12223x
12234o12223x
12235o12223x
12333x1233o,1333o,2333o,11233o,11333o,12233o,111233o
12334o12333x
13333o12333x
22222o2222x
22223o2222x
22224o2222x
22233o2233x
22234o12223x
22333o2233x
111111o11111x
111112o11111x
111113o11111x
111114o11111x
111115o11111x
111116o11111x
111117o11111x
111122x11112o,11122o,111112o
111123o111122
111124o111122
111125o111122
111133x11113o,11133o,111113o,111123o,1111113o
111134o111133x
111135o111133x
111222o111122x
111223o111122x
111224o111122x
111225o111122x
111233o111133x
111234o11123x
111333o111133x
112222x11222o,12222o,111222o
112223o112222x
112224o112222x
112233o112222x
122222o112222x
122223o12223x
1111111x111111o
1111112o1111111x
1111113o1111111x
1111114o1111111x
1111115o1111111x
1111122o111122x
1111123
1111124
1111133
1111222
1111223
11111111o1111111x
11111112o1111111x
11111113o1111111x
11111122x1111112o,1111122o,11111112o
111111111x11111111o