いい加減ネタがありませんので今回で最終回になるかもしれません。mpuz の遊び方の第5回。
mpuzの最近のブログ記事
さて、mpuz の遊び方も今回で4回目ですが、いきなりネタが尽きてきました。そこで、今回は昔書いたことのおさらいをしてお茶を濁したいと思います。
実はあまりネタがたくさんありません。mpuz のテクニック集の続きです。
こんな人を選ぶゲームで遊んでくださる皆さんにはただもう感謝の限りです。あいかわらず地味なテクニック集ですが、どうぞ。
さて、アプリケーションの名前は mult puzzle のはずなのに iPhone OS のランチャには mpuz と表示される時点で何か手違い感を漂わせるこのゲームですが、今回からしばらくの間テクニックを紹介したいと思います。Palm 版の mpuz も解き方は同じですので、共通の話題になりますね。
テクニックというほど大したものではありませんが、まだこのゲームに慣れていない方には参考になると思います。そういう発見も自分の手で! という方は見ないほうが良いかもしれませんので、追記欄に。
Kenkyoro さんが、mpuz がどういうものか良く知らないまま購入して下さったとのことで、なんだか恐縮している。というのは、無料版を用意すべきだったのだろうか、というのは以前から悩んでいたからだ。通常無料版というのは機能を制限して試用版のような位置づけで頒布するもののようだが、あのゲームは非常にルールが単純なので制限するべきところが見つからずに現在に至っているのだ。無料版で広告が表示されたりするような構成もあるようだが、project-enigma には広告スポンサーなどつかないし。
と、ここまで書いて、数万通りある問題のうち限られた少数の問題だけを出題するような形で無料版を構成できるということに気付いた。やっとけば良かった……。いや、別に手遅れではないので、アップデートする機会があったらそうしよう。ひとまず、Kenkyoro さんには気に入っていただけることをお祈りしています。ついでに、Palm 版もありますのでそちらも良かったらどうぞ(ちょっとだけルールが違いますがフリーですし)。
さて、App Store では、大抵の有料アプリケーションで対応する無料版が提供されている。これを見ていて思うのは、App Store の仕組み自体に試用版、無料版での制限ダウンロードという機能を組み込めないのだろうか、ということだ。アプリケーション自体は1つのエントリで提供され、フリー版をダウンロードするか有料版を購入するか選べれば良いと思う。そして、アプリケーションバイナリも共通で、なんらかの環境変数のようなもので動作を切り替えられれば開発者の負担も減るだろう(好みの問題かもしれないが)。そして、App Store に並ぶアプリケーションの数も減るような気がするのだが。いや、有料版と無料版のリストを分けて表示しているから問題ないのか。
いずれにせよ、次からはきちんと無料版というのも考えてから作ることにしよう。現在、iPhone OS 向けに予定されているアプリは3つある。
mult puzzle for iPhone OS version 1.00 が公開されました。
App Store で見つけるのは難しいと思いますが、検索で mult puzzle 、あるいは「覆面算」というキーワードで検索すれば見つけられます。
申請時の設定のミスにより、現時点では第2世代のデバイスでしか使用できませんが、設定を修正しましたので、しばらくすれば直ると思います。
よろしければ遊んでやってください。
■追記■
先ほど、変更が反映されたようで、手元の第1世代の iPod touch でもダウンロードできました。
最近、ちょっとした空き時間があると mpuz をやっている。脳がかなり慣れてきたらしく、コンスタントにいいスコアを出せるようになってきた。記憶が定かでないのだけれど、多分自己ベストとなった今日のゲーム、最後のトライがこれ。

最終的なヒット率は 86.41% だった。設問はランダムに出るわけだから、巡り合わせがよければもう少しいいスコアが出るかもしれない。

