積たちの和                            戻る

 当HPがいつもお世話になっているHN「at」さんからの出題です。
                                      (平成25年2月22日付け)

 次の問題を考えてみてください。

[問題] n を任意の正の整数とします。

 a+2b+3c+4d+5e=n を満たし、なおかつ、 a≧b≧c≧d≧e≧0 も満たすような

整数の組 (a,b,c,d,e) のそれぞれに対して、積 abcde を考え、次にそのようにして出

来た積をすべて足し合わせます。このようにして出来た和を f(n) で表すことにします。

 このとき、f(n) を n の式で表してください。


 例えば、n=20 の場合、a+2b+3c+4d+5e=n と a≧b≧c≧d≧e≧0 を同時に満た
すような整数の組 (a,b,c,d,e) は、以下に示すように全部で25組だけあります。

(a,b,c,d,e)=(20,0,0,0,0)、(18,1,0,0,0)、(16,2,0,0,0)、(14,3,0,0,0)、(12,4,0,0,0)、(10,5,0,0,0)、
          (8,6,0,0,0)、(15,1,1,0,0)、(13,2,1,0,0)、(11,3,1,0,0)、(9,4,1,0,0)、(7,5,1,0,0)、
          (10,2,2,0,0)、(8,3,2,0,0)、(6,4,2,0,0)、(5,3,3,0,0)、(11,1,1,1,0)、(9,2,1,1,0)、
          (7,3,1,1,0)、(5,4,1,1,0)、(6,2,2,1,0)、(4,3,2,1,0)、(2,2,2,2,0)、(6,1,1,1,1)、(4,2,1,1,1).

 従って、f(20)の値は次のようになります。

 f(20)=20*0*0*0*0+18*1*0*0*0+16*2*0*0*0+14*3*0*0*0+12*4*0*0*0+10*5*0*0*0
    +8*6*0*0*0+15*1*1*0*0+13*2*1*0*0+11*3*1*0*0+9*4*1*0*0+7*5*1*0*0
    +10*2*2*0*0+8*3*2*0*0+6*4*2*0*0+5*3*3*0*0+11*1*1*1*0+9*2*1*1*0
    +7*3*1*1*0+5*4*1*1*0+6*2*2*1*0+4*3*2*1*0+2*2*2*2*0+6*1*1*1*1+4*2*1*1*1
    =14












(答) 空舟さんからのコメントです。(平成25年2月22日付け)

 うーん・・・、15e+10d+6c+3b+a=n となる a,b,c,d,e≧0 の組に対して、

   f(n)=e(e+d)(e+d+c)(e+d+c+b)(e+b+c+b+a)

という考え方をしたところ、15e+10d+6c≦nとなるe,d,cが寄与する項f(n;edc)の計算までは実
行できました。

   (参考) a+2b+3c+4d+5e=n より、
     (a+b+c+d+e)+(b+c+d+e)+(c+d+e)+(d+e)+e=n
    そこで、 a=u+v+w+x+y、b=v+w+x+y、c=w+x+y、d=x+y、e=y と
   なる u、v、w、x、y≧0 を用いると、a≧b≧c≧d≧e≧0 が満たされる。
    このとき、 u+3v+6w+10x+15y=n となる。
    以上から、問題は、u+3v+6w+10x+15y=n 、u、v、w、x、y≧0 を満たす
     u、v、w、x、y について、
      f(n)=(u+v+w+x+y)(v+w+x+y)(w+x+y)(x+y)y
    を求め、その総和を計算すればよいことになる。


 3B=(n-15e-10d-6c) とおくと、bの範囲は、0≦b≦[B]で、

  f(n;edc)=e*(e+d)*(e+d+c)*Σ(e+d+c+b)*(n-14e-9d-5c-2b)  [0≦b≦[B]]

 Σの計算を実行すると:

(e+d+c)(n-14e-9d-5c)*([B]+1)+(n-16e-11d-7c)*([B]^2+[B])/2-(2[B]^3+3[B]^2+B)/3

 nのかわりに、n=3B+6c+10d+15eを代入した表現:

