好きな寿司ネタは穴子と平目

anagohirameが短文でないものを書きます

くそなぞなぞ Voluntary Contest 001 の writer をした話

どういう記事?

有志で開催したくそなぞなぞコンテストの解説・講評・雑感を書きます。参加された方,ありがとうございました!

おことわり

前回記事は初投稿ということで丁寧な日本語を心がけていましたが,今回からはそこそこ砕けた文体も辞さず書いていきます。

くそなぞなぞ Voluntary Contest って,何?

去る2020年12月24日,くそなぞなぞ界隈に 店長(@_shop_one)さん の手により shitforces というオンラインコンテストサイトが爆誕しました。直訳すればクソ力。うーんおあつらえ向き。

くそなぞなぞ用に開発されたコンテストですが,実質的に問題と正解があれば有志でいくらでもコンテストが開催できるので,ソートなぞなぞアナグラム。くそなぞなぞになぞらえた名称がつけられている)や部分トーナメント(指定された文字列を部分文字列に含み,かつ特定の条件を満たす文字列を探す。……百聞は一見に如かず!)などの多様な言葉遊び系コンテストが現在に至るまで開催されています。

そこで cumin(@Ohirururu)さん (現在くそなぞなぞレーティング2位)の発案で,有志のくそなぞなぞコンテストを開催することになりました。有志なので voluntary なんですね〜。

anagohirame作問題の解説

cuminさんからの発案により,それぞれが 100〜600点問題1問ずつのセットを作り,それを合わせて12問にしようという構想のもと作成が行われました。 ということで僕が作った問題は偶数問目(B, D, F, H, J, L)でした。正直難しいんじゃないでしょうか。全完者,出るのか。

→ 出た。マジ?

B - 100点,正解者89人(70.0%)

目が21個ある動物なーんだ?

こんな100点問題があっていいのでしょうか。

「目が21個」などで検索すると実は典型問題であることがわかり,解としてサイコロが出てきます。確かにサイコロには1〜6の目,合わせて21個の目がありますね。サイコロはサイ(賽)とも言う(というかコロが後からついた接尾辞だと考えられます。石ころのころと同じ)ことから動物に繋がります。答えはサイでした。「サイコロ」そのものはコロが余計なので不可としています。いや犬ころとか言うけど……まあ。

正直Dの方が難易度としては低いと思いましたが,そのまま検索で解ける+語彙力はそこまで必要としない ということで100点としました。検索なしで自力で解けると結構気持ち良いのではないでしょうか。新機軸の問題だと思います。

D - 200点,正解者94人(72.9%)

「κ's c」これなーんだ?

新機軸問題。実は見掛け倒し。

文字列を丁寧に見ることがポイント。一文字目は英小文字の k(ケー)ではなく,ギリシャ文字の κ(カッパ)です。はじめ κ だとはわからなくても,英小文字ではなさそうと気づけばコピペ検索などをすることでわかります。これを踏まえて全体を英語っぽく読むと「カッパズシー」,そう,答えはかっぱ寿司でした。

shitforces でギリシャ文字が出せるかが当初の懸念事項でしたが,店長さんによると使用可能文字の許容度はかなり広いらしく,絵文字も行けるかもしれないとのこと。新たな時代の到来は近いのかもしれません。

またこの問題を作るにあたって本当にかっぱ寿司の読みが「かっぱずし」なのかを調べたところ,確かに日本語では「かっぱずし」でした。てか違ったらCMソングがおかしい。しかしかっぱ寿司 web サイトの URL をよく見ると "www.kappasushi.jp" となっています。え?
一瞬戸惑いましたが,外国人にとって寿司は sushi として浸透していることから,連濁という日本語内の現象を忠実に反映して zushi とすると混乱をきたしてしまう,という配慮の下このようになっているのではないかと考えられます。興味深いですね。

F - 300点,正解者44人(34.1%)

合流する魚なーんだ?

