diL’s diary

素数大富豪についてのあれこれを書きます。

HNP確率を上げたい!

素数と出会うのは素数大富豪の醍醐味ですね!(挨拶)

前提

筆者は3桁の素因数分解がほとんど瞬時にできます(1秒とします)。そこで4桁の試し割りは桁数を一つ下げれば計算することができるので(ここにもう1秒)、素数1つにつき2秒、60秒の制限時間では30個ほどの素数で試し割りでき、4桁の素数判定はほぼ確実に制限時間内に完了できるわけです。しかし、桁数が増えると、試し割り法で割る必要のある素数の個数が増えるだけでなく、下げなければならない桁数も増えていくため、伴ってかかる時間も増え(一桁当たり1秒)、制限時間内に試し割りできる素数の個数も減ります。したがって、5桁以上の知らない数については基本的にHNPが必要となります。

この記事では、試し割り法とフェルマー法の併用により、どのようにすれば効率的に素数判定を手計算や暗算で行うことができるかを確率を考慮しつつ議論した上で、60秒などの制限時間内で5~7桁の数に対して実際にどこまでHNP確率を上げられるのかを見ていきたいと思います。

手計算フェルマー法

素数判定や素因数分解のアルゴリズムは多数知られていますが、人間が手計算で使えそうなものは主に、試し割り法とフェルマー法の2つであると思います。このうち試し割り法についてはよく知られているのでフェルマー法について解説します。

フェルマー法とは、因数分解したい数Nに対し、N=a^2-b^2を満たす自然数a,bを見つけることでN=(a+b)(a-b)と因数分解する方法です。具体的にはa=[√N]+1から始め、a^2-Nを計算し、平方数になるかチェックすることをaを大きくしながら繰り返していきます。愚直にはaを1ずつ大きくしていきますが、手計算の範囲での効率化として、Nのmod10やmod9などの剰余を調べることで、ありうるaのmod10やmod9を絞ることができ、平方する必要のあるaの数を減らすことができます。次の表のとおりです。

(Nの剰余→aの剰余)の表

・mod10∧mod4
1→1,5,9/0,4,6
3→3,7/2,8
7→1,9/4,6
9→3,5,7/0,2,8

Nのmod4が1なら/の左側、3なら右側

 

・mod9
1→1,8
2→0,3,6
4→2,7
5→0,3,6
7→4,5
8→0,3,6

 

・mod7
1→1,3,4,6
2→2,3,4,5
3→0,2,5
4→1,2,5,6
5→0,3,4
6→0,1,6

 

・mod11
1→1,2,4,7,9,10
2→0,4,5,6,7
3→1,2,5,6,9,10
4→2,3,4,7,8,9
5→3,4,5,6,7,8
6→0,2,3,8,9
7→0,1,4,7,10
8→0,1,3,8,10
9→1,3,5,6,8,10
10→0,2,5,6,9

 

・mod13
1→0,1,2,6,7,11,12
2→1,4,5,8,9,12
3→0,2,4,5,8,9,11
4→0,1,2,4,9,11,12
5→1,2,3,10,11,12
6→3,4,6,7,9,10
7→2,4,6,7,9,11
8→2,3,5,8,10,11
9→0,3,5,6,7,8,10
10→0,1,3,6,7,10,12
11→1,5,6,7,8,12
12→0,3,4,5,8,9,10

この剰余による絞り込みは7桁程度の数に対してはかなり有効です。mod9,10だけでも1/10~1/20に絞れ、さらに素数1つで絞るごとに1/2ほどになります。暗算で行う場合は、mod10,9,7あたりは記憶しておくとよいでしょう。

試し割り法とフェルマー法の併用

試し割り法では小さい素数から判定していくのが基本であるのに対して、フェルマー法では√Nに近い大きな素数から判定していくことができます。フェルマー法では√Nにaが近いほど効率よく判定でき、√N<a<(5/4)√Nの範囲を調べるだけで( (1/2)√N,√N)の区間に因数があるかどうか調べられますが、さらに( (1/3)√N,(1/2)√N)の区間を調べるには、aは(5/3)√Nまで計算する必要があります。すべての判定をフェルマー法で行うにはaはN/2ほどまで大きくする必要があり、圧倒的に効率が落ちていることが分かります。従って、試し割り法と組み合わせることでフェルマー法は最大の効果を発揮すると言えます。

限られた時間内に素数判定をして、HNP確率を上げることを考えると、ある素数pで割り切れないことが分かったとき、その数が素数である確率はp/p-1倍になったと考えられるため、始めは試し割りによって小さな素数について判定するのが効率が良いでしょう。しかし、ある程度まで割ってしまうと、素数1つの試し割りによる確率上昇の寄与が小さくなるため、フェルマー法を用いる方が効率よく確率を上げられるようになります。実際にこうなるか、具体的な状況を例に見ていきましょう。

Nが5桁の場合

Nが40000=200^2程度の場合を考えます。試し割り1回に3秒、フェルマー法のa1つあたりの2乗と引き算などの計算に15秒かかるとし、剰余により1/20に絞れたとします。

制限時間60秒では、67まで試し割り、a<1.02√Nまで、HNP確率:84%

制限時間120秒では、127まで試し割り、a<1.1√Nまで、HNP確率:99%

などとなり、ほとんど試し割り法で十分である一方、120秒ある場合など、数回はフェルマー法を使う方が計算が速くできることが分かります。

Nが6桁の場合

Nが360000=600^2程度の場合を考えます。試し割り1回に4秒、フェルマー法のa1つあたりに20秒かかるとし、剰余により1/20に絞れたとします。

制限時間60秒では、43まで試し割り、a<1.006√Nまで、HNP確率:62%

制限時間120秒では、109まで試し割り、a<1.006√Nまで、HNP確率:77%

フェルマー法の計算が重く、ほとんど試し割りという結果になりました。

Nが7桁の場合

Nが4000000=2000^2程度の場合を考えます。試し割り1回に5秒、フェルマー法のa1つあたりに30秒かかるとし、剰余により1/20に絞れたとします。

制限時間60秒では、31まで試し割り、a<1.0016√Nまで、HNP確率:49%

制限時間120秒では、83まで試し割り、a<1.0016√Nまで、HNP確率:60%

今度も同じようにフェルマー法はなかなか使えないという結果になりました。桁が増えるほど、フェルマー法があまり使えなくなるのは、√Nに近い素数の確率上昇の寄与がほとんどないためであると考えられます。十分に時間があり、完全な素数判定を行う場合などには、フェルマー法を用いた方が速いようです。

結論

頑張って試し割りしよう!

挑戦状:63043609を素因数分解せよ

