Sum_{n = 1..24} n^2 = 70^2(1)
仮面ライダービルドという番組では、毎回話数にちなんだ数式が出てくるらしい。
24 話は
第Sum_{n = 1..N} n^2 = m^2 話
と出てきたらしい。
non-trivial な解は(N, m) = (24, 70) だけであることが証明されているが、
これに関連した合同式が以下に載っているので、確認してみた。
https://arxiv.org/pdf/1408.2083.pdf
出力結果
38763309456
462020482247056
747476458624247956
410642171997238585492
111434641874810006945492
18191136786434088480554708
2012438256327271820435198933
163207370324148310682771198933
10252979903717047241162445935333
519540220693607026058959606895333
21897463285036869389800152685153769
786321943715813441660415677068283369
24522804473179162618215486599300233769
674662006053352720500322946677998467625
16586697380546568748122861685021923923250
368380134300903032793240735709663753196850
7459109851575547037101015852422721856622450
138788710970335909298902346913307828210388850
2389227204143285091714377049772906741585951350
38280520704849554688691895267401266006415391350
573828412677118995859016958585990858803229915766
8084885115050056947605509164143950252163341122166
107506556899252904588122918856018016231802824914566
1354122807420479577276982518165534609358397061559942
1
577
64081
2230865
25559765
62138069
342499605
7479370005
20394101454
33831547854
319641538398
457240989534
791022186178
952510430914
2433988896514
3408426379010
51100350791366
58539236105990
172205112522390
222753799779990
240557878762134
405184433315478
752756024181462
1205975842063062
42
42
require 'prime'
def power0(a, n)
return 1 if n == 0
k = power0(a, n >> 1)
k *= k
return k if n & 1 == 0
return k * a
end
# x > 0
def sigma(x, i)
sum = 1
pq = i.prime_division
pq.each{|a, n| sum *= (power0(a, (n + 1) * x) - 1) / (power0(a, x) - 1)}
sum
end
def A000521(n)
s3 = [0] + (1..n + 1).map{|i| sigma(3, i)}
s5 = [0] + (1..n + 1).map{|i| sigma(5, i)}
ary = [1]
(0..n).each{|i| ary << (1..i + 1).inject(0){|s, j| s + (504 * s5[j] - 240 * (i - j) * s3[j]) * ary[-j]} / (i + 1)}
ary
end
def A(n)
ary = [0, 1]
(2..n).each{|i|
s, t, u = 0, 1, 0
(1..n).each{|j|
t += 9 * j
u += j
break if i <= u
s += (-1) ** (j % 2 + 1) * (2 * j + 1) * (i - t) * ary[-u]
}
ary << s / (i - 1)
}
ary
end
n = 24
# -1から
j_ary = A000521(n + 1)
t_ary = A(n)
sj = 0
(1..n).each{|i|
sj += j_ary[i + 1] ** 2
p sj
}
st = 0
(1..n).each{|i|
st += t_ary[i] ** 2
p st
}
p sj % 70
p st % 70
出力結果
38763309456
462020482247056
747476458624247956
410642171997238585492
111434641874810006945492
18191136786434088480554708
2012438256327271820435198933
163207370324148310682771198933
10252979903717047241162445935333
519540220693607026058959606895333
21897463285036869389800152685153769
786321943715813441660415677068283369
24522804473179162618215486599300233769
674662006053352720500322946677998467625
16586697380546568748122861685021923923250
368380134300903032793240735709663753196850
7459109851575547037101015852422721856622450
138788710970335909298902346913307828210388850
2389227204143285091714377049772906741585951350
38280520704849554688691895267401266006415391350
573828412677118995859016958585990858803229915766
8084885115050056947605509164143950252163341122166
107506556899252904588122918856018016231802824914566
1354122807420479577276982518165534609358397061559942
1
577
64081
2230865
25559765
62138069
342499605
7479370005
20394101454
33831547854
319641538398
457240989534
791022186178
952510430914
2433988896514
3408426379010
51100350791366
58539236105990
172205112522390
222753799779990
240557878762134
405184433315478
752756024181462
1205975842063062
42
42
0 件のコメント:
コメントを投稿
注: コメントを投稿できるのは、このブログのメンバーだけです。