ようやくの Japanese traditional kuso-nazonazo といった趣。

要素が「合流」と「魚」の二つしかありませんから,これらを言い換えてつなげるしか道はありません。魚を言い換えようとすると全探索への果てしない道のりをたどることとなります。合流を言い換えるといくぶん楽ですが,類語検索だけでなく,英訳も考える必要がありました。「合流する 英語」と検索するとまず出てくるのは join や confluent ですが,他の単語も探すと merge を見つけることができます。マージ,競プロでもよく出ますよね。そう,答えはマアジでした。

シンプルな構造ですがドツボにはまるとキツい。崖になっているかもしれません。あと作った当初は合流の英語といえば merge だと思っていましたが,merge は主には「合併」のニュアンスが強く,日本語でいう「合流」に合致するのは専ら道路の合流を指す用法のようです。参考

H - 400点,正解者19人(14.7%)

1mもない旅行なーんだ?

一手考察を進めるのは容易ですが,そこからは個人差。

「1mもない」が確実に意味ありげなので言い換えましょう。mを素直にメートルと読むと,1メートルよりも短い距離は主にcm(センチメートル)を用いることに思い至ります。かなり妥当かつ選択肢の少ない言い換えですから,これが答えにつながると信じて考えましょう。「センチメートル」の語感に旅行っぽい用語が続くか考えて,「センチメンタル・ジャーニー」(傷心旅行の英語,同名の曲が昭和に流行りました)が思いつくかは人次第でしょう。答えはセンチメートル・ジャーニーでした。「・」の有無は問わなかったのですがどうやらそのまま「センチメンタルジャーニー」の回答が多かったようです。メンタルまでもじってほしかったところ。

若く,かつ昭和の懐メロ!みたいな歌番組をほとんど見たことがなければ厳しかったかもしれません。知識&もじり枠でした。

J - 500点,正解者5人(3.9%)

争いが好きなオタクの料理なーんだ?

何度か出題歴のある俗語問題。どうしてこんなことに……

「争い」を言い換えようとするのは定石ですが,正答に結びつくのはそこで上位に出てくる単語ではありません。「オタク」をどう処理するかがポイント。過去には英訳してナード(nerd)と言い換える問題がありましたが,俗語に言い換える(くBC005-F,くBC007-F など)という準典型と合わせて,他の単語をオタクっぽい言い回しにすることを求めました。「好き」をオタク語に変換すると「すこ」となります。これを suffix に持つ料理としてシュラスコがありますが,残りの部分であるシュラは修羅,すなわち争いの意味を持ちます。答えはシュラスコでした。

……難しいと思います。次の600点よりは簡単だろう&問題としては使いたいということでこの位置にしましたが,難易度逆転してしまいました。反省。

L - 600点,正解者34人(26.4%)

場を凍らせやがる湖なーんだ?

実質無理枠だと思っていたのですが想定をはるかに超えて解かれました。人はすごい。

問題文の構造自体からは典型的なものを感じます。湖そのものを言い換える方向より,それより前の部分をうまく言い換えると何かしらの湖になる方向のほうが有り得そうです。さらに湖全探索は国すら絞られずあまりに多すぎて無謀ですから,前半の言い換えを試みましょう。

場を凍らせるというのがどのようなシーンかを想像してみましょう。しょーもない一発ギャグ,言った人しか笑ってないオヤジギャグ……滑ってますね。ここに「やがる」という意味を言葉をつけようと考えると,言い換えの候補に「おる」が浮かびます。(参考)すべりおる湖……スペリオル湖!ということで答えはスベリオル湖でした。

言い換えの特殊性に加えてスペリオル湖も要求知識の低い語はなく,難しいでしょう。一度「アメリカの湖」とか「五大湖」にしてしまおうかとも考えたのですが,五大湖だと全探索が容易すぎるしアメリカの湖だと五大湖とか有名なやつ以外が答えになる可能性がヤバすぎるのでボツに。今思うとこのままで良かったんですね。すげ〜。