挑戦状:63043609を素因数分解せよ(挨拶)

今回は素因数分解部に投げた挑戦状の解説をしていきたいと思います。自分で解きたい人はブラウザバック!

解法

step1:試し割り

何はともあれ、まずは小さい素数で割ってみましょう。各種倍数判定法や10n±1チェックなどを駆使しつつ気合で割っていくと、63043609は素因数41を持つことが分かります。そこで41で割ってみると1537649となりました。しかしこの後97くらいまで割ってみても他に素因数は見つかりません。1537649をこのまま割っていくのは大変に思えます。他の方法を探してみたいところです。

step2:自明な平方和

では、1537649をじっと眺めてみましょう。何か気づくことはあるでしょうか。そもそも、試し割りを続ける場合、最悪どこまで割ることになるのでしょうか。1537649のルートを考えてみます。すると、1240^2=1537600が非常に近いことが分かり、1537649=1240^2+7^2と平方の和で表せることが分かります。ここで63043609についても振り返ってみると、630436=794^2より、63043609=7940^2+3^2と平方和で表せることが分かります。なんだか意味ありげですが……?

step3:ブラマグプタの恒等式

ブラマグプタの恒等式というものがあります。次のような恒等式のことです。

(a^2+b^2)(c^2+d^2)=(ac+bd)^2+(ad-bc)^2=(ac)^2+(ad)^2+(bc)^2+(bd)^2

これを使うと、41=4^2+5^2ですから、(a^2+b^2)(4^2+5^2)=7940^2+3^2となる正整数a,bが存在して、a^2+b^2=1537649が成り立つことが分かります。ではa,bを求めてみましょう。ブラマグプタの恒等式から連立方程式(4a+5b,5a-4b)=(7940,3)を解けばよく、(a,b)=(775,968)となります。これで1537649に2通りの平方和による表示が得られました:

1537649=1240^2+7^2=775^2+968^2

step4:オイラーの分解法

フェルマーのクリスマス定理(二平方和定理)というものがあります*1

任意の4で割って1余る素数pに対し、自然数の組{a,b}がただ一通り存在して、p=a^2+b^2が成り立つ。

この定理によれば、1537649は素数ではないことが分かります。このような時、こちらの記事*2で紹介されているオイラーの分解法*3を用いることができます。

N=a^2+b^2=c^2+d^2と二通りに表示されているとき、(a>c , d>bを仮定)

(a+c)(a-c)=(d+b)(d-b) とできる。

ここで4数補題などと呼ばれる事実から、自然数k,l,m,nが存在して、

( (a+c),(a-c),(d+b),(d-b) )=(kl,mn,kn,ml) と表せる*4

このk,l,m,nを使ってNを表すと、ブラマグプタの恒等式から

N=(k^2+m^2)(l^2+n^2)/4

となるが、これはNを因数分解できている!

早速1537649に対して使っていきましょう。

二通りの表示から、(1240+968)(1240-968)=(775+7)(775-7):2208*272=782*768

∴ (k,l,m,n)=(46,48,16,17)

よって、1537649=(46^2+16^2)(48^2+17^2)/4=593*2593

と素因数分解できた!

以上より挑戦状の答えは、63043609=41*593*2593 となります。

作問背景

こちらの記事のように、一般に2通りの平方の和を半素数に対して見つけるのは大変に思えます*5。そこで、素因数分解部員の力で小さな素数の試し割りをしてもらうことで、2通りの平方和による表示を見つけてもらえるようにすれば、手計算で解ける面白い問題になるのではないかと考え、作問しました。ただ6桁の平方による表示は見つけ難かったこと、たとえ二通りの表示に気付いても、知らないとオイラーの分解法にたどり着くのは難しいこと、そもそも試し割りをしたくない大きさなことなどがあり、ちょうど流行っていたフェルマー法を用いた力業で解き切られてしまいました。

10進表記で二つの平方数が表れるような数を、自明な平方和をもつ数と自分は呼んでいますが、N,pNが共に自明な平方和をもつような半素数Nと300以下の素数pをプログラムで探索しました。Nの素因数は500~100000で全探索しました(500以下だと試し割りされてしまい得るため)。そのなかで、最も綺麗だと思った類題を置いておくので、ぜひこの記事の方法で解いてみてください!(試し割り部分は少々大変かもしれませんが楽な方の問題を選びました。)

類題:62500346921を素因数分解せよ

*1:主張はここで書いたものの逆も含むものや、一意性に触れていないものなど、バリエーションがあるようです。

*2:素数大富豪の考案者でもあるせきゅーんさんのサイト、INTEGERSの記事です。

*3:調べたところ、英語のWikipediaの記事を見つけました。Euler's factorization methodをこの記事ではオイラーの分解法と訳すことにします。

*4:最大公約数などを使って構成できる

*5:が、実際はフェルマー法と同じくらい効率的に見つけられるようです!

詰め合成数大富豪を解いてみよう!

みなさん、良い素数合成数ライフを送っていますか?(挨拶)

この記事ではOTTYさんが合成数大富豪 Advent Calendar 2025 で出題・解答した詰め合成数大富豪(略称:詰め合、詰め素*1 )の問題の内、いくつかについて解説するとともに、基本的な解法を整理していきたいと思います。

5:2445889QQ

11:4578889QQK

12:AA499999TQQ

この3問で、解説したいテクニックは大体尽くせると思います。残りの問題はぜひ楽しみに自分で解いてみてください*2。この3問も自分で解きたいという人にはブラウザバックをお勧めします。

ステップ1:奇数の数に着目しよう!

まず解の形を大まかに予想することを考えます。中には解の形が全く定まらないような難しい詰め合もありますが、パズルとして楽しめるように考えられたものでは、解の形がかなり定まることが多いです。特に、奇数の数に着目すると*3

・奇数が2個以下→2の冪乗を使うことが多い

・5が2つあり奇数がもう一つ→5ばいめーかーが多い

・奇数が3個→p×q=pq型が多い

あたりが重要です。パズルとしてみると、大きな素数の冪乗とかがあると解けないので、このようになりやすいのだと思います。

例として5番:2445889QQをみてみましょう。奇数が9しかなく、p×2^aの形であることが予想されます。また11番:4578889QQKも2や3などの小さい素数がなく、奇数が3個なのでpq型が予想されます。

解の形は、他の方法を併用することで段々と定まっていきます。次のステップに進みましょう。

ステップ2:桁数に着目しよう!

はじめにクイズです。一般にa桁の数とb桁の数をかけると何桁の数になるでしょうか?