(e+d+c)(3B+e+d+c)*([B]+1)+(3B-e-d-c)*([B]^2+[B])/2-(2[B]^3+3[B]^2+[B])/3

 e=1,d=c=0,n=20,3B=5,[B]=1 を計算すると、「14」になる確認をしました。

 今度はcの範囲を、6C = n-15e-10d とおいて、 0≦c≦[C] とかすれば、と思ったけれど、
(そうするとB = 6C-6c)ややこしそうであきらめました...。


 GAI さんからのコメントです。(平成25年2月25日付け)

 この問題意識は、フリーマン・ダイソンがラマヌジャンのタウ係数を組合せ的手法で構成し
たときに使用した式となにかしら関係しているものではないですか?


(コメント) 自然数 n の小さい値について、f(n) を求めてみた。

n=1〜14 のとき、 f(n)=0 である。

n=15 のとき、 a+2b+3c+4d+5e=15 (a≧b≧c≧d≧e≧0) を満たす組は、

 (a,b,c,d,e)=(15,0,0,0,0)、(13,1,0,0,0)、(11,2,0,0,0)、(10,1,1,0,0)、
           (9,3,0,0,0)、(8,2,1,0,0)、(7,4,0,0,0)、(6,3,1,0,0)、
           (6,1,1,1,0)、(5,5,0,0,0)、(5,2,2,0,0)、(4,4,1,0,0)、
           (4,2,1,1,0)、(3,3,2,0,0)、(2,2,1,1,0)、(1,1,1,1,1)

 よって、 f(15)=1

n=16 のとき、 a+2b+3c+4d+5e=16 (a≧b≧c≧d≧e≧0) を満たす組は、

 (a,b,c,d,e)=(16,0,0,0,0)、(14,1,0,0,0)、(12,2,0,0,0)、
           (11,1,1,0,0)、(10,3,0,0,0)、(9,2,1,0,0)、
           (8,4,0,0,0)、(7,1,1,1,0)、(6,5,0,0,0)、(6,2,2,0,0)、
           (5,4,1,0,0)、(5,2,1,1,0)、(4,3,2,0,0)、(2,2,2,1,0)
           (2,1,1,1,1)

 よって、 f(16)=2

(コメント) やっと、f(15)=1、f(16)=2 ...(T_T)


 at さんからのコメントです。(平成25年3月1日付け)

 空舟さん、GAIさん、私の出題に対しての書き込み ありがとうございます。既に指摘があっ
たように、この問題は適当に文字を置き換えることによって、

  f(n)=Σ[15e+10d+6c+3b+a=n、a,b,c,d,e≧0] e(e+d)(e+d+c)(e+d+c+b)(e+d+c+b+a)

によって定義されるf(n)を nの式で表す問題になります。このあとは以下のように考えれば
いいです。

e(e+d)(e+d+c)(e+d+c+b)(e+d+c+b+a) ・・・(1) を展開すると多くの項が現れます。その中の
ひとつ、 abe3 を例にとってみます。

 abe3 のf(n)に対する寄与を、 f(n:abe3)とします。f(n:abe3)は、

(x+2x2+3x3+…)(x3+2x6+3x9+…)(1+x6+x12+x18+…)(1+x10+x20+x30+…)(x15+23x30+33x45+…)

を展開したときの xn の係数になっています。ここで、

 x+2x2+3x3+…=x/(1-x)2 、x3+2x6+3x9+…=x3/(1-x3)2 、1+x6+x12+x18+…=1/(1-x6) 、

 1+x10+x20+x30+…=1/(1-x10) 、x15+23x30+33x45+…=(x45+4x30+x15)/(1-x15)4

であることを考えれば、f(n:abe3)は、

  x/(1-x)2・x3/(1-x3)2・1/(1-x6)・1/(1-x10)・(x45+4x30+x15)/(1-x15)4 ・・・(2)