おまけ:M2が苦しむ五大湖なーんだ?→ シューロン湖(ドラッグで読んでください)

cuminさん作問題について

問題選定の際に cuminさん作の問題(ACEGIK)も一度解いたので,こちらについては解いた際の思考過程を記そうと思います。

A - 100点,正解者121人(93.8%)

笑う指なーんだ?

100点ということで指を全探索すればいいだろうと考えた結果,薬指が当てはまりそう。比較的すぐ解けました。答えはクスリ指ですね。

C - 200点,正解者115人(89.1%)

舌を割る楽器なーんだ?

そんな楽器はないので,言い換えを確信。舌を言い換えるとベロ,タン……タンバリン!確かに割れてる〜ということで解ける。タンバリンが正解です。

E - 300点,正解者90人(69.8%)

すぐ光をあてる哲学者だーれだ?

哲学者自体はいくらでもいますが300点ということで比較的有名どころと意識しながら検索。するとソクラテスのソクが目にとまります。残りのラテスは……?と考えると swap でいけることに気づきました。答えはそくてらすです。swapは意外と出ていない形式かもしれません。

G - 400点,正解者47人(36.4%)

連続した破裂音と閃光が楽しめる艦隊なーんだ?

数分考えましたが解けませんでした。艦隊の一種をベースにした答えになりそうで,艦隊といえばバルチック艦隊無敵艦隊連合艦隊など。ここまでは良かったのですが,「連続した破裂音」などで検索しても音声学における破裂音しか目に止まらず,前半が爆竹の説明文であることに気づかず……。ということで答えはバクチック艦隊でした。僕自身は解けなかったものの正解者がほとんど出ないほどではないだろうと思いましたが,果たしてそうでした。

I - 500点,正解者29人(22.5%)

最初の植物なーんだ?

構造がかなり単純で,「最初」を言い換えればいいのではという発想が初手。さらに500点ということでやや高級っぽい言い回しを考えると「始祖」に思い至る。紫蘇ですね。答えはシソでした。

一度 cumin さんから植物を野菜にして難易度を下げようかという提案があったのですが,行けるんじゃないかと続行を提案してみました。そこそこ正解されたようでよかったです。

K - 600点,正解者31人(24.0%)

2点入る点の物語なーんだ?

「点」が二つでややこしい。点を入ると表現するのはたいていスコアにおける点ですから,2点が入るようなスポーツを考えると例えばバスケットボールの通常ゴールなどがありますが,なかなか答えになりそうにない。ということでもっとメジャーなスポーツで2点入るシーンを考えると,野球のツーランに至る。ツーラン,物語……トゥーランドット!あっドットあるじゃん!!ということで解けました。答えはもじってツーランドットでした。

なんとか解けましたがまあ難しいと思います。このあたりが600点適正なのかなという印象。

いかがでしたか?

ぶっちゃけなかなかの虐殺セットだと思います。しかし全完は出た。人類の神秘。

終了後の Twitter を見ていると「そんな言葉知らねえ」が散見され申し訳ない気持ちに多少なりましたが,初めて難易度の肌感を writer 側から感じられ良い経験となりました。お楽しみいただけたならば幸いです。また開催したいですね。

最後に

前回記事で僕が推していた「クソなぞなぞbot」アカウントが,先日諸事情により削除されたようです。R. I. P.

くそなぞなぞ 難問題の系統とその解き方

この記事は,くそなぞなぞ Advent Calendar 2020 14日目の記事です。

自己紹介

anagohirame と申します。2020年12月現在,残り僅かな学生時代を過ごしています。

趣味として競技プログラミング(以下競プロ)を楽しんでおり,現在 AtCoder では青〜黄の境界をさまよっています。

くそなぞなぞとは