答えはa+b桁かa+b-1桁です。これは2数をx×10^(a-1),y×10^(b-1)と置いてみるとすぐ分かり、xy≧10のときa+b桁となることもわかります。xy≧10なることを繰り上がりがある、ということにします。このx,yは大体、2数の最上位の数であることに注意してください。以下、ある数mの桁数を(m)、で表します。

では11番:4578889QQKを例に考えてみましょう。p×q=nという形が予想されるのでした。まず(p)+(q)+(n)は与えられた手札から13と分かります。ところが(n)=(p)+(q)または(n)=(p)+(q)-1だったので、(n)=6がわかり、さらに(p)+(q)=7です。しかも、繰り上がりがないです。ここから、この手札ではp,qのいずれかはQやK始まりであることもわかるのです。

ステップ3:mod10に着目しよう!

下一桁は定まりやすいです。詰め合には絵札があるため、場合によっては下二桁も定まることがあるでしょう。特にpq型では有効な手法です。また11番:4578889QQKを例に考えてみましょう。下一桁からは9×K=7,7×9=Kのいずれかであることがわかります。さらに、9×K=7の場合にmod100を考えると、49×K=37,59×K=67,89×K=57,Q9×K=77のうち、あり得るのは89×K=57のみであることも分かります。

ステップ4:mod3に着目しよう!

mod3やmod9を考えるのは、10進法での詰め合において有効です。特にpq型など冪乗を含まない形では考えやすいです。p,qが3でない時、p×q=nという(p,q,n)の組みに対して、mod3の組み合わせとしてあり得るのは、(1,1,1),(1,2,2),(2,1,2),(2,2,2)の4通りであり、p,q,nの合計は0か2であることが分かります。この合計の値は手札から知ることができ、手札のmod3と呼んでいます。

再び11番:4578889QQKを例に考えてみましょう。手札のmod3は4+5+7+8+8+8+9+Q+Q+K=86=2です。よって(p,q,n)は(1,2,2)または(2,1,2)という組みであることがわかりました。さらに手札のmod9も考えてみましょう。これは5であることがわかるので、(p,q,n)のmod9は(1,2,2),(4,2,8),(7,2,5)の3通り(p,qは入れ替え可能)のみとわかります。

さらに12番:AA499999TQQについても考えてみましょう。手札のmod9は4,mod3は1とわかります。すると上記のことからpq型ではないとわかり、pqr型が予想されます。p×q×r=nなる(p,q,r,n)のmod3の組みは(1,1,1,1)(1,1,2,2),(1,2,2,1),(2,2,2,2)しかないため、この場合(1,1,1,1)のみが適しているとわかります。すると、mod9の組みは(1,1,1,1),(4,4,4,1),(7,7,7,1),(1,4,7,1)のみであることもわかります。*4

このようにmod3でまず考え、その結果を使ってさらに情報を得たい時にmod9を考えると良いでしょう。pqrs型のmod3,9の考察は演習問題とします。

例題3つを解いてみよう!

今までの内容を総合して考えていくことで、3つの例題を全て解くことができます。以下に思考例を書いていきます。(以下常体)

5:2445889QQ

p×2^a型が予想されるのだった。a=1すなわちにばいめーかーができないことはQを使う因子が存在しないためすぐに分かる。pの下一桁は9しかなく、特にa≠9である。

a=8のとき:256×p=nの桁数を考えてみると手札から、(p)+(n)=9で、(n)=(p)+3より(p)=3,(n)=6。3桁の素数は449,859しかないが、2,8を除いた手札のmod3は0で(256,p,n)のmod3は(1,1,1)しかないから449は不適。*5859も最上位の数を考えると(概算すると)nが2始まりになり不適。

a=Qのとき:4096×p=nの桁数を考えて(p)=2,(n)=6,繰り上がりあり。2桁の素数は59,89のみであり、nの最上位の数を考えていずれも不適。

a=4のとき:16×p=nの桁数を考えて(p)=4,(n)=5,繰り上がりなし。4はnの下一桁なので、pの最上位は5かQしかない。Qはnの最上位を考えて不適。するとpは5889,5Q9のいずれかだが、5889は3の倍数で不適。5Q9は23の倍数で不適*6

a=5のとき:32×p=nの桁数を考えて(p)=4,(n)=5,繰り上がりなし。よってpはQ始まりで、素数はQ49,Q89しかない。概算で、32×1250=40000よりQ49は不適。Q89は2^5×Q89=4Q48で適することがわかる。

11:4578889QQK

pq型が予想されるのだった。まず下二桁が89×K=57の場合について考える。(p)+(q)=7かつ繰り上がりなしであったから、pもqもKでなければ、p,qの最上位は4,Qの組みしかないが、489,4Kは共に素数でなく不適。よってp=Kとできるが、qの先頭桁が何であってもnの先頭桁に適するものがないとわかる。

以上より下一桁は7×9=Kである。さらにmod100を考えると07×59=Kしかないことがわかり、とくにp=7とできる。ステップ2からqはQ始まりの6桁の数であり、ステップ4からqのmod9は2とわかる。よってあり得るのはQQ59,Q4859,Q8459しかなく、概算すればQQ59のみが適し*7、7×QQ59=8488Kとなることがわかる。

12:AA499999TQQ

pqr型が予想されるのだった。pq型の応用でpqr=nの桁数を考えると、(n)=(p)+(q)+(r)-0or1or2であるから、(n)=(p)+(q)+(r)=7で繰り上がり2、または(n)=6,(p)+(q)+(r)=8で繰り上がり0とわかる。

前者について、一桁の素数が無いことから、(p)=(q)=2,(r)=3としてよい。二桁の素数は11,19,41しかなく、(p,q)=(19,19),(19,41)となるが、いずれも繰り上がり2に矛盾する。

後者について、( (p),(q),(r) )=(2,2,4),(2,3,3)である。(2,2,4)のときやはりp=q=19であり、繰り上がり0からrの最上位はTまたはQである。しかし最上位Tだとr<1100よりnの最上位が3で不適。よってr=Q49しかないが、これはステップ4のmod9に矛盾する。ゆえに( (p),(q),(r) )=(2,3,3)である。

p=11はmod10が1×9×9=9となって不適。p=41のとき、繰り上がり0からnの最上位は9となるしかなく、Q始まりの3桁素数はないから、q,rのいずれかは19始まりすなわち199となる。しかしまたmod10が1×9×9=9となり不適。よってp=19であり、mod10は9×9×9=9であることも分かる。

ここでq,rとしてあり得る3桁の素数T9,199,919,149,419,499の6個のみで、nの最上位と繰り上がり0を考慮すると(q,r)=(T9,199),(T9,419)のいずれかであり、さらにステップ4のmod3から(T9,199)に絞られることがわかる。よって、あり得る解は19×T9×199=4QQ9のみとなり、実際にこの等式が成立していることが確かめられる。

