見出し画像

私が圧倒的に正しいワケ

 挑発的なタイトルつけてしまいましたが、大人になるとなかなか100点満点をとることなどないので許してください。
 え?Wordleというパズルゲームのはなしです。とりあえず1日一問を800回以上やって、まだ一回も土がついていないので、私の攻略法は正しいと胸を張ってさしつかえないだろうというハナシです。

 すでにやっている人やこれからやってみようという人に読んでいただくのがいいとは思いますが、それ以外の人々にも印刷業界にいたころの知識がパズルゲームに生かされたなど示唆に富んだ部分もある…かもしれないのでぜひ読んでいただきたい。

 さて、wordleとはNew York Timesが提供する無料の単語当てゲームです。

これは…
1日1問
任意の単語を入れてみて、
桁も文字も的中なら緑色
桁は合ってないけど文字としては含まれるなら黄色といった具合で、
6トライ以内に当てるというものです。

必勝法として、まず思いつくのは「パングラム」
つまり1文字もロスすることなくアルファベット26文字を網羅する
いわば「いろはにほへと単語群」
ネットでみつけたのが次の5語

glent
brick
jumpy
waqfs
vozhd

これで「x」以外の25文字をカバーできるのです。
よく見つけたものです。素晴らしい!
…いや、でも待てよ
たしかに網羅はできるのですがこの5つ入れて、最終の6ターン目に仕留められる保証はありません。
文字が必ず都合よくちょうど5種類だとは限らない。
たとえばこんなの

slyly
grrls
grrrl
phpht

あるいは、めでたく5種めくれたとしても
それがすべて黄色だったらそれは最悪の事態かもしれません。

least
slate
stale
steal


これらはいわゆるアナグラムというやつ。
お題が「stale」だったりした場合、緑が一枚もめくれないことになります。.

現実的には3トライ目くらいまでに目星をつけて
あとは絞込みに入るのが実践的だと気が付きます。

そこでマイナーチェンジ

glent
brick
jumpy



glent
wrick
bumpy


に変更
そして、ここに新メンバー「fados」をくわえてみます。
ここではまだザックリとしか数えてませんがどうやら「j」の出現頻度かなり少ないらしいので外れてもらいます。

 もうすこし具体的に言うと固定はglentのトップバッターだけで2番以降は感触を見ながらという具合。

 しばらくはこれで乗り切れていましたが、よくよく考えると「j」を出現率最低文字という理由でひっこめたのに、他のアルファベットの出現率についても、ちゃんと吟味すべきでした。

というわけで頻度ランキングをちゃんとカウント。
(数字は出現回数)

e  865
a  657
r  612
l  507
o  503
t  491
s  490
i  473
n  423
u  334

c  329
y  309
d 277
h  260
p  251
m  219
g  208
b 199
f  158
w 141
k  140
v  108
z  028
x  023
q  021
j  019

 うまいことに「arose」「unlit」という2単語で頻度ベスト10文字をカバーできることが判明しました。

 さて、では3語目は何か?と考えた場合ベスト10文字以外だけで構成された単語で単純検索すると、結果「pygmy」くらいしかないということになって、しばらくその認識だったのですが「y」がダブっています。

 つまりどうせ1文字分は無駄になるのだから、第三ワードの選択にあたって「arose」と「unlit」の10文字中の1文字がはいってしまうことを許容すれば第三ワードの候補は80語ほど増えることがわかったのです。

 基本的に先発レギュラーは「arose」と「unlit」の2語で3語目からはその都度カスタムにすべし。いちいち候補選びのための条件検索をせずとも、たかだか80単語からなので目視で選べばよい(あとで示します)
 実は日によっては最初のaroseを入れた時点で、10~20程度まで候補ワードがしぼられるなんてこともザラです。だから1語いれた時点でも2枚以上緑がめくれたらとりあえず検索してみましょう。
 この検索は印刷業界時代におぼえた正規表現を用いました。これはタグを用いて条件検索・置換をする方法です。sedやawkといった専用ツールもありますがテキストエディタなどで正規表現を実装しているものもあってそれで充分です。

のような場合は私のエディタでは

^a([^rsenlt])([^orsenlt])i([^rsenlt])

みたいな検索になります。このタグに使う記号や文法はツールによって微妙にかわります。
 わかりやすくするためにマス単位で改行してみます。
^a
([^rsenlt])
([^orsenlt])
i
([^rsenlt])