これから言及する「くそなぞなぞ」とは,競プロをしている界隈にて発生した,唯一解のあるなぞなぞを Twitter 上で出題し楽しむ,あるいは HackerRank などのオンラインジャッジにてコンテストの形式で出題し,その得点を競う文化のことを指します。

なお,「くそなぞなぞ」という名称自体はおそらく Twitter の「クソなぞなぞbot」というアカウントに由来しています。まさに玉石混交の構成で,質のジェットコースターを楽しむことのできる良質(逆説的ですね!)なコンテンツです。おすすめはこれとかこれとか。

過去さまざまな作者(競プロにちなみ writer と呼ばれる)によりコンテストが開催されてきましたが,現在ではりきぽんさん尺さんが中心となって運営されているくそなぞなぞ Beginner Contest(通称くBC)が界隈の中心的な存在になっています。

くそなぞなぞ Beginner Contest とは

くBCは競プロ入門用(ほんとか?)コンテストである AtCoder Beginner Contest(ABC) にちなんだもので,難易度順に $ 100n\ (n \in \mathbb N,\, 1\le n\le 6)$ 点がつけられた6問のなぞなぞを解き,その総得点および解答時間を競うコンテストです*1こちらの Twitter アカウントでコンテストの開催予定やコンテスト結果,レーティングなどが発表されます。レーティングは本家 AtCoder と似た計算式によってパフォーマンスと共に計算され,コンテストごとにランキングが表示されます。

本論への導入

私は直近の くBC 010 にてレーティングが2010となり,くBCの rated 範囲である2000未満の領域を脱出しました。(くBC010の結果および現在までのレートランキング。anagohirame が私です)

ここに至るまでの rated コンテストの結果をまとめた表が以下です。

コンテスト 順位 パフォーマンス レーティング
くBC002 1 2400 1200
くBC004 6 2240 1639
くBC005 58 1195 1763
くBC006 6 2286 1879
くBC008 21 1562 1903
くBC009 6 2121 1949
くBC010 1 2400 2010

手前味噌ながら,7回中5回で1桁順位となかなかの高パフォーマンスを維持できているように思います。ちなみに参加者はコンテストごとに100人前後で,1桁順位はおよそ上位10%に相当します。

この結果を出すために何か精進をしたかというと,全くしていません。くBCに出るようになってから辞書を読む機会が増えたとか,そういったこともありません。

本記事では,現在の600点レベルの問題(いわゆる難問)の構造を分析し,そのうち私がコンテスト中に正解した問題については思考過程を明らかにすることで,知見を共有することをねらいとしています。

記事の性質上ネタバレを多分に含むのでご注意ください。

本論:F問題の構造と思考過程

典型パターン:最後の名詞が集合→その要素を探索

「○○で○○な△△ってなーんだ?」という問題文で,解答全体が△△という集合の一種となっており,その語を異なるやり方でパースすることでその中に他の○○の要素を見出す,という形式は典型となっています。

くBC002-F(参加・AC)

昔のレベルの症状ってなーんだ?

答え:過呼吸/過去級

f:id:anagohirame:20201214011628j:plain 本問はF問題のなかでも最も単純な構造をしており,「昔」「レベル」をそれぞれ言い換えてつなげると症状の一種となります。

本番の私は「昔 類語」「レベル 類語」などで言い換えを探索しつつ,それらのなかである症状の部分文字列になるようなものがないかを探していくことで「過呼吸」に到達しました。

難しいポイントは症状の全探索では答えにややたどり着きづらいことでしょうか。この問題形式であっても,全探索がうまくいくとは限りません。

いずれにせよ最易でしょう。

くBC003-F(不参加)

9より大きい薬ってなーんだ?

答:糖衣錠/十以上

f:id:anagohirame:20201214012959j:plain これも同様の構造。「より大きい」という表現をそのまま答えに使うとは考えづらく,これを言い換えることで「10以上」を導くことは比較的容易でしょう。ここから「いじょう」を suffix として持つ薬を考える/探索する,という手順になるかと思います。