まとめ

紹介した方法を組み合わせることで、無事に3つの例題を解くことができました。このように、桁数やいくつかのmodなどの簡単な情報から、かなり解を絞っていくことができます。特にpq型について有効であることがわかっていただけたと思います。ぜひこの記事の方法を組み合わせてさまざまな詰め合成数パズルを解いてみてください。

ちなみに詰め合成数大富豪スケルトン(詰合大助)では解の形が始めから分かっているので、よりこの記事の方法が有効に働きます*8。まずはこのパズルから解いてみるのもお勧めです。

OTTYさんによる詰め合成数大富豪スケルトン

その2

(注意)少なくとも1時間くらいはかかるので十分時間のある時に解きましょう。

 

*1:つめご、つめそ。後者は詰め素因数分解の略です。

*2:解答は作者のOTTYさんによって挙げられている他、さしみさんによる解いてみた記事もあります。なお、他の問題にはnばいめーかーの考え方が有効なものもあり、nばいめーかーについてはこちらの記事でも解説しています。

*3:5はちょっと特殊な振る舞いをするので偶数とします。

*4:p,q,rはやはり入れ替え可能。

*5:筆算をしても良い。あるいはnの下一桁が4となるので4が足りない。

*6:筆算しても良い。

*7:Q4859は7の倍数であることからも除外できる。

*8:例えば桁数を調べるだけで各素因数に使う絵札の枚数が分かったりする。

生成AIに頼んで6枚12桁合成数全探索

この記事は素数大富豪 Advent Calendar 2025の23日目の記事です。昨日は素数大富豪普及協会さんによる、素数大富豪ランチ会が累計参加者1000人を突破した話でした。ランチ会、もう2年も続いていてすごいですよね〜。7日の記事で触れた素数暗記会もランチ会みたいになったら良いと思っていましたが、なかなか継続は大変でした。

 

はじめに

6枚出しというものがあります。*1相全出し後、24枚ずつになった手札で、6枚→6枚切り札→残り12枚くらい、とできれば綺麗に上がることができます。しかし、この場合に使える切り札はKKKQQJぐらいのもので、これがない時に絵札が6〜8枚ぐらいしかなければ大抵絵札不利と言ってよく、先手でも再度全出しするくらいしかできないことがよくあります。*2

そんな時に、6枚12桁合成数を知っていれば、6枚素数→6枚12桁合成数*3、という2手での組み切りが可能となるかもしれません。この組み切りができれば、相手は最初の6枚素数に6枚12桁の強い素数を返すくらいしかなく、優位に立つことができます。*4

このような戦術は2年くらい前から考えられていましたが*5、肝心の6枚12桁合成数で使いやすいものを探すのが大変です。自分はプログラミングも得意でないので、探索は諦めていました。

ところが、最近便利になってきた生成AIを使うことで、合成数探索ができるのではないかと思い、やってみたらかなり上手く行きました!

その結果を以下書いていきます。*6

 

探索結果

・17〜19枚消費

・全ての数(1〜K)の被りは2枚以下

・0は使わない

この条件で探索するPythonプログラムを書いてくださいとGemini3にお願いしたら、ちゃんと1,2とQなどの区別もして探索できるようにしてくれました。Google Colabで実行した結果は次の通りです。

・18枚消費

kqjqkj = 3^2*4691*3t7869

kqtqjk = t3*1273884671

kjqqtk = 61*223*9638471

ktjtkj = 827*158417293

qkqttk = 29*4183175897

qkjtqk = 83399*1454587

qqtkjt = 2*5*43313*279847

qqtkjk = 3*463*87264299

qjktqj = 3*6287*6421351

qjjktk = 29*4176245897

qjtjkk = 47*101*25512979

qtjtqk = 19*67*113*841237

jkjtqk = 19*5858427427

jqttkj = 683*162825917

jtqjkt = 2*5*2689*4128379

jtqtqk = 13*31*275464271

tkqtjj = 13*29411*264977

tqtkkj = 3*54287*621451

tqtkqk = 22573*4483681

tjkkqj = 101*349*2868539

tjkjkq = 2^4*6319569457

 

・19枚消費

kkqjtt = 2*3*5*127*34465121

kqkqjj = 3^2*14579235679

kjkjtt = 2*5*7*3823*489941

kjqkqt = 2*5*577*911*24943

kjqqtt = 2*5*13*41*24598897

kjjqtk = 557*12763*18443

kttjqq = 2^2*44753*731851

qktjjt = 2*5*19*4789*133321

qktjtq = 2^2*56477*536989

qqjktt = 2*5*17*631*1129963

qjkkqt = 2*5*41*295397881

qjqktj = 3*136447*295871

qtjkqt = 2*5*21487*563183

jqtqtj = 3*11*29*293*613*647

jjkqtq = 2*5*941*2857*4133

jtkqtq = 3*17*661*1297*2539

tqkjqj = 3*269*125418973

 

・17枚消費

kqjtqj = 3*1013*43175749

ktqqjk = 157*834472109

ktjjqk = 7121*18397853

qkktqj = 47*2581129813

qjktqj = 3*6287*6421351

qjjtqk = 3*73^2*131*57829

qjtjkk = 47*101*25512979

qtktkq = 2^8*6317*74831

qtqjkk = 17*7118359489

jqktqk = 43*2586351191

jtqkqj = 3*8623*4291319

jtqjtk = 1693*65571241

tktqjj = 227*461*968113

18枚消費のものは、24枚からドロー→57→ドローで2回使うチャンスがあるので、1番上にしています。

使う絵札の枚数を指定できるようなプログラムにもできたので、素因数部分に絵札を使わないものを探索すると次のようになりました。代わりに各絵札は3枚被りまでを許容しています。こちらは18枚消費のもののみ調べました。

kjqqtk = 61*223*9638471

ktjtkj = 827*158417293

qkqttk = 29*4183175897

qkjtqk = 83399*1454587

qqkkqt = 2*3^5*5*49881947

qqtjkj = 3*463*87264299

qqttqk = 3*6827*5918173

qjkjtj = 43*2816583977

qjktqj = 3*6287*6421351

qjqtkq = 2^6*1892376583

qjjktk = 29*4176245897

qjtkjj = 43*2816514677

qtjqjj = 192187*629653

jktqjk = 19*5858427427

jqttkj = 683*162825917

jjkqjk = 189149*587437

jjqkjk = 29*3831452797

jjqttj = 29*3831451759

jtqqkq = 2^5*3469128791

tqtkkj = 3*54287*621451

tqtkqk = 22573*4483681

tjkjkq = 2^4*6319569457

