9の倍数
1〜9の数字をいくつか足して、和が9の倍数となるような場合の数を求めたい。ただし、
足す順番は無視するものとする。
(1) 1〜9の数字を最大1回だけ使えるときは何通りあるか。
(2) 1〜9の数字を最大2回だけ使えるときは何通りあるか。
(参考文献:筑波大学付属駒場高校 数学科学研究会 編 「Cafe Boll Weck No.7」)
(答) (2)を先に考える。
1、1+1(=2)、3、3+1(=4)、3+1+1(=5)、3+3(=6)、3+3+1(=7)、
3+3+1+1(=8)
と、1〜8までの数字が、1と3のみで表される。
そこで、問題の条件を満たす場合は、2、4、5、6、7、8、9 をそれぞれ0個〜2個足し
た式に、上の8つの式の何れかを加えて(加えられる式がもともと9の倍数の場合は加え
ないものとする)、9の倍数にしたものと考えられる。
したがって、求める場合の数は、 37−1=2187−1=2186(通り) となる。
(コメント) 0〜8のパターンを予め作っておき、それを用いて9の倍数になるように調整す
るという発想に脱帽しました。素晴らしいアイデアに感動!
(1)も(2)と同様に出来ると思ったが、使える数字は1回までという制約が厳しくて意外に
難しい。
(1)について、攻略法さんが(2)のアイデアを応用された。(平成25年12月12日付け)
上記の解では3進法の考え方が用いられている。それなら2進法でも・・・と。
類題 1〜8の数字をいくつか足して、和が8の倍数となるような場合の数を求めたい。ただ
し、足す順番は無視するものとする。
(1) 1〜8の数字を最大1回だけ使えるときは何通りあるか。
類題 1〜16の数字をいくつか足して、和が16の倍数となるような場合の数を求めたい。た
だし、足す順番は無視するものとする。
(1) 1〜16の数字を最大1回だけ使えるときは何通りあるか。
元の問題(1)に戻って、Bさんの解答(2進法に着目して数え上げる)
1から8までの数字で考える。2進法に着目して、
1 、2 、2+1(=3) 、4 、4+1(=5) 、4+2(=6) 、4+2+1(=7)
と、1〜7までの数字が、1と2と4のみで表される。
8は、上記の式の組合せではできないので、直接8を足すことになる。
問題の条件を満たす場合は、3、5、6、7、8をそれぞれ0個〜1個足した式に、上の7つの
式の何れかを加えて(加えられる式がもともと9の倍数の場合は加えないものとする)、9の
倍数にしたものと考えられる。
これは、25=32通りとなる。列挙すると、
何れも未使用 = 0 ≡ 0 mod 9
8 = 8 ≡ 8
7 = 7 ≡ 7
7+8 = 15
≡ 6
6 = 6 ≡ 6
6 +8 = 14 ≡ 5
6+7 = 13 ≡
4
6+7+8 = 21 ≡ 3
5 = 5 ≡ 5
5 +8 = 13 ≡ 4
5 +7 = 12 ≡ 3
5 +7+8 = 20 ≡ 2
5+6 = 11 ≡
2
5+6 +8 = 19 ≡ 1 ←←← 8を足すことができない
5+6+7 = 18 ≡ 0
5+6+7+8 =
26 ≡ 8
3 = 3 ≡ 3
3 +8 = 11 ≡ 2
3 +7 = 10 ≡ 1 ←←←
3+7+8と重複する
3 +7+8 = 18 ≡ 0
3 +6 = 9 ≡ 0
3 +6 +8 = 17 ≡
8
3 +6+7 = 16 ≡ 7
3 +6+7+8 = 24 ≡ 6
3+5 = 8 ≡
8
3+5 +8 = 16 ≡ 7
3+5 +7 = 15 ≡ 6
3+5 +7+8 = 23 ≡
5
3+5+6 = 14 ≡ 5
3+5+6 +8 = 22 ≡ 4
3+5+6+7 = 21 ≡
3
3+5+6+7+8 = 29 ≡
2
この中で、剰余1の2通りが除かれるので、 25−2=30通り。
これらの場合に、9を付け加えた場合も、9の倍数である。
したがって、9を含む、含まないの両方を考えて、求める場合の数は、
2*30−1=59(通り)となる。(終り)
(コメント) 攻略法さん、解答ありがとうございます。2進法を考えれば、(1)も(2)と同様に
エレガントに求まるんですね。まさしく私が欲していた解答です!
当HP読者のHN「とんくま」さんが、プログラムにより解を探究されました。
(平成25年12月10日付け)
パズルをプログラムで解いては面白みが無いかもしれませんが、SQL(on DB2)でやってみ
ました。十分な検証はしていませんが、とりあえず、
(1) 1〜9の数字を最大1回だけ使えるときは何通りあるか。
(2) 1〜9の数字を最大2回だけ使えるときは何通りあるか。
に対して、 (1) 59通り (2) 2186通り の結果を得ました。
((1)の出力結果)
1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 1 , 2 , 3 , 4 , 8 1 , 2 , 3 , 4 , 8 , 9 1 , 2 , 3 , 5 , 7 1 , 2 , 3 , 5 , 7 , 9 1 , 2 , 3 , 6 , 7 , 8 1 , 2 , 3 , 6 , 7 , 8 , 9 1 , 2 , 4 , 5 , 6 1 , 2 , 4 , 5 , 6 , 9 1 , 2 , 4 , 5 , 7 , 8 1 , 2 , 4 , 5 , 7 , 8 , 9 1 , 2 , 6 1 , 2 , 6 , 9 1 , 2 , 7 , 8 1 , 2 , 7 , 8 , 9 1 , 3 , 4 , 5 , 6 , 8 1 , 3 , 4 , 5 , 6 , 8 , 9 1 , 3 , 5 1 , 3 , 5 , 9 |
1 , 3 , 6 , 8 1 , 3 , 6 , 8 , 9 1 , 4 , 5 , 8 1 , 4 , 5 , 8 , 9 1 , 4 , 6 , 7 1 , 4 , 6 , 7 , 9 1 , 5 , 6 , 7 , 8 1 , 5 , 6 , 7 , 8 , 9 1 , 8 1 , 8 , 9 2 , 3 , 4 2 , 3 , 4 , 5 , 6 , 7 2 , 3 , 4 , 5 , 6 , 7 , 9 2 , 3 , 4 , 9 2 , 3 , 5 , 8 2 , 3 , 5 , 8 , 9 2 , 3 , 6 , 7 2 , 3 , 6 , 7 , 9 2 , 4 , 5 , 7 2 , 4 , 5 , 7 , 9 |
2 , 4 , 6 , 7 , 8 2 , 4 , 6 , 7 , 8 , 9 2 , 7 2 , 7 , 9 3 , 4 , 5 , 6 3 , 4 , 5 , 6 , 9 3 , 4 , 5 , 7 , 8 3 , 4 , 5 , 7 , 8 , 9 3 , 6 3 , 6 , 9 3 , 7 , 8 3 , 7 , 8 , 9 4 , 5 4 , 5 , 9 4 , 6 , 8 4 , 6 , 8 , 9 5 , 6 , 7 5 , 6 , 7 , 9 9 |
(コメント) とんくまさん、解答をお寄せいただき、ありがとうございます。
(1)については、(2)のようなエレガントな解答が期待できそうになかったので、次のように地
道に数え上げようと思っていました。
(1) 9の倍数になるのは、各位の数の和が9の倍数になるとき。
一個の和(A)のとき、 A=9 のみで、1通り。
二個の和(A+B)のとき、 A+B=9 の場合について、
A+B=9 となるのは、 1+8、2+7、3+6、4+5 の4通り
三個の和(A+B+C)のとき、 A+B+C=9、18 の場合について、
A+B+C=9 となるのは、 1+2+6、1+3+5、2+3+4 の3通り
A+B+C=18 となるのは、 1+8+9、2+7+9、3+6+9、3+7+8、
4+5+9、4+6+8、5+6+7 の7通り
四個の和(A+B+C+D)のとき、 A+B+C+D=18、27 の場合について、
A+B+C+D=18 となるのは、 1+2+6+9、1+2+7+8、1+3+5+9、
1+3+6+8、1+4+5+8、1+4+6+7、
2+3+4+9、2+3+5+8、2+3+6+7、
2+4+5+7、3+4+5+6 の11通り
A+B+C+D=27 となるのは、 3+7+8+9、4+6+8+9
5+6+7+9 の3通り
五個の和(A+B+C+D+E)のとき、 ・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・。
当HPがいつもお世話になっているHN「数々の和」さんが、(1)について考察されました。
(平成25年12月11日付け)
法9で考え、A={1,2,3,4,−4,−3,−2,−1} とする。Aの部分集合で、要素の和が9
の倍数になる組の数を考えればよい。
要素がk個の場合の数と8−k個の場合の数は同じである(補集合を考えればよい)ので、
k=0、1、2、3、4 の場合を考えればよい。
k=0 のとき {}の1組
k=1 のときはない。
k=2 のとき、絶対値が同じ2数を加える場合しか9の倍数は得られないので、4組。
k=3 のとき、絶対値が同じ2数を含まない。1組できると符号が反対のものも条件を満た
す。正のものが2個以上の場合を考えればよい。
すべてが正の数の場合は、{2,3,4} 、2個が正の数の場合は、{1,2,−3} 、{1,3,−4}
したがって、(1+2)×2=6組
k=4 のとき、1組できると補集合もk個の同じ条件を満たす。したがって、1を含むすべて
の場合を考えればよい。また、同符号のものを3個以上含むことはない。このとき、
{1,2,−1,−2}、{1,3,−1,−3}、{1,4,−1,−4}、{1,4,−2,−3}
したがって、4×2=8組
k=5 のとき、6組
k=6 のとき、4組
k=8 のとき、1組
これらに9を付け加えても9の倍数である。ただし、空集合には9を付け加えたときだけが
有効である。
以上から、 (1+4+6+8+6+4+1)×2−1=59(通り)
(コメント) 法9で考えることにより数え上げがスッキリですね!数々の和さんに感謝します。
当HPがいつもお世話になっているHN「at」さんが、問題の一般化に挑戦されました。
(平成25年12月10日付け)
気が向いたら、上記の問題を少し一般化した次の問題を考えてみてください。
【問題】 nを任意の正整数とします。1〜9の数字を1つ以上足し合わせて、和が9の
倍数となるような場合の数を考えます。ただし、足す順番は無視するものとし
ます。また、1〜9のどの数字についても、最大 n 回だけ使えるものとします。
このとき、和が9の倍数となるような場合の数がF(n)通りあるものとします。
F(n)をnの式で表してください。
参考までに、n=1、2、3、4、5、6、7、8、9、10 に対するF(n)の値を、Maxima
を使って計算
した結果を書いておきます。
F(1)=59 、F(2)=2186 、F(3)=29143 、F(4)=217044 、F(5)=1119743 、F(6)=4483814
F(7)=14913199 、F(8)=43046720 、F(9)=111111339 、F(10)=261994490
<計算に使用したMaximaのプログラム>
F(n):=sum(coeff(expand(prod(sum((x^k)^j,j,0,n),k,1,9)),x,9*p),p,1,5*n)$
らすかるさんからのコメントです。(平成25年12月10日付け)
プログラムを作って求めてみました。
F(1)=59 、F(2)=2186 、F(3)=29143 、F(4)=217044 、F(5)=1119743 、F(6)=4483814
F(7)=14913199 、F(8)=43046720 、F(9)=111111339 、F(10)=261994490
F(11)=573308927 、F(12)=1178278204 、F(13)=2295672483 、F(14)=4271484374
F(15)=7635498335 、F(16)=13176431824 、F(17)=22039921151
F(18)=35854190178 、F(19)=56888890679 、F(20)=88253338508
F(21)=134141026579 、F(22)=200128076214 、F(23)=293534171135
F(24)=423855255224 、F(25)=603278190475 、F(26)=847288609442
F(27)=1175383999719 、F(28)=1611905113868 、F(29)=2186999999999
F(30)=2937735802270 、F(31)=3909374683839 、F(32)=5156831600216
F(33)=6746332538363 、F(34)=8757293195314 、F(35)=11284439629823
F(36)=14440193321844 、F(37)=18357344596979 、F(38)=23192040128750
F(39)=29127111125359 、F(40)=36375770503560 、F(41)=45185709316607
F(42)=55843623566234 、F(43)=68680204408903 、F(44)=84075626953124
F(45)=102465573651555 、F(46)=124347830367854 、F(47)=150289495621631
F(48)=180934844238448 、F(49)=217013888916699 、F(50)=259351685898938
(以降10飛び)
F(60)=1299349565920940 、F(70)=5094277857685030 、F(80)=16677181699666568
F(90)=47547755570144010 、F(100)=121520585854046900
F(110)=284226324931833398 、F(120)=617768590388419480
F(130)=1262406294938257170 、F(140)=2447538344675751428
F(150)=4534715195244855350 、F(160)=8075889627521143840
F(170)=13890647296424932658 、F(180)=23166726118451719620
F(190)=37588742395509694910 、F(200)=59500690724697049088
F(210)=92108474215593440290 、F(220)=139729451328651058380
F(230)=208096755760337932718 、F(240)=304726956232590605360
F(250)=439360473796156542250 、F(260)=624485065329505575548
F(270)=875953613306843962830 、F(280)=1213708433620805614520
F(290)=1662625325277534129578 、F(300)=2253491638133658420700
F(n)≒(n+1)9/9 にはなっていますね。
at さんからのコメントです。(平成25年12月10日付け)
鋭いご指摘です。確かにそうなっています。特に、n≡2、5、8 (mod 9)のときには、
F(n)=(n+1)9/9 - 1 となります。
以下、工事中!