をマクローリン展開したときの xn の係数ということになります。

 つまり、f(n:abe3)の母関数 Σ[k=0〜∞]f(k:abe3)xk は、(2)で与えられる ということになり

ます。(1)を展開したときの、abe3以外の項についても上記と同様の計算をします。そのよう

にしてできた母関数たちの和が f(n)の母関数 Σ[k=0〜∞]f(k)xk になります。

 f(n)の母関数は次のようになります。

Σ[k=0〜∞]f(k)xk

=x15(120x86-336x85+672x84-684x83+474x82+540x81-1428x80+2500x79-1766x78+844x77
+1964x76-2812x75+4378x74-1848x73+1278x72+3004x71-2496x70+6156x69-2830x68+4908x67
+2297x66-2254x65+12096x64-8266x63+11851x62+2316x61-3762x60+18740x59-10905x58
+14556x57+4347x56-2390x55+17731x54-6740x53+14497x52+2272x51+4125x50+12626x49
-4463x48+16884x47-2055x46+6828x45+11871x44-6400x43+16801x42-2130x41+4561x40
+9850x39-3895x38+10276x37-49x36+3580x35+4081x34+382x33+4799x32-558x31+3909x30
+406x29+1037x28+2732x27-1001x26+2274x25+305x24+62x23+1397x22-356x21+649x20+254x19
+85x18+262x17+55x16+168x15-31x14+156x13-3x12-8x11+107x10-70x9+59x8-12x6+20x5-5x4
+4x2-2x+1)/((x+1)3(x-1)7(x2-1)3(x2-x+1)4(x2+x+1)8(x4-x3+x2-x+1)5(x4+x3+x2+x+1)7(x8-x7
+x5-x4+x3-x+1)6) ・・・(3)

 これをマクローリン展開したときのxnの係数がf(n)です。(3)を部分分数分解すれば、f(n)が
求まります。部分分数分解の際には、各項が g(x)/(1-xp)q (p,qは正整数、g(x)はxの多項式)
という形になるようにすればf(n)が求め易いです。

 私が得たf(n)の式です。  (注):FLOOR( )は床関数です。


 GAI さんからのコメントです。(平成25年3月2日付け)

 提示された式で算出したら、次の結果が並びました。

f(n)=0   (1<=n<=14)、f(15)=1、f(16)=2、f(17)=3、f(18)=8、f(19)=11、f(20)=14、f(21)=34

f(22)=44、f(23)=54、f(24)=98、f(25)=134、f(26)=162、f(27)=274、f(28)=360、f(29)=422

f(30)=650、f(31)=874、f(32)=1014、f(33)=1486、f(34)=1896、f(35)=2235、f(36)=3126

f(37)=3961、f(38)=4604、f(39)=6156、f(40)=7648、f(41)=8941、f(42)=11584、f(43)=14211

f(44)=16330、f(45)=20943、f(46)=25360、f(47)=29117、f(48)=36468、f(49)=43469

f(50)=49646、f(51)=61580、f(52)=72498、f(53)=82400、f(54)=100072、f(55)=117465

f(56)=132844、f(57)=159709、f(58)=185388、f(59)=208226、f(60)=248114、f(61)=286927

f(62)=320592、f(63)=378280、f(64)=432778、f(65)=483264、f(66)=565700、f(67)=644048

f(68)=715216、f(69)=829042、f(70)=939638、f(71)=1041761、f(72)=1198494、f(73)=1351189

f(74)=1489446、f(75)=1707200、f(76)=1916470、f(77)=2107516、f(78)=2398624

f(79)=2677615、f(80)=2938084、f(81)=3330815、f(82)=3702000、f(83)=4050178

f(84)=4560308、f(85)=5058212、f(86)=5520786、f(87)=6190577、f(88)=6836712

f(89)=7437309、f(90)=8311642、f(91)=9158080、f(92)=9937264、f(93)=11059370

f(94)=12132968、f(95)=13151227、f(96)=14587450、f(97)=15962565、f(98)=17255782

f(99)=19059902、f(100)=20812772