tjjqjk = 463*218382551

tjttjk = 7*43969*328511

ttqqtk = 1721*58693853

ttqtkq = 2^6*53*29779511

というわけで、全探索をすることができました。すごい。ここから厳選して、どれを覚えるかは自分で決めないといけませんが……表があるだけで今までより格段に楽です。

 

感想

生成AIはとても便利です。自分はパソコンなどの機器は仕組みがよくわからず、変なエラーとか出ても対応できないので、すごく苦手であり、紙とペンが1番だと思ってますが、やっぱり便利なのでさまざまな電子機器に囲まれて生活しています。今でも生成AIは、物理などの問題の解決の参考や翻訳、書体・形式や表現の改善などに利用していますが、今回プログラムの生成もうまくいくことがわかったので、これから素数大富豪でもより活用することになりそうです。

これからAIなどにより素数合成数探索の幅が広がって色々な戦術などが見られるようになったら楽しいですね、皆さんもぜひ生成AIとか使ってみましょう!

アドカレの登録コメントに未来の素数大富豪についてと書きました。予定では違う内容のものを出すつもりだったので、今後差し替える可能性がありますが、この記事もちょっと未来の話と言えなくもない、という気もしますね。

 

*1:ところで、今日の合成数大富豪 Advent Calendar 2025の記事も6枚出しについてでした!

*2:あとは超多枚出しとか。

*3:合成数大富豪などでよく使われている表現では(18,6)枚出し

*4:さしみさんによって提案された、ユニークスキルの一つと言えます。

*5:例えばmickeyさんの記事さしみさんの記事で使いやすいものがまとめられています。さしみさんも生成AIを使っている模様。

*6:合成数大富豪の記事だったら(11,5)→(14,5)という夢の組み切り((11,5)はにばいめーかー)のための(14,5)合成数探索だったかもしれません。今度やります。

nばいめーかーに挑戦しよう!

この記事は合成数大富豪 Advent Calendar 2025の10日目の記事です。昨日の記事はまだ埋まっていませんが、今後埋まる予定です。*1

nばいめーかーと因子法

この記事ではnばいめーかーという合成数出しについて解説していきます。nばいめーかーとは、手札から、nの素因数分解素数p、そしてnpを見つけ、n×p=npという合成数出しをすることで、特に手札を全て使うものに言うことが多いです。n=2の場合は、にばいめーかーと呼ばれ、これについてはこちらの記事でやり方をより詳しく解説しており、この内容を前提にこの記事は書かれています。この記事では、n=2のほか、n=3,Jの場合を中心に解説していきます。

2・3・Jばいめーかーの例から

まずは例題をいくつかみてみましょう。

①(にばい)

手札:222555689QQ

答え:2×256Q9=5Q258

②(にばい)

手札:2244556779J

答え:2×56477=J2954

③(3ばい)

手札:123467889KK

答え:3×1627K=488K9

④(Jばい)

手札:123348899TJ

答え:J×82813=9T943

これを見ると、とても初めの11枚から合成数出しの形を作ることは難しく思えます。そこで、にばいめーかーでは、答えの(p,2p)の組を、次のような2倍(基本)因子に分割して考えることがことが良い方法なのでした。

(256Q9,5Q258)=(2,5)+(56,Q)+(Q,25)+(9,8)

(56477,J2954)=(5,J)+(6,2)+(4,9)+(7,5)+(7,4)

同様に、n倍(基本)因子というものを考えることで、残りも次のように分解できます。

(1627K,488K9)=(1,4)+(6,8)+(2,8)+(7K,K9)

(82813,9T943)=(φ,9)+(82,T)+(8,9)+(1,4)+(3,3)

このように、左辺(大きなn倍因子)を考えるかわりに、右辺(小さなn倍因子の組み合わせ)を作ることは、nばいめーかーの基本的なアプローチとなります。

因子法の限界

ところが、3倍因子、J倍因子と見ていくとわかるように、nが大きくなるにつれて繰り上がりの種類が多くなり、考えるべき場合の数が増えるため、因子に分けるのが難しくなっていきます。そのため、nが2より大きい時、nばいめーかーは、因子法のみでは今のところ現実的でないとされています。

全探索可能性・効率性、いくつかの工夫

nばいめーかーの解法は、全ての場合を全探索可能であり、かつ人力である程度の時間内にできることが重要です。因子法では後者を満たすのが難しいということがわかりました。

そこで、nばいめーかーの実現のために、因子法をベースとしつつ、いくつかの工夫が考えられています。それを今から見ていきましょう。ここに挙げられていない、または見つかっていない工夫も多くあると思われるため*2、それらについては、今後の研究が待たれます。

絵札・桁数への着目

n=2,3,Jかつ手札が11枚の場合を考えます。絵札が、11枚からnをのぞいた10枚のうちm枚ある時、pとnpの桁数の合計は10+mとなります。pとnpの桁数の差は0,1なので、*3mを見ることでp,npの桁数がわかります。n倍因子の枚数*4に着目すると、絵札の使い方が限られるので、考えるべき場合を減らすことができます。

閉因子法

これは主に、にばいめーかーで有効な工夫で、こちらの記事で解説した内容です。n倍基本因子のみを考えるのではなく、因子の並び替えが容易なように、いくつかの基本因子を組み合わせて、繰り上がりを左右で等しくしたn倍閉因子を作る方法でした。しかし、にばいめーかーでは2つ以下の基本因子から閉因子を作ることができますが、3ばいめーかーでは3つ、一般にnばいめーかーでは最大n個の基本因子を組み合わせる必要があり、実用的ではありません。

一桁目から考える

手札をいくつかの因子に分け、並び替えるのがにばい、3ばいめーかーの基本的な方法ですが、適当に分けてしまうと、繰り上がりが噛み合わないことがままあります。Jばいにもなると、ほとんど不可能と言って良いでしょう。そこで、一桁目に配置するn倍因子を始めに作り、続く桁のn倍因子を作ることを繰り返す、という方法があります。この方法では、繰り上がりが毎回確定するため、考えやすいです。

手札の偏り

ある数を使う因子は、nばいめーかーごとに限られています。そのため、ある数が顕著に多く*5手札にある時、その使い方が因子の作り方に制限を与えることがあります。このような制限から考えるのも良い方法です。

nごとの特徴

例えばn=3では、3,pともに奇数であるため、一桁目の因子は必ず奇数2つの組になります。他にもn=11では、11の倍数には偶数桁の数の和と奇数桁の数の和の差が11の倍数になるという性質があるため、一桁目から因子を組んでいくと最上位桁が確定する、などということもあります。このような、nごとの特徴を掴んでいくと、nばいめーかーが少しやりやすくなります。