そして、思いは新しいゲーム作品へと移るわけだ...そういえば、今年は新しいゲーム作品をリリースしていない。PalmLife と RPNToGo は今年アップデートしたけど、去年の作品だから数えない。そうすると、今年は FEPSwitch と DA をいくつか作っただけだ。できれば今年中にちょっとしたゲームを作りたいな...という考えが今更のように浮かんできてしまった。本当に今更だな。間に合うだろうか?
現在準備中のアプリはゲームでもないし、長い時間がかかりそうなので、平行して作業できたらいいな...と思うものの、陰郎はこれまで平行開発をうまくやりおおせたことがない。時間が無いから早く決めなきゃね。
調子に乗って別の方面から mpuz について調べてみた。mpuz では設問となる数式は全て英文字でマスクされるが、何文字使用されるかは問題によってまちまちである。で、使用される文字数別にグラフ化してみたのだ。以下の通り ( クリックすると拡大画像が表示される )。
ちなみに、これらはすべて重複解問題は取り除いたあとの調査結果だ...まぁ、大体予想通りだろう。グラフからではよくわからないが、10文字登場する 「 フルコース 」 の設問は 2,852 問存在する。しかし、極めつけは別にある。なんと、3 文字しか登場しない問題が3つだけあったのだ。お目にかけよう。以下の3問である。
AAA
x BB
─────
CAAB
CAAB
──────
BCACB
AAA
x BB
─────
CBBA
CBBA
──────
ACBCA
AAB
x BB
─────
CABA
CABA
──────
BCBCA
...これらの3問は実際に出題されるため、答えは書かない。これだけ文字数が少ないとさぞかし解きにくい...と思うだろうか。さにあらず。経験論だが、文字数と難易度の間に相関関係はあまりないようなのだ。文字数が多くても、最初の手掛かりから芋づる式に解けてしまう問題もあるし、逆に 「 取り付く島の無い 」 ような問題もある。
さて、「 答えは書かない 」 とは言ったものの、せっかくである。ここで mpuz の解き方指南を兼ねて1つやってみようではないか。例に挙げるのは先の3問のうち、1番上の設問である。再度以下に示そう。
AAA
x BB
─────
CAAB
CAAB
──────
BCACB
では、始まり始まりである。まず、Aに着目しよう。加算部の中央でAとAと足してAになっている。その桁だけをみれば A+A=A だから、0だろうか? しかし、そもそも一番上にある掛け算の対象が AAA だから A=0 はありえない。ということは、下位から繰り上がってきた結果として A+A=A となっているわけだ。つまり、A=9 である。このことは、もうひとつ左の位を見てもわかる。C+A=C となっているが、加算部最上位では C が B になっているから繰上りが存在する。したがって A=9 である。
次に、繰り返しになるが加算部の最上位を見る。CがBになっているということは、下位からの繰り上がりがある。ここで注意して欲しいことは、加算における繰り上がりは常に1である、ということだ。つまり、C+1=B が成立するのである。この、加算部最上位を見るのは mpuz の必須攻略法である。加算部最上位で繰り上がりがある場合、強力な手掛かりとなるのだ。
CとBの関係はわかった。では、最後の詰めに入ろう。乗算部の最下位を見る。A×Bの下一桁がBになっている。Aは9だ。9に何かをかけて、結果の下一桁が同じ数字になるといったら? ...そう、5しかない。そして、C+1=BよりC=4が導出される...これで数式は以下のようになった。
999
x 55
─────
4995
4995
──────
54945
おめでとう! 完成だ。この問題で使用したテクニックは、mpuz 攻略法のほんの一部でしかない。まだ他にもいろいろとテクニックはあるが、今日はこのあたりで終了ということにしよう ( というか、ここまで読んでくれた方には感謝したい )。
2005/12/28 の 「 mpuz の思い出&裏話 」 で書いた最多重複解問題を覚えているだろうか。あのとき、陰郎はこう書いた。
ABB
x CC
─────
ADCE
ADCE
──────
ABDFE
122 x 99 = 12,078
144 x 99 = 14,256
177 x 99 = 17,523
233 x 99 = 23,067
244 x 99 = 24,156
344 x 99 = 34,056
388 x 99 = 38,412
488 x 99 = 48,312
566 x 99 = 56,034
577 x 99 = 57,123
677 x 99 = 67,023
788 x 99 = 78,012
調査の結果、これが最多重複解問題である...と。これは正しい。たしかにこれは12の解があり、最多重複解問題である。しかし、書かれなかった誤りが1つあった。それは、同じ数の重複解を持つ問題がもう1つあったということだ。それは、以下の通り。
ABC
x DD
─────
AEFG
AEFG
──────
ABEGG
この問題の解は、以下の通りだ...
134 x 99 = 13,266
167 x 99 = 16,533
178 x 99 = 17,622
234 x 99 = 23,166
256 x 99 = 25,344
267 x 99 = 26,433
356 x 99 = 35,244
378 x 99 = 37,422
467 x 99 = 46,233
478 x 99 = 47,322
567 x 99 = 56,133
678 x 99 = 67,122
...安心して欲しい。今頃気づいたとはいえ、この設問も現在の mpuz では出題されない。当時は、単に 「 2つめの最多重複解問題を探さなかった 」 だけなのだ...単一解問題だけが出題されるように実装されていることは間違いない。
何故、今これに気づいたのか、不思議に思われる方もいるだろう...まぁ有体に言ってしまえば、重複解問題を調査するテストプログラムをイジっていたわけだ。それが何のためかは、まだ秘密だ。