図示では「とお」と「とう」を類音として処理していますが,音声ベースで考える際にこの二者はもはや区別されませんから,図よりも考察ステップは1つ少なくなることが予想されます。

また構成要素が2つしかなくパターンを色々試すような状況でもない,といった点も難易度を下げるでしょう。

くBC010-F(参加・AC)

今いる場所が地の底だと教えてくれる、お菓子の飾り付けってなーんだ?

答:ココアビス/ここアビス

f:id:anagohirame:20201214020210j:plain 同様の典型構造ながら,本番での正解率がかなり低かった問題。原因は「ココアビス」の低い知名度と「アビス」の要求語彙にあるかもしれません。

私の場合は,「今いる場所」を「ここ」に言い換えたと仮定するとお菓子の飾り付けとして「ココア」を prefix に持つものが考えられるため,ココアを用いたお菓子の飾り付けを探索することでココアビスケット,さらにその略称としてのココアビスにたどり着きました。

ここで重要なのは,ACするために,アビスやココアビスなどの難単語を自ら導き出す必要はないということです。検索の過程で文字列を適当にスライスしてそこにアビスを見出す,あるいは単語の存在を仮定して「ココアビス」で検索をかける*2,といった行動でACの可能性を高めることができます。

くBC007-F(参加・AC)

足取りを誇大にアピールする虫ってなーんだ?

答:盛る歩調(モルフォ蝶)

f:id:anagohirame:20201214124259j:plain ここまでにはない要素が2つあります。

  • もじる

「もるほちょう」と「もるふぉちょう」は発音がやや異なります。この程度の違いは多々含まれるので,考察ステップとみなさない方がよいとすら言えます。

  • 俗語に言い換える

「誇大にアピール」を言い換えようとしても検索のみで「盛る」にたどり着くことは難しく,自力で思いつくことが要求されるでしょう。しかしこの手のパターンがあることを知っておけば,パターンの選択(いわゆる「解法ガチャ」)の段階で言い換え先の俗語を挙げておくことで,ACの可能性を高めることができます。

実際私も本番では「盛る」を頭の片隅に置いた上で虫の種類を探索し,蝶に行き当たった際に「もる」を prefix とするモルフォ蝶の存在に至りました。

くBC009-F(参加・AC)

多くの財産を残して死んだソフトウェアの種類ってなーんだ?

答:ようけ遺産ソフト(表計算ソフト)

f:id:anagohirame:20201214022211j:plain 前問とかなり類似した構造であることがわかりますね。

こちらは「ようけ」への言い換えが俗語かつ方言ということでより難しい一方で,ソフトウェアの種類が虫に比べかなり限られ探索がしやすいため,本問と前問のどちらを難しく感じるかは人によってかなり異なるでしょう。

特に言い換え先として「遺産」を固定した上でソフトウェアを探索すると「表計算ソフト」は容易に見つけられるため,残りの「ひょうけ」が「多く」を意味する何らかの単語をもじった結果ではないか,と半ば決め打ちにより答えを探すことが可能です(本番の私のパターン)。

くBC005-F(参加・WA)

まさに国家がやることってなーんだ?

答:ドネーション/どネーション

f:id:anagohirame:20201214022843j:plain 構造としてはこれまでと共通で単純ですが,言い換え先として「ど」を自発的に思いつくことが難しいことと,「やること」の集合からドネーションを思いつくことはもはや不可能であることから,難易度はかなり高いと考えられます。

ACまでの思考過程としては,国家を言い換えた「ネーション」が動詞の名詞化を表す英語の suffix である -nation に通ずることからあとは「まさに」の言い換えの試行を繰り返す,といったものになるでしょう。前問でも述べましたが,ひとまず一部分を固定することは案外効果的です。

くBC008-F(参加・WA)

霧を敬遠する職業ってなーんだ?