応用とmod 3

最後に、少しの応用でn=5,30,110の場合にもnばいめーかーが可能となることを見ていきます。

n=5

5×p=5pの形を作ることが目標ですが、pは奇素数として良いため、p=2m+1とおけます。すると、5×(2m+1)=10m+5となりますが、右辺はmという数の末尾に5を付け加えたものです。よって、手札から5を2枚除いて、残りで(m,2m+1)という2倍因子を作ることで5ばいめーかーができることがわかります。*6

n=30

2×3×5×p=30pの形を作ることが目標ですが、ジョーカーがないものとすると、右辺の下2桁はT(10)であるため、p=10m+7とおけることがわかります。*7すると右辺は、300m+210=100(3m+2)+10となり、3m+2という数の末尾にTを付け加えたものになります。よって、手札から2,3,5,7,Tを除き、残りで(m,3m+2)という3倍因子を作ることで30ばいめーかーができることがわかります。*8

n=110

2×5×J×p=110pの形を作ることが目標です。右辺の下2桁がやはりTであることから、p=10m+1とおけ、110p=1100m+110=100(11m+1)+10となります。よって、手札から1,2,5,T,Jを除き、残りでJ倍因子(m,11m+1)を作れば良いです。

同様にして、任意の奇数kに対し、kばいめーかーができるとき、10kばいめーかーができることがわかります。*9

mod3

nばいめーかーができるかどうかが、手札のmod3*10を見ることでわかることがあります。*11例えばn=2,5,Jでは、手札のmod3は2です。またジョーカーがある時、ジョーカーが取る数の候補を絞るのにも役立ちます。

おわりに

具体例など今後追加していきたいと思ってます。n=2,3,5,7,J,Kの場合について、こちらのサイトで練習できます。

みなさんも合成数大富豪*12でぜひnばいめーかーにチャレンジしてみましょう!特に、にばいめーかーは現実的でおすすめです。そして、新しい解法や工夫を探していきましょう!

明日の記事はまだ埋まっていませんが、やはり今後埋まるでしょう、と書いていたところ、3TKさんが「オンラインでの一人回し練習」について書かれるようです。楽しみですね〜。

 

*1:25日の所に「今年も全部埋まったね」と書いてあるため。

*2:特にn=2,3,J以外のnに対しては、ほとんど考察されていないと言えます。

*3:n=Jかつ特殊な場合に2となることもありますが一旦無視します。

*4:これも2倍因子の時と同様に定義します。

*5:または少なく

*6:ただし、2m+1が素数とならねばなりません。

*7:7は3のmod10での逆元です!

*8:ただし、10m+7が素数とならねばなりません。

*9:5は偶数!

*10:全てのカードの数を総和を3で割った余りのこと。

*11:mod9でより精密にできますが、ここでは簡単にmod3で考えます。

*12:素数大富豪でも、あるいは詰め合成数大富豪のようなパズルとして

素数大富豪のリアルイベントに初参加した話

この記事は、素数大富豪 Advent Calendar 2025の7日目の記事です。昨日の記事は、3TKさんによる、札幌杯の参加報告でした。今日の記事と、素数大富豪の大会の参加記という点で共通していますね。色々な形式の対戦が行われていて面白そうです、いつかやってみたい!

はじめに

素数大富豪を始めて3年が経ち*1、オンライン上だけでなく、素数大富豪のリアルイベントに参加することを今年の目標としていました。その中で、最も大きな素数大富豪のリアル大会である、マスプライム杯に参加することができたので、今回は主にその記録を書いていきたいと思います。*2

参加まで

マスプライム杯では同時にマスぴよ杯という初心者向けの大会も行われるのですが、流石に3年も(主に競技)素数大富豪プレイヤーをしているので、そちらには参加しづらいと思い、マスプライム杯だけの参加としました。ただ、1年のブランクもあるため、何もせずただ参加するだけではいけないだろう、ということで、素数を暗記する会を企画し、また素数大富豪オンラインにもときどき顔を出して感覚を取り戻すことにしました。

夏の素数大富豪暗記会

素数大富豪の実力を上げるには、実戦だけでなく、素数を覚えることが欠かせません。しかし、多くのプレイヤーが、集まって対戦するだけで満足してしまい、なかなか実力を上げることができないでいる場合が多いです。かくいう自分もこの傾向が強く、新しい素数を覚えていない状況が続いていました。そこで、ただ素数を暗記するだけの会に需要があるのではないかと考え、マスプライム杯までの1ヶ月間、「夏の素数大富豪暗記会」を企画しました。

会はdiscord上で開かれ、そこでは有用な素数や知識を共有しつつも、基本的には個人で自由に素数を調べたり暗記したりする、という形で、週2度土日の夜に1時間の活動が行われました。毎回4人くらいは参加者がいました。

マスプライム杯後は、会を続けることはありませんでしたが、自分の主催でなくとも、色々な大会の前などに、同じような会があったら良いな、と思います。今回見つかった課題点である、

  • 基本個人作業なのもあり、集まっている感覚があまりないこと
  • 1時間という毎回の時間が思いの外短かかったこと

などについても、上手い方法が見つかると良いですね。

覚えたもの

自分がこの会で覚えた中で、9枚18桁と、96から始まる7枚12桁は大会後の今も役立っていると感じます。特に96の方は、さしみさんの記事の方法を使って語呂合わせも多く考えたので、素数表を以下に示しておきます。また、9枚18桁はmickeyさんの記事のtierSまでを主に覚えました。

96-

kkqkj

kqqqk

kqjqk

kqjqj

kqjtk

kjjjk

qkktk 白トマト

qqtjj 切りまくる

qtqqk チラチーノ

jjtkj

jttkj 疑おう

jttjj

tqqtj マキシマム

tqtkj ありがとう

ttkkk バーコード

ttjtj パラグラフ

tttqj パラダイス

上手い語呂合わせが見つからなかったものは気合いで覚えました。

マスプライム杯当日

マスプライム杯参加にあたってのアンケートで答える内容は結構迷いました。にばいめーかー*3をしたいなどと書いた気がしますが、結局大会中にばいめーかーを見ることはありませんでしたね。

会場に入ると、ほとんど初対面ながら、オンラインでは知り合いの方が多くいてほっとしていましたが、マスぴよ杯に参加する初心者の方や観戦者の方など、本当にはじめましての方も多く、思ったより幅広い世代の人がいることに驚きました。

