No. 25≫ No.26 ≫No. 27
いはら
2010/03/29 12:38
1問目の解法を発表します。
ある一つの列の9つのマスだけに注目します。
その列で数字の記入されている各マスに対して、
そのマスからの距離がその数字より小さいマスの集合を考えます。
(マス間の距離は、マスの1辺の長さを1として、マスの中心間の距離と定義します)
任意の2つの集合が共通部分をもたないとき、
どの集合にも属さないマスは塗りつぶされないマスとして確定します。
証明:
連続して塗りつぶされるある領域に数字が2つ以上含まれているとします。
それらの数字はいずれもその領域の長さより小さいはずです。
よってその領域を示すヒントとなる数字はその領域の外、上か下のどちらかにあります。
その数字も塗りつぶされますが、その塗りつぶされる領域を示すヒントとなる数字は、
その領域の上か下、先ほどと同じ方向になくてはいけません。
これが無限に続きますので、有限の領域で実現することは不可能です。
よって各領域には数字が一つずつ含まれることになります。
各領域の長さはその領域に含まれる数字と一致します。
以上より、任意の塗りつぶされるマスは上記の集合のどれかに属することが分かり、
証明できました。
1,6,7,8,9列はこの条件を満たしますので次のように塗りつぶされないマスが確定します。
塗りつぶされないマスを×で表しています。
<tt>× 1 2111
15 241××
1 1 1××3
1 3 111
×112 ×××
× 1 ×21×
111321 1
× 3 ××1
1 ×××3</tt>
以下、塗りつぶされるマスを○、塗りつぶされないマスを×と略記します。
2行2列目が×だとすると、2行目のヒントに5があることになりますが、
2行目に連続する5つのマスを塗りつぶすことはできません。
よって2行2列目は○と確定します。
すると2列目のヒントに5があることになりますので、
5行2列目は○と確定します。
よって、2列目のヒントの上2つは5,1と判明し、
3行2列目、4行2列目も○と確定します。
8行3列目が×だと仮定すると矛盾しますので8行3列目は○です。
3列目の一番下のヒントが3ということになりますので、7行3列目も○と確定します。
8行目に注目すると、○が一つありますのでそれに対応する横のヒントが必要で、
8行8列目は×でなくてはならないと分かります。
8行目の他のマスはすべて×と決まります。
<tt>× 1 2111
1D 241××
1○1 1××3
1○3 111
×@12 × ×
× 1 ×21×
11@321 1
××B××××1×
1 ×××3</tt>
×だと確定した数字は赤くしています。
5列目はヒントがすべて2以上なので、9行目は×。
9列目も同様にして、7,9行目は×。
9行目に注目すると、1と3がともに横のヒントになることはできないので、1列目は○。
よって、2,3列目は○、4列目は×と確定。
3列目の一番下のヒントは3なので、6行目は×と確定。
3列4行目が○だと仮定すると矛盾するので×と確定
4行目には1と3しかないので、1列目は×。
3行目の1がすべて○だとすると矛盾するのでどれかは×。
よって一番左のヒントは1となり、2列目の○の両隣は×と確定。
すると3がヒントになる余地がなくなるので、9列目は×。
<tt>× 1 2111
1D 241××
1○1 1××B
1○3 111
×@12 × ×
× 1× ×21×
11@321 1×
××B××××1×
@○○×××××3</tt>
続く
いはら 2010/03/29 12:38
ある一つの列の9つのマスだけに注目します。
その列で数字の記入されている各マスに対して、
そのマスからの距離がその数字より小さいマスの集合を考えます。
(マス間の距離は、マスの1辺の長さを1として、マスの中心間の距離と定義します)
任意の2つの集合が共通部分をもたないとき、
どの集合にも属さないマスは塗りつぶされないマスとして確定します。
証明:
連続して塗りつぶされるある領域に数字が2つ以上含まれているとします。
それらの数字はいずれもその領域の長さより小さいはずです。
よってその領域を示すヒントとなる数字はその領域の外、上か下のどちらかにあります。
その数字も塗りつぶされますが、その塗りつぶされる領域を示すヒントとなる数字は、
その領域の上か下、先ほどと同じ方向になくてはいけません。
これが無限に続きますので、有限の領域で実現することは不可能です。
よって各領域には数字が一つずつ含まれることになります。
各領域の長さはその領域に含まれる数字と一致します。
以上より、任意の塗りつぶされるマスは上記の集合のどれかに属することが分かり、
証明できました。
1,6,7,8,9列はこの条件を満たしますので次のように塗りつぶされないマスが確定します。
塗りつぶされないマスを×で表しています。
<tt>× 1 2111
15 241××
1 1 1××3
1 3 111
×112 ×××
× 1 ×21×
111321 1
× 3 ××1
1 ×××3</tt>
以下、塗りつぶされるマスを○、塗りつぶされないマスを×と略記します。
2行2列目が×だとすると、2行目のヒントに5があることになりますが、
2行目に連続する5つのマスを塗りつぶすことはできません。
よって2行2列目は○と確定します。
すると2列目のヒントに5があることになりますので、
5行2列目は○と確定します。
よって、2列目のヒントの上2つは5,1と判明し、
3行2列目、4行2列目も○と確定します。
8行3列目が×だと仮定すると矛盾しますので8行3列目は○です。
3列目の一番下のヒントが3ということになりますので、7行3列目も○と確定します。
8行目に注目すると、○が一つありますのでそれに対応する横のヒントが必要で、
8行8列目は×でなくてはならないと分かります。
8行目の他のマスはすべて×と決まります。
<tt>× 1 2111
1D 241××
1○1 1××3
1○3 111
×@12 × ×
× 1 ×21×
11@321 1
××B××××1×
1 ×××3</tt>
×だと確定した数字は赤くしています。
5列目はヒントがすべて2以上なので、9行目は×。
9列目も同様にして、7,9行目は×。
9行目に注目すると、1と3がともに横のヒントになることはできないので、1列目は○。
よって、2,3列目は○、4列目は×と確定。
3列目の一番下のヒントは3なので、6行目は×と確定。
3列4行目が○だと仮定すると矛盾するので×と確定
4行目には1と3しかないので、1列目は×。
3行目の1がすべて○だとすると矛盾するのでどれかは×。
よって一番左のヒントは1となり、2列目の○の両隣は×と確定。
すると3がヒントになる余地がなくなるので、9列目は×。
<tt>× 1 2111
1D 241××
1○1 1××B
1○3 111
×@12 × ×
× 1× ×21×
11@321 1×
××B××××1×
@○○×××××3</tt>
続く