この場合「^」「~以外」という意味です。なぜか行頭を表すタグも「^」で先頭の「^」はそっちのやつです。忘れがちなのは3桁目の「o」です。緑ではなく黄色ということは逆にココにはそれらの文字ははいらないということですね、
なぜわざわざ行頭を指定するかというと
bambi
o
rbit
みたいなワードが並んでいた場合にambi oのように行をまたがって抽出してしまうからです。

 ところで、そもそもなぜこうしたツールを印刷業界時代に使っていたかです。本を作る場合、記事などの原稿はプレーンなテキストの形で入稿されそれをQuarkXPressInDesignといったレイアウトソフトに取り込んで見出しや本文などの書式の体裁を手作業で整えていくのですが、それを極力、自動化してやろうと思ったのです。
 実際には私がおぼえたテキストエディターなどではなく、JGawkという専用ツールを使ったのですが、うまいぐあいにSくんというプログラムの天才が入ってきたので彼に丸投げしたのです。正規表現の検索置換のタグの組み合わせを考えるのは一種のプログラミング作業です。SくんはAppleScriptなども駆使して文字に縁をつけるアプレットなどを製作したりしました。ちなみに彼はそのツールを作るにあたって高校数学の三角関数を勉強しなおしたといっていました。どういうことかというとたとえば文字に白ふちをつける場合、細かく円を描くように文字色を白くした文字ボックス自体を何十個も複製していくのです。学校の勉強なんて社会では役に立たないとよく言いますが意外なところで役に立ったりするものです。実際、ピタゴラスの1:1:ルート2という比率はDTPの現場ではよく登場しました。あとこれは仕事とは関係ありませんが、まじない好きの母のためにMacで渦巻きを書いてあげたことがあったのですが、そのプログラムも三角関数を用いたものでした(雑誌から 丸パクリでしたが)

 私がここでSくんとの出会いから得た教訓はプログラミングは圧倒的に才能がものを言うということです。
 語学とプログラミングはどちらも世の親が子どもにやらせたがる人気種目ですが、努力と慣れで使いものになると誤解されているところもよく似ています。国際結婚すればその子供は自動的にバイリンガルになるというのも誤解です。ウエンツ瑛士くんという全国模試でランキングされるほどの秀才がバイリンガルな環境にいながらついぞや英語を話せるようにならなかったのがいい例です。むしろ彼の場合はクッキリと英語というものと切り離されていたから幸運だったといえます。
 これについて書いていたらすっかり長くなってしまったのでここでは全カット、別の記事として投稿することにします。

 本題にもどります。冒頭でも言ったように、とりあえずまだ2年以上、ただの1度も負けてないわけですから、正しい方法論といえるのではないでしょうか。

 以下が、過去280回、426回➡現在880回までの私のStatsの推移です。


 前にも書きましたが全勝といいながら連勝数(streak)とゲーム数が一致していないのは、うっかり数回欠席した日があるからで棒グラフの数を全部足してもらえればちゃんとゲーム数一致します。

 前回投稿でも仕留める速さが向上していると書きましたが、今回はなんと3try目で仕留めた回数が5try目を上回ってしまいました!

 さてここで少しばかり不穏な空気が出てきたのは、前回までは辞書は2分割形式で後半はキホン的には存在しない単語を受け付けないためのチェックのための辞書で出題は99%は前半からだと豪語しましたが98.9%に低下してしまいました。
 なかでも2日連続後半から出題された時は震え上がりました。

↓後半からの出題
GUANO 646 2023/03/27◆
SNAFU
659 2023/04/09◆
BALSA
720 2023/06/09◆
KAZOO
730 2023/06/19◆
LASER
1038 2024/04/22◆
PIOUS 1054 2024/05/08◆
MOMMY
1208 2024/10/09◆
PRIMP
1243 2024/11/13◆
UVULA
1244 2024/11/14◆

 それでも乗り切れたのはあまりぶっとんだ語は出ないという原則はなんとなく守られているからです。変化形や外来語由来のものもあまり問題にはなりませんが食べ物関連語については要注意です。
 パーフェクトを狙うのなら一応、検索は前後半の両方にかけ、後半の中にメジャーな単語がないかチェックします。LASERやMOMMYなどはいい例でしょう
  ただしポピュラーな方が正解原則については最近ちょっとかまされたなと笑ってしまったことがありました。最終的に
niece

niche
の2択になったのでまよわずnieceを選択したらブー
ニッチなほうだったかw
 これは去年の4月1日エイプリルフールの答えがmarch(3月)だった以来のできごとでした。
 ちなみにお笑いコンビのニッチェの由来は二人が通っていた日本映画学校の略称「にちえい」からだそうです。

 そんなわけで2分割辞書と第三ワードについては前回までの投稿を参照してください。幸運をいのります

https://note.com/a_go_go/n/n2c46a7c452f1

https://note.com/a_go_go/n/n437ed0ddc1df

https://note.com/a_go_go/n/nbf01abd0120b

https://note.com/a_go_go/n/ne7dd6e0e9a32






いいなと思ったら応援しよう!