大会中は、プレイヤーと審判を担当していましたが、プレイヤーとしては予選1回戦でOTTYさんとあたり、残念ながら負けてしまった*4ことで暇になり、審判の仕事も主に予選だけで終わったので、残りは観戦したり、周りの人と自由に対戦したりしていました。マスプライム杯・マスぴよ杯共に、決勝に近づくにつれて観戦もとても盛り上がりました!特にマスプライム杯決勝は、一瞬も目が離せない展開でした。なんと、マスプライム杯の優勝者、もりしーさんによる対談動画が5日の記事として上がっていますので、まだ見ていない方はぜひ見てみてください。

一方のマスぴよ杯の決勝といえば、優勝のけんさんはもちろん、ポラリスこまみさんの活躍も忘れてはいけません。素因数分解部員*5のひとりである、素数大富豪は初心者の、ポラリスこまみさんを誘った結果、マスぴよ杯に参加してもらうことができました。そして準優勝!すごい!

さらにマスプライム杯・マスぴよ杯決勝の観戦の裏話として、素数大富豪オンラインを使用して、オンライン観戦だったmickeyさんと素数大富豪をしながら観戦していました。素数大富豪オンラインを使用することで、現地には来ることができなかった人とも大会を楽しめるのが良いですね。大会に参加したかったけど現地に行けないという方、素数大富豪オンラインを覗いてみてください。大会の裏で集まっているプレイヤーがいるかも知れませんよ!

以上が自分のマスプライム杯参加記となります。運営の方々、参加者の皆さん、ありがとうございました。

素数大富豪で遊ぼう会in関東

もう一つ、リアルイベントの、素数大富豪で遊ぼう会in関東にも参加してきました。こちらは、マスプライム杯でも運営をしていらっしゃった、はなぶさん、ななみさんにより運営される会です。*6詳しい説明は素数大富豪で遊ぼう会in関東を見てもらうこととしますが、こちらは大会ではなくまったり素数大富豪を楽しむ会となっていて、参加者6人のうち初心者の方も2人おり、友人を誘って参加するのにも良い雰囲気でした。月に一度の開催ということで、あまりない対面での素数大富豪の機会が定期的に得られるようになっているのが嬉しいですね。

ローテーションでの対戦が盛り上がった他、LT*7の時間に、nばいめーかー*8についての話をさせてもらいました。この内容については、合成数大富豪 Advent Calendar 2025の方で10日の記事として書く予定なので、よければそちらも見ていってください。さらに関連して、詰合成数大富豪についての記事がはなぶさんによって5日に書かれているので、そちらもぜひ!

リアルイベントに参加してみて

対面での素数大富豪も、オンラインとは違った新鮮さがあり面白かったです。いつも通り全出しをして、増えた24枚のトランプの整理に苦労したのは良い思い出です*9。対戦相手の考えている雰囲気が伝わってくるのも楽しいところですね。

素数大富豪をやってみたいけれども、リアルイベントへ行くのはハードルが高いと思っている人へ

  • まずはオンラインでの素数大富豪から始めてみましょう!素数大富豪オンラインには結構人もいます!
  • いざリアルイベントに参加する、という時はぜひ、知人や友人を誘ってください!

ということをこの記事で伝えられたら嬉しいです。

明日の記事の内容は、はちさんによる「倍数判定法」です!素数大富豪では、特に素数に出会いに行く時などに様々な倍数判定法を用いて計算することがあります。実用性の面でもとても楽しみですね!

 

*1:内1年はほとんど活動していませんでしたが

*2:今年の様子はこちらから見ることができます。

*3:詳しくはこの記事などをご覧ください。

*4:じゃんけんに負け、1戦目は順当に負け、2戦目は先手で出した8枚出しにHNPで返され、ストレートの負けとなりました。

*5:mickeyさんによって作られたdiscordチャンネル「素因数分解部」の参加者で、素数あつめなどの素数に関係するゲームアプリのプレイヤーたちのこと。

*6:従ってお二人には今年本当にお世話になりました。運営いつもありがとうございます。

*7:何の略かはよくわからない。

*8:合成数出しの一種で、pを素数として、n×p=npとしてnpを出すこと。

*9:未だにどうすれば扱いやすいのかわかっていません。

にばいめーかーで遊ぼう!

きっかけ

素数大富豪 Advent Calendar 2022の22日目のはちさんによる記事HNC入門にて、はちさん自身が編み出し大会などで使っていた、n=2×p型の合成数出しを作る手法が解説されました。

これを読んだ私は、やってみようと思い素数大富豪オンラインに出向きますが……全然できそうな手札が来ません。確率が1%ぐらいと思われるので、これは当然でした。そのためあまり練習できない状況が続いていました。

ところが先日!さしみさんによりこれを練習できる環境、にばいめーかーが作成されました!これは練習するしかないと何度かやってみたところ、だんだんコツがつかめ、遂には10問を3分ほどでクリアできるまでになりました。 そこでこの記事で、コツのようなものを紹介してみたいと思います。

用語・表記

はちさんの記事で、数の組(p,n)というものが使われていますが、これをこの記事でも使用し、2倍因子と呼ぶことにします。そしてpに使われるカードの枚数とnに使われるカードの枚数の合計を、2倍因子(p,n)の枚数と呼ぶことにします。

また2倍因子に対し、上への繰り上がりと下からの繰り上がりの有無を有を1,無を0として(00),(01),(10),(11)と表記し分類します。後に(20),(21)という分類も出てきます。さらに、(00),(20)と(11)の2倍因子を閉じた2倍因子ということにし、他を開いた2倍因子ということにします。*1

主な内容
2倍因子を閉じる

はちさんの記事にあるように2倍因子を最小の単位で作っていくと、繰り上がりの把握に時間がかかってしまいます。そこで、2倍因子を閉じて考えることがスピードアップにつながります。2倍因子を閉じるとは、単に2倍因子を作るのではなく、閉じた2倍因子に限定して手札を分割していくことです。*2

ここで繰り上がりについて、a,b,c,dを0と1のいずれかとして、2つの2倍因子P(ab),Q(cd)がこの順に並べられるのはb=cのときで、並べてできる2倍因子PQはPQ(ad)となります。そのため、(00)の2倍因子は繰り上がりのない2つの2倍因子の間に、(11)の2倍因子は繰り上がりのある2倍因子の間に、それぞれ幾つでも並べることができ、間に入れる前の2つの並んだ2倍因子をPQ(ab)とすれば、間に入れた後の2倍因子も(ab)となり、繰り上がりに影響がないことがわかります。

さらに、(01)*3の2倍因子を作ってしまったらすぐに(10)の2倍因子を作り、並べることで(00)*4の2倍因子として扱うことができます。(10)を作ってしまっても同様です。これを意識することで、2倍因子を全て閉じたものとして考えることができ、繰り上がりの把握に困らなくなります。

