ふつうに数えてみる。
nが3の倍数のときを考える。
n = 3mとする。
長辺の長さをlとする。
たとえば、n=9のとき、
l=5〜7なら、残りの辺は(1, 8-l), ..., (8-l, 1)(重複あり)
l=4なら、残りの辺は、(1, 4), (2, 3)
l=3なら、(3, 3)
l < n/3なら解なし。
n/2 <= l < n-2なら、
残りの辺は
(1, n-l-1), ..., (n-l-1)(重複あり)
重複なしなら、[(n-l)/2]組。
たし合わせると、
k = n - lと変換して、
a = [n/2]とおいて、
aが奇数なら、
S1 = 1 + 1 + ... + (a-1)/2 + (a-1)/2
= (a-1)/2 * (a+1)/2
aが偶数なら、
S1 = 1 + 1 + ... + (a-2)/2 + (a-2)/2 + a/2
= (a-2)/2 * a/2 + a/2 = a/2 * a/2
あわせて、
n/3 <= l < n/2なら、
残りの辺がlを超えてはいけないから、組み合わせは、
(l, n - 2l), ... , (n - 2l, l)
の3l-n+1組だが、重複があるので、
[(3l-n)/2]+1組。
だから、足し合わせると、
k = l - mと変換して、
b = [(n-1)/2]-mとおいて、
b が偶数のとき、
b が奇数のとき、
三角形の合計は、S1 + S2だが、
このなかで、3辺とも長さの違う三角形は裏表2つある。
2辺が同じ三角形は、
合計は、
S = 2(S1 + S2 - S3) + S3 = 2S1 + 2S2 - S3
ここからは、さらに場合わけが必要となる。
本当は日曜の午前中に計算が終わっていたのだが、
HTMLにすると大変。
ここでいったんアップする。