答:アルケミスト/歩けミスト

f:id:anagohirame:20201214023737j:plain 「敬遠」→「歩け」の言い換えがすこぶる特殊です。ここまでくると該当部分は後から当てはめて納得するよりほかなく,前問と同様に,霧を言い換えた「ミスト」が人を表す英語の suffix である -ist に通ずることから,「ミスト」で終わる職業を探索することで答えにたどり着くという過程が現実的でしょう。*3

なお,このような prefix や suffix を固定した探索にはgoo辞書が有用です。

くBC006-F(参加・AC)

蚤の市の様子を尋ねる主役の女性ってなーんだ?

答:フリマどんな(プリマドンナ

f:id:anagohirame:20201214024723j:plain 「主役の女性」と「プリマドンナ」はほぼ同義とみなして図示したためやや特殊ということで後半の位置としました。語彙力によってはプリマドンナを陽に導くことが可能であり,蚤の市→フリマとこれが容易に重なることから,瞬殺も可能です。かなり個人差のつく問題と言えるでしょう。

非典型パターン:全要素を言い換える

くBC004-F(参加・WA)

3級の童謡ってなーんだ?

答:ターシャリーライム(ナーサリーライム

f:id:anagohirame:20201214025433j:plain 2要素しかない問題ですが,この両者を言い換えそれらを組み合わせるという構成になっています。

このような特殊な構造ながら「3級→ tertiary」「童謡→ nursery rhyme」どちらの英訳も一般的な語彙とは言い難く,こと tertiary については他の英訳も考えられる中で理系色の強い*4語であり,言い換えをターシャリーに固定するのは難しかったかもしれません。

なお,このような全要素を言い換える問題は現在600点問題では1問しか見られないものの,500点なども含めると複数回の出題があります。稀な出題であることそれ自体により難易度が上昇するという面もありますので,このパターンを知っておくだけでもいくばくかは有利です。

ごく稀なパターン:言い換えをしない

くBC001-F(不参加)

ニッチな法ってなーんだ?

答:二進法

f:id:anagohirame:20201214032058j:plain 初回ながら非常に特殊な構造で,最後に紹介することとしました。用いられているテクニックが同音異義語・同形異音語のみであり,類義語が用いられていません。以降のくBCではこれまでご覧いただいたように言い換え/類義語がかなりの主要テクニックとなります。よって本問は黎明期の味わいと言える一方で,この傾向の出題が今後新たになされる可能性も十分に考えられます。パターンとして押さえておくと役に立つ……かもしれません。

おわりに

以上に10問の600点問題の構造を図示し,ACを得るための思考過程の言語化を試みました。

くそなぞなぞはしばしば「語彙力ゲー」と評されます。もちろん語彙力は主要な武器ですが,それ以外にも一要素を決め打ってからの探索,俗語への言い換え,英語の prefix/suffix への接続など,テクニックによってもACへと近づくことができることがおわかりいただけたのではないでしょうか。

本記事が皆さんの快適なくそなぞなぞライフの手助けとなれば幸いです。お読みいただきありがとうございました。

*1:より高難易度のくそなぞなぞ Regular Contest(くRC)や,より低難易度のくそなぞなぞ Short Contest(くSC)なども低頻度ながら開催されますが,それらを含めた広義の概念もまた「くBC」と呼称されることが多いです。

*2:このような思いついた語が実在する概念かを調べるための検索の場合には,画像検索も有効です。例:「ココアビス」での Google 画像検索結果 商品名に「ココアビス」の文字列があることが確認できます。

*3:霧の英語には mist のほかに fog などもありますが,「フォグ」よりは「ミスト」の方が文字列としての応用性が高いと見て,まずは「ミスト」に決め打って探索することが望ましいでしょう。

*4:有機化合物である第3級アルコール tertiary alcoholや 1-ブタノールの構造異性体であるtert-ブチルアルコールなどからこの語を確認することができます。