かなりわかりにくい説明になってしまいましたが、要するに(1,3)ではなく(17,34)のようにして考えるということです。この例からもわかるように、2桁ぐらいのものしか出てこないので簡単に閉じた2倍因子を作れると思います。今後表をつける予定です。

追記(2/22):はちさんが閉じた2倍因子の表を作ってくださいました。組み替えも書いてあり、便利です。

はちさんによる2倍因子表

下一桁用の2倍因子を先に作る

にばいめーかーでは2×p=nのpは13までの素数で割れない必要があるので、当然奇数でないといけません。先にpが奇数の閉じた2倍因子(p,n)を作っておくとスムーズにいくと思います。

絵札0枚の時

ここからは絵札の枚数ごとの考え方(パターン)を書いていきます。絵札0枚の時は特に注意することはありません。今後のために予告しておいた(20),(21)の2倍因子について書きます。*5

  • (20)・・・(5,T),(6,Q),(55,1T),(56,1Q),(6,12),(7,14),(8,16),(9,18)
  • (21)・・・(5,J),(6,K),(55,1J),(56,1K),(5,11),(6,13),(7,15),(8,17),(9,19)

これらは先頭にしか置けない2倍因子であることが重要な点です。*6

絵札1枚の時

1枚の絵札を2倍因子に組み込むとき、はちさんの記事にある2倍因子のみで考えると、奇数枚の2倍因子になってしまうので、にばいめーかーでは11枚を組む必要があることから上手くいきません。そこで、(20)と(21)の2倍因子を使う必要があります。具体的には次の2パターンがあります。

  • 絵札を使う(20),(21)の2倍因子*7が先頭に置かれ、あとは普通に組む
  • 絵札を使わない(20),(21)の2倍因子*8が先頭に置かれ、絵札を含む奇数枚の2倍因子も途中に使われる

多くの場合は前者のパターンで解決します。前者でうまくいかず、1や2が多い時に後者を疑ってみてください。*9

絵札2枚の時

これも2パターンがあります。

  • 絵札を2枚使う2倍因子*10ができる
  • 奇数枚の2倍因子が2つ使われる

Tがない時は必ず後者で組むことになりますね。

絵札3枚の時

この場合は絵札が1枚の時と2枚の時の方法を合わせて考えます。絵札1枚の時の後者のパターンは枚数からほぼ出ないと考えられるので少し単純です。

他の細かいコツ
  • 絵札から決めたほうがよいと書きましたが、更に大きい数字(右側)から決めていくとスムーズにできます。
  • 絵札1枚時、1が(多く)ある場合は(5,T)などではなく(55,1T)などを使ったほうが速くできることが多いです。

今後も追記していきます。*11

実践例
  • 122456889TK

まず絵札(2枚)から決める+閉因子にしたいので、(T69,2K8)とします。残りは1458ですが、(4,8),(5,1)とすれば良いことがわかるので並び替えて(4T659,82K18)となります。(5,1)には繰り上がりがあることに注意しましょう。

  • 2555778999J

絵札が1枚なので(59,J8)とします。すると557799が残りますが(7,5),(7,5),(9,9)とできるので並び替えて(57799,J5598)などとできます。最初の閉因子で残りを挟んでいるイメージです。

  • 11233445777

絵札がないのですぐに決まるものがなく、逆に難しいです。とりあえず閉因子を作るしかないので(17,34)とすると、残りは134577ですが、(37,74)と(5,1)が見えたので(17357,34714)などとできました。

  • 222555689QQ

絵札が2枚ですがTがないので(Q56,25Q)としてみます。すると2589が残り、(29,58)とできるので(Q5629,25Q58)となりました。が、これは1001チェックを通りません。そこでやり直して(256,5Q)と(Q9,258)を作るとうまくいったので(256Q9,5Q258)で正解です。

  • 22334566679

(46,92)とすると335667が残り、(3,6)×2と(7,5)なので(47633,95266)とできました。閉因子を見つけるのは行き当たりばったりで、(46,92)でだめだったら(36,72)…などとして探します。

  • 2244556779J

(57,J4)とすると245679で(46,92),(7,5)が上手くいかないのでやり直し。(56,J2)として445779は(47,94),(7,5)で(56477,J2954)などとできて成功です。

  • 11222235566

(26,52)としてみると112356が残り、(16,32)とはせず(5,1),(3,6),(1,2)とすることでうまくいきます。はちさんの閉因子表にも組み替えとして載っています。(25631,51262)などが答えです。

  • 1233455668T

まず(55,1T)を作ります。できない場合もありますが、(5,T)より考えやすくなるのでおすすめです。残り334688は単純に(3,6),(4,8)×2にできます。(55433,1T866)などとして正解です。

  • 23444777789

(39,78)は444777となりできません。(37,74)として447789が残り(47,94),(8,7)とできました。(37487,74974)などです。

  • 12234456779

(47,94)とすると123567で(16,32),(7,5)または(36,72),(5,1)などとできますね。(16,32)も(1,2),(3,6)と組み替えられます。

  • 1112225566K

(566,1K2)とすると1125が残るので(1,2),(5,1)として(55661,11K22)とできました。(5,1)は前に付けられることに注意です。

 

どうでしょうか?慣れてくるとどんどん思考が簡略化して速くできるようになると思います。実践あるのみです!

 

まとめ

この記事で紹介したコツは以下の3点でした。

  • 2倍因子を閉じる
  • 下一桁用の2倍因子を作っておく
  • 絵札の枚数に注意する

これがみなさんのにばいめーかー*12に役立てば嬉しいです。まだやったことがない人も、ぜひ遊んでみてください!

*1:よく略して(2倍)閉因子,開因子と呼ばれます

*2:繰り上がりをうまく把握することでもあります。

*3: もしくは(21)

*4:左に並べたら(11)ですが、全体で1つの(00)の2倍因子にすることを考えるとこれはあまり使われません。

*5:実は、記事公開当初は(55,1T),(55,1J),(56,1Q),(56,1K)の4つは見逃してしまっていました。これが必要な場面はかなり少ないと思います。

*6:というのは厳密には間違いで、(5,T),(5,J),(6,Q),(6,K)以外は(11)を前に置くことができます。(が、結局新しい(20),(21)ができます。)とはいえこの認識は並び替えに役立ちます。このことも当初は見逃していました。

*7: (5,T),(5,J),(6,Q),(6,K),(55,1T),(55,1J),(56,1Q),(56,1K) 

*8: (7,15)など

*9:後者の例:1123566889Kは(8,16),(56,K)を作り、81569×2=163K8などとしないとうまくいきません

*10: (T6,2Q)など

*11:実践例も今後追加していきます。

*12:にばいめーかーをプレイすること