|
> No.3009[元記事へ]
> 問題
> nを任意の正の整数とする。
> a≧b≧c≧0、a+2b+3c=n
> を満たす整数の組(a,b,c)のそれぞれに対して、積abcを考える。
> その積のすべての和をf(n)とすると、f(n)をnの式で表せ。
答え
A=a-b、B=b-cとする。a≧b≧cより、A≧0、B≧0
また、A=(n-3c-2b)-b=n-3c-3b=n-3(b-c)-6c=n-3B-6c ∴A+3B+6c=n
Σ[a+2b+3c=n,a≧b≧c≧0]abc
=Σ[A+3B+6c=n,A≧0,B≧0,c≧0](A+B+c)(B+c)c
(終り)
FOR N=1 TO 50
PRINT "N="; N
LET S=0
FOR c=1 TO INT(N/6) !c≧1として考える
FOR B=0 TO INT((N-6*c)/3) !B≧0として考える
LET A=N-6*c-3*B
IF A<0 THEN STOP !論理エラー
PRINT A;B;c !題意を満たす
LET S=S+(A+B+c)*(B+c)*c
NEXT B
NEXT c
PRINT "積=";S
NEXT N
END
別解 母関数
(A+B+c)(B+c)c=(AB+B^2)c+(A+2B)c^2+c^3である。
項ABcのf(n)に対する寄与をf(n:ABc)と表す。
変数1a,A,1b,B,B^2,c,c^2,c^3に相当するxの多項式は、
1a =1+x+x^2+x^3+x^4+x^5+x^6+x^7+ … =1/(1-x)
A =0*1+1x+2x^2+3x^3+4x^4+5x^5+6x^6+7x^7+ … =x/(1-x)^2
1b =1+x^3+x^6+x^9+x^12+x^15+x^18+x^21+ … =1/(1-x^3)
B =0*1+1x^3+2x^6+3x^9+4x^12+5x^15+6x^18+7x^21+ … =x^3/(1-x^3)^2
B^2 =0^2*1+1^2x^3+2^2x^6+3^2x^9+4^2x^12+5^2x^15+6^2x^18+7^2x^21+ … =(x^6+x^3)/(1-x^3)^3
c =0*1+1x^6+2x^12+3x^18+4x^24+5x^30+6x^36+7x^42+ … =x^6/(1-x^6)^2
c^2 =0^2*1+1^2x^6+2^2x^12+3^2x^18+4^2x^24+5^2x^30+6^2x^36+7^2x^42+ … =(x^12+x^6)/(1-x^6)^3
c^3 =0^3*1+1^3x^6+2^3x^12+3^3x^18+4^3x^24+5^3x^30+6^3x^36+7^3x^42+ … =(x^18+4x^12+x^6)/(1-x^6)^4
である。
f(n:ABc)の母関数Σ[k=0,∞]f(k:ABc)*x^kについて
f(n:ABc)は、積A*B*cをマクローリン展開したときのx^nの係数になる。
同様に
f(n:B^2c)は、積1a*B^2*c
f(n:Ac^2)は、積A*1b*c^2
f(n:Bc^2)は、積1a*B*c^2
f(n:c^3)は、積1a*1b*c^3
したがって、f(n)の母関数は、
Σ[k=0,∞]f(k)*x^k
=f(n:ABc) + f(n:B^2c) + f(n:Ac^2) + 2*f(n:Bc^2) + f(n:c^3)
= x/(1-x)^2 * x^3/(1-x^3)^2 * x^6/(1-x^6)^2
+ 1/(1-x) * (x^6+x^3)/(1-x^3)^3 * x^6/(1-x^6)^2
+ x/(1-x)^2 * 1/(1-x^3) * (x^12+x^6)/(1-x^6)^3
+ 2 * { 1/(1-x) * x^3/(1-x^3)^2 * (x^12+x^6)/(1-x^6)^3 }
+ 1/(1-x) * 1/(1-x^3) * (x^18+4x^12+x^6)/(1-x^6)^4
= (6x^20+8x^19+10x^18+12x^17+13x^16+14x^15+17x^14+16x^13+15x^12+8x^11+7x^10+6x^9+3x^8+2x^7+x^6 )
/ { (1-x^3)^2 * (1-x^6)^4 }
これをマクローリン展開したときのx^nの係数になる。、
(終り)
先のマクローリン展開のプログラムでは、DATA文の箇所を、
DATA 20 !次数 f=6x^20+8x^19+10x^18+12x^17+13x^16+14x^15+17x^14+16x^13+15x^12+8x^11+7x^10+6x^9+3x^8+2x^7+x^6
DATA 0,0,0,0,0,0,1,2,3,6,7,8,15,16,17,14,13,12,10,8,6 !係数 ※展開して次数が小さい方から
DATA 30 !次数 g=x^30-2x^27-3x^24+8x^21+2x^18-12x^15+2x^12+8x^9-3x^6-2x^3+1
DATA 1,0,0,-2,0,0,-3,0,0,8,0,0,2,0,0,-12,0,0,2,0,0,8,0,0,-3,0,0,-2,0,0,1 !係数 ※展開して次数が小さい方から
とする。
|
|