2017年1月28日土曜日

170128

整数列のLINKS の編集(87)

https://oeis.org/A280556
のLINKS を編集しました。

2017年1月24日火曜日

170124

Ruby


Numerator of Bernoulli(36 * 37) ł 37

Bernoulli(2 * 666) の分子は37で割り切れないが、
Bernoulli(2 * 777) の分子は37で割り切れる。

def bernoulli(n)
  ary = []
  a = []
  (0..n).each{|i|
    a << 1r / (i + 1)
    i.downto(1){|j| a[j - 1] = j * (a[j - 1] - a[j])}
    ary << a[0] # Bn = a[0]
  }
  ary
end

def A(k, n)
  a = bernoulli(2 * n)
  ary = []
  (0..n).each{|i|
    j = a[2 * i].numerator
    ary << i if j % k == 0
  }
  ary
end

n = 777
p A(37, n)

出力結果
[16, 34, 37, 52, 70, 74, 88, 106, 111, 124, 142, 148, 160, 178, 185, 196, 214, 222, 232, 250, 259, 268, 286, 296, 304, 322, 333, 340, 358, 370, 376, 394, 407, 412, 430, 444, 448, 466, 481, 484, 502, 518, 520, 538, 555, 556, 574, 592, 610, 628, 629, 646, 664, 682, 700, 703, 718, 736, 740, 754, 772, 777]

2017年1月16日月曜日

170116(3)

Ruby


2017の素因数分解がつくる多角形(5)

五角形、七角形バージョンをたくさん作ってみた。
ただし、凸多角形の判定は行っていない。

require 'prime'

# m次以下を取り出す
def mul(f_ary, b_ary, m)
  s1, s2 = f_ary.size, b_ary.size
  ary = Array.new(s1 + s2 - 1, 0)
  (0..s1 - 1).each{|i|
    (0..s2 - 1).each{|j|
      ary[i + j] += f_ary[i] * b_ary[j]
    }
  }
  ary[0..m]
end

def f(k, ary)
  a = Array.new(k, 0)
  (0..ary.size - 1).each{|i|
    a[i % k] += ary[i]
  }
  a
end

def g(ary)
  m = ary.min
  ary.map{|i| i - m}
end

# 最初以外0か?
def h0(ary)
  m = ary.size
  flag = true
  (1..m - 1).each{|i| flag = false if ary[i] != 0}
  flag
end

def w(ary)
  m = ary.size
  a = []
  (1..m - 1).each{|i|
    b = Array.new(m, 0)
    (0..m - 1).each{|j|
      b[i * j % m] += ary[j]
    }
    a << b
  }
  a
end

def x0(k, w, m, n)
  b = w[0]
  (1..k - 2).each{|i|
    b = f(k, mul(b, w[i], n))
  }
  b = g(b)
  return w[0] if h0(b) && b[0] == m
end

def find(k, m, max, n)
  (0..max).to_a.repeated_permutation(k){|c|
    a = x0(k, w(c), m, n)
    return a if a != nil
  }
end

# 最後だけ0か?
def h(ary)
  m = ary.size
  flag = true
  (0..m - 2).each{|i| flag = false if ary[i] == 0}
  flag = false if ary[m - 1] != 0
  flag
end

# 共役か?
def v(ary1, ary2)
  m = ary2[0] - ary1[0]
  ary2 = ary2.map{|i| i - m}
  ary1 == [ary2[0]] + ary2[1..-1].reverse
end

def x(k, w, n)
  (0..k - 1).each{|i|
    ary = []
    (1..k - 1).each{|j|
      ary << w[j - 1].rotate(i * j)
    }
    k0 = (k - 1) / 2
    ary.combination(k0){|c|
      b = c[0]
      (1..k0 - 1).each{|j|
        b = f(k, mul(b, c[j], n))
      }
      b2 = g(f(k, mul(b, b, n)))
      a = ary - c
      d = a[0]
      (1..k0 - 1).each{|j|
        d = f(k, mul(d, a[j], n))
      }
      gb = g(b)
      gd = g(d)
      p [k, i, b2, g(f(k, mul(gb, gd, n)))] if h(b2) && v(gb, gd)
    }
  }
end

max = 5
n = 100
ary = Prime.each(500).to_a
[5, 7].each{|i|
  ary.each{|j|
    if j % i == 1
      x(i, w(find(i, j, max, n)), n)
      p ''
    end
  }
}

出力結果
[5, 1, [8, 12, 9, 12, 0], [11, 0, 0, 0, 0]]
[5, 2, [12, 12, 8, 9, 0], [11, 0, 0, 0, 0]]
[5, 3, [9, 8, 12, 12, 0], [11, 0, 0, 0, 0]]
[5, 4, [12, 9, 12, 8, 0], [11, 0, 0, 0, 0]]
""
[5, 0, [3, 31, 15, 27, 0], [31, 0, 0, 0, 0]]
[5, 1, [27, 15, 31, 3, 0], [31, 0, 0, 0, 0]]
[5, 2, [31, 27, 3, 15, 0], [31, 0, 0, 0, 0]]
[5, 4, [15, 3, 27, 31, 0], [31, 0, 0, 0, 0]]
""
[5, 0, [8, 24, 21, 48, 0], [41, 0, 0, 0, 0]]
[5, 2, [48, 21, 24, 8, 0], [41, 0, 0, 0, 0]]
[5, 3, [21, 8, 48, 24, 0], [41, 0, 0, 0, 0]]
[5, 4, [24, 48, 8, 21, 0], [41, 0, 0, 0, 0]]
""
[5, 1, [21, 48, 40, 72, 0], [61, 0, 0, 0, 0]]
[5, 2, [48, 72, 21, 40, 0], [61, 0, 0, 0, 0]]
[5, 3, [40, 21, 72, 48, 0], [61, 0, 0, 0, 0]]
[5, 4, [72, 40, 48, 21, 0], [61, 0, 0, 0, 0]]
""
[5, 0, [51, 87, 39, 59, 0], [71, 0, 0, 0, 0]]
[5, 1, [39, 51, 59, 87, 0], [71, 0, 0, 0, 0]]
[5, 3, [87, 59, 51, 39, 0], [71, 0, 0, 0, 0]]
[5, 4, [59, 39, 87, 51, 0], [71, 0, 0, 0, 0]]
""
[5, 0, [64, 88, 88, 121, 0], [101, 0, 0, 0, 0]]
[5, 1, [88, 64, 121, 88, 0], [101, 0, 0, 0, 0]]
[5, 3, [88, 121, 64, 88, 0], [101, 0, 0, 0, 0]]
[5, 4, [121, 88, 88, 64, 0], [101, 0, 0, 0, 0]]
""
[5, 0, [72, 60, 113, 156, 0], [131, 0, 0, 0, 0]]
[5, 2, [156, 113, 60, 72, 0], [131, 0, 0, 0, 0]]
[5, 3, [113, 72, 156, 60, 0], [131, 0, 0, 0, 0]]
[5, 4, [60, 156, 72, 113, 0], [131, 0, 0, 0, 0]]
""
[5, 0, [36, 132, 88, 165, 0], [151, 0, 0, 0, 0]]
[5, 2, [165, 88, 132, 36, 0], [151, 0, 0, 0, 0]]
[5, 3, [88, 36, 165, 132, 0], [151, 0, 0, 0, 0]]
[5, 4, [132, 165, 36, 88, 0], [151, 0, 0, 0, 0]]
""
[5, 1, [216, 168, 105, 112, 0], [181, 0, 0, 0, 0]]
[5, 2, [168, 112, 216, 105, 0], [181, 0, 0, 0, 0]]
[5, 3, [105, 216, 112, 168, 0], [181, 0, 0, 0, 0]]
[5, 4, [112, 105, 168, 216, 0], [181, 0, 0, 0, 0]]
""
[5, 0, [188, 201, 180, 192, 0], [191, 0, 0, 0, 0]]
[5, 1, [180, 188, 192, 201, 0], [191, 0, 0, 0, 0]]
[5, 3, [201, 192, 188, 180, 0], [191, 0, 0, 0, 0]]
[5, 4, [192, 180, 201, 188, 0], [191, 0, 0, 0, 0]]
""
[5, 0, [20, 236, 80, 125, 0], [211, 0, 0, 0, 0]]
[5, 1, [125, 80, 236, 20, 0], [211, 0, 0, 0, 0]]
[5, 2, [236, 125, 20, 80, 0], [211, 0, 0, 0, 0]]
[5, 4, [80, 20, 125, 236, 0], [211, 0, 0, 0, 0]]
""
[5, 0, [173, 104, 296, 128, 0], [241, 0, 0, 0, 0]]
[5, 2, [128, 296, 104, 173, 0], [241, 0, 0, 0, 0]]
[5, 3, [296, 173, 128, 104, 0], [241, 0, 0, 0, 0]]
[5, 4, [104, 128, 173, 296, 0], [241, 0, 0, 0, 0]]
""
[5, 0, [133, 304, 76, 148, 0], [251, 0, 0, 0, 0]]
[5, 1, [76, 133, 148, 304, 0], [251, 0, 0, 0, 0]]
[5, 3, [304, 148, 133, 76, 0], [251, 0, 0, 0, 0]]
[5, 4, [148, 76, 304, 133, 0], [251, 0, 0, 0, 0]]
""
[5, 0, [36, 93, 100, 312, 0], [271, 0, 0, 0, 0]]
[5, 2, [312, 100, 93, 36, 0], [271, 0, 0, 0, 0]]
[5, 3, [100, 36, 312, 93, 0], [271, 0, 0, 0, 0]]
[5, 4, [93, 312, 36, 100, 0], [271, 0, 0, 0, 0]]
""
[5, 0, [155, 315, 195, 291, 0], [281, 0, 0, 0, 0]]
[5, 1, [195, 155, 291, 315, 0], [281, 0, 0, 0, 0]]
[5, 3, [315, 291, 155, 195, 0], [281, 0, 0, 0, 0]]
[5, 4, [291, 195, 315, 155, 0], [281, 0, 0, 0, 0]]
""
[5, 0, [7, 115, 91, 343, 0], [311, 0, 0, 0, 0]]
[5, 2, [343, 91, 115, 7, 0], [311, 0, 0, 0, 0]]
[5, 3, [91, 7, 343, 115, 0], [311, 0, 0, 0, 0]]
[5, 4, [115, 343, 7, 91, 0], [311, 0, 0, 0, 0]]
""
[5, 0, [212, 149, 332, 368, 0], [331, 0, 0, 0, 0]]
[5, 2, [368, 332, 149, 212, 0], [331, 0, 0, 0, 0]]
[5, 3, [332, 212, 368, 149, 0], [331, 0, 0, 0, 0]]
[5, 4, [149, 368, 212, 332, 0], [331, 0, 0, 0, 0]]
""
[5, 0, [96, 408, 225, 392, 0], [401, 0, 0, 0, 0]]
[5, 2, [392, 225, 408, 96, 0], [401, 0, 0, 0, 0]]
[5, 3, [225, 96, 392, 408, 0], [401, 0, 0, 0, 0]]
[5, 4, [408, 392, 96, 225, 0], [401, 0, 0, 0, 0]]
""
[5, 1, [405, 480, 336, 400, 0], [421, 0, 0, 0, 0]]
[5, 2, [480, 400, 405, 336, 0], [421, 0, 0, 0, 0]]
[5, 3, [336, 405, 400, 480, 0], [421, 0, 0, 0, 0]]
[5, 4, [400, 336, 480, 405, 0], [421, 0, 0, 0, 0]]
""
[5, 0, [173, 24, 276, 468, 0], [431, 0, 0, 0, 0]]
[5, 1, [24, 468, 173, 276, 0], [431, 0, 0, 0, 0]]
[5, 2, [276, 173, 468, 24, 0], [431, 0, 0, 0, 0]]
[5, 3, [468, 276, 24, 173, 0], [431, 0, 0, 0, 0]]
""
[5, 1, [560, 360, 216, 225, 0], [461, 0, 0, 0, 0]]
[5, 2, [360, 225, 560, 216, 0], [461, 0, 0, 0, 0]]
[5, 3, [216, 560, 225, 360, 0], [461, 0, 0, 0, 0]]
[5, 4, [225, 216, 360, 560, 0], [461, 0, 0, 0, 0]]
""
[5, 0, [496, 388, 565, 412, 0], [491, 0, 0, 0, 0]]
[5, 2, [412, 565, 388, 496, 0], [491, 0, 0, 0, 0]]
[5, 3, [565, 496, 412, 388, 0], [491, 0, 0, 0, 0]]
[5, 4, [388, 412, 496, 565, 0], [491, 0, 0, 0, 0]]
""
[7, 0, [24, 4, 12, 25, 28, 20, 0], [29, 0, 0, 0, 0, 0, 0]]
[7, 1, [25, 24, 28, 4, 20, 12, 0], [29, 0, 0, 0, 0, 0, 0]]
[7, 3, [12, 20, 4, 28, 24, 25, 0], [29, 0, 0, 0, 0, 0, 0]]
[7, 4, [20, 28, 25, 12, 4, 24, 0], [29, 0, 0, 0, 0, 0, 0]]
[7, 5, [4, 25, 20, 24, 12, 28, 0], [29, 0, 0, 0, 0, 0, 0]]
[7, 6, [28, 12, 24, 20, 25, 4, 0], [29, 0, 0, 0, 0, 0, 0]]
""
[7, 0, [16, 13, 16, 16, 28, 52, 0], [43, 0, 0, 0, 0, 0, 0]]
[7, 1, [16, 16, 28, 13, 52, 16, 0], [43, 0, 0, 0, 0, 0, 0]]
[7, 3, [16, 52, 13, 28, 16, 16, 0], [43, 0, 0, 0, 0, 0, 0]]
[7, 4, [52, 28, 16, 16, 13, 16, 0], [43, 0, 0, 0, 0, 0, 0]]
[7, 5, [13, 16, 52, 16, 16, 28, 0], [43, 0, 0, 0, 0, 0, 0]]
[7, 6, [28, 16, 16, 52, 16, 13, 0], [43, 0, 0, 0, 0, 0, 0]]
""
[7, 0, [40, 16, 8, 12, 45, 76, 0], [71, 0, 0, 0, 0, 0, 0]]
[7, 1, [16, 12, 76, 40, 8, 45, 0], [71, 0, 0, 0, 0, 0, 0]]
[7, 2, [8, 76, 16, 45, 40, 12, 0], [71, 0, 0, 0, 0, 0, 0]]
[7, 3, [12, 40, 45, 16, 76, 8, 0], [71, 0, 0, 0, 0, 0, 0]]
[7, 4, [45, 8, 40, 76, 12, 16, 0], [71, 0, 0, 0, 0, 0, 0]]
[7, 5, [76, 45, 12, 8, 16, 40, 0], [71, 0, 0, 0, 0, 0, 0]]
""
[7, 0, [108, 61, 92, 56, 96, 8, 0], [113, 0, 0, 0, 0, 0, 0]]
[7, 1, [92, 8, 61, 96, 108, 56, 0], [113, 0, 0, 0, 0, 0, 0]]
[7, 2, [96, 92, 108, 8, 56, 61, 0], [113, 0, 0, 0, 0, 0, 0]]
[7, 4, [61, 56, 8, 108, 92, 96, 0], [113, 0, 0, 0, 0, 0, 0]]
[7, 5, [56, 108, 96, 61, 8, 92, 0], [113, 0, 0, 0, 0, 0, 0]]
[7, 6, [8, 96, 56, 92, 61, 108, 0], [113, 0, 0, 0, 0, 0, 0]]
""
[7, 1, [93, 24, 16, 60, 108, 120, 0], [127, 0, 0, 0, 0, 0, 0]]
[7, 2, [24, 60, 120, 93, 16, 108, 0], [127, 0, 0, 0, 0, 0, 0]]
[7, 3, [16, 120, 24, 108, 93, 60, 0], [127, 0, 0, 0, 0, 0, 0]]
[7, 4, [60, 93, 108, 24, 120, 16, 0], [127, 0, 0, 0, 0, 0, 0]]
[7, 5, [108, 16, 93, 120, 60, 24, 0], [127, 0, 0, 0, 0, 0, 0]]
[7, 6, [120, 108, 60, 16, 24, 93, 0], [127, 0, 0, 0, 0, 0, 0]]
""
[7, 0, [12, 161, 12, 152, 140, 28, 0], [197, 0, 0, 0, 0, 0, 0]]
[7, 1, [28, 140, 152, 12, 161, 12, 0], [197, 0, 0, 0, 0, 0, 0]]
[7, 2, [152, 12, 140, 161, 28, 12, 0], [197, 0, 0, 0, 0, 0, 0]]
[7, 3, [161, 152, 28, 12, 12, 140, 0], [197, 0, 0, 0, 0, 0, 0]]
[7, 5, [140, 12, 12, 28, 152, 161, 0], [197, 0, 0, 0, 0, 0, 0]]
[7, 6, [12, 28, 161, 140, 12, 152, 0], [197, 0, 0, 0, 0, 0, 0]]
""
[7, 0, [216, 213, 168, 240, 188, 180, 0], [211, 0, 0, 0, 0, 0, 0]]
[7, 1, [188, 168, 216, 180, 240, 213, 0], [211, 0, 0, 0, 0, 0, 0]]
[7, 2, [213, 240, 180, 216, 168, 188, 0], [211, 0, 0, 0, 0, 0, 0]]
[7, 3, [180, 188, 240, 168, 213, 216, 0], [211, 0, 0, 0, 0, 0, 0]]
[7, 4, [168, 180, 213, 188, 216, 240, 0], [211, 0, 0, 0, 0, 0, 0]]
[7, 6, [240, 216, 188, 213, 180, 168, 0], [211, 0, 0, 0, 0, 0, 0]]
""
[7, 0, [272, 168, 153, 40, 128, 80, 0], [239, 0, 0, 0, 0, 0, 0]]
[7, 1, [153, 80, 168, 128, 272, 40, 0], [239, 0, 0, 0, 0, 0, 0]]
[7, 2, [128, 153, 272, 80, 40, 168, 0], [239, 0, 0, 0, 0, 0, 0]]
[7, 4, [168, 40, 80, 272, 153, 128, 0], [239, 0, 0, 0, 0, 0, 0]]
[7, 5, [40, 272, 128, 168, 80, 153, 0], [239, 0, 0, 0, 0, 0, 0]]
[7, 6, [80, 128, 40, 153, 168, 272, 0], [239, 0, 0, 0, 0, 0, 0]]
""
[7, 0, [116, 140, 337, 68, 76, 160, 0], [281, 0, 0, 0, 0, 0, 0]]
[7, 1, [337, 160, 140, 76, 116, 68, 0], [281, 0, 0, 0, 0, 0, 0]]
[7, 2, [76, 337, 116, 160, 68, 140, 0], [281, 0, 0, 0, 0, 0, 0]]
[7, 4, [140, 68, 160, 116, 337, 76, 0], [281, 0, 0, 0, 0, 0, 0]]
[7, 5, [68, 116, 76, 140, 160, 337, 0], [281, 0, 0, 0, 0, 0, 0]]
[7, 6, [160, 76, 68, 337, 140, 116, 0], [281, 0, 0, 0, 0, 0, 0]]
""
[7, 0, [360, 236, 120, 21, 96, 204, 0], [337, 0, 0, 0, 0, 0, 0]]
[7, 1, [236, 21, 204, 360, 120, 96, 0], [337, 0, 0, 0, 0, 0, 0]]
[7, 2, [120, 204, 236, 96, 360, 21, 0], [337, 0, 0, 0, 0, 0, 0]]
[7, 3, [21, 360, 96, 236, 204, 120, 0], [337, 0, 0, 0, 0, 0, 0]]
[7, 4, [96, 120, 360, 204, 21, 236, 0], [337, 0, 0, 0, 0, 0, 0]]
[7, 5, [204, 96, 21, 120, 236, 360, 0], [337, 0, 0, 0, 0, 0, 0]]
""
[7, 0, [240, 249, 168, 344, 360, 432, 0], [379, 0, 0, 0, 0, 0, 0]]
[7, 1, [344, 240, 360, 249, 432, 168, 0], [379, 0, 0, 0, 0, 0, 0]]
[7, 3, [168, 432, 249, 360, 240, 344, 0], [379, 0, 0, 0, 0, 0, 0]]
[7, 4, [432, 360, 344, 168, 249, 240, 0], [379, 0, 0, 0, 0, 0, 0]]
[7, 5, [249, 344, 432, 240, 168, 360, 0], [379, 0, 0, 0, 0, 0, 0]]
[7, 6, [360, 168, 240, 432, 344, 249, 0], [379, 0, 0, 0, 0, 0, 0]]
""
[7, 0, [351, 99, 243, 483, 259, 183, 0], [421, 0, 0, 0, 0, 0, 0]]
[7, 1, [259, 243, 351, 183, 483, 99, 0], [421, 0, 0, 0, 0, 0, 0]]
[7, 2, [99, 483, 183, 351, 243, 259, 0], [421, 0, 0, 0, 0, 0, 0]]
[7, 3, [183, 259, 483, 243, 99, 351, 0], [421, 0, 0, 0, 0, 0, 0]]
[7, 4, [243, 183, 99, 259, 351, 483, 0], [421, 0, 0, 0, 0, 0, 0]]
[7, 6, [483, 351, 259, 99, 183, 243, 0], [421, 0, 0, 0, 0, 0, 0]]
""
[7, 0, [376, 232, 212, 469, 452, 416, 0], [449, 0, 0, 0, 0, 0, 0]]
[7, 2, [416, 452, 469, 212, 232, 376, 0], [449, 0, 0, 0, 0, 0, 0]]
[7, 3, [452, 212, 376, 416, 469, 232, 0], [449, 0, 0, 0, 0, 0, 0]]
[7, 4, [469, 376, 452, 232, 416, 212, 0], [449, 0, 0, 0, 0, 0, 0]]
[7, 5, [212, 416, 232, 452, 376, 469, 0], [449, 0, 0, 0, 0, 0, 0]]
[7, 6, [232, 469, 416, 376, 212, 452, 0], [449, 0, 0, 0, 0, 0, 0]]
""
[7, 1, [180, 132, 60, 540, 160, 105, 0], [463, 0, 0, 0, 0, 0, 0]]
[7, 2, [132, 540, 105, 180, 60, 160, 0], [463, 0, 0, 0, 0, 0, 0]]
[7, 3, [60, 105, 132, 160, 180, 540, 0], [463, 0, 0, 0, 0, 0, 0]]
[7, 4, [540, 180, 160, 132, 105, 60, 0], [463, 0, 0, 0, 0, 0, 0]]
[7, 5, [160, 60, 180, 105, 540, 132, 0], [463, 0, 0, 0, 0, 0, 0]]
[7, 6, [105, 160, 540, 60, 132, 180, 0], [463, 0, 0, 0, 0, 0, 0]]
""
[7, 1, [65, 72, 560, 128, 136, 216, 0], [491, 0, 0, 0, 0, 0, 0]]
[7, 2, [72, 128, 216, 65, 560, 136, 0], [491, 0, 0, 0, 0, 0, 0]]
[7, 3, [560, 216, 72, 136, 65, 128, 0], [491, 0, 0, 0, 0, 0, 0]]
[7, 4, [128, 65, 136, 72, 216, 560, 0], [491, 0, 0, 0, 0, 0, 0]]
[7, 5, [136, 560, 65, 216, 128, 72, 0], [491, 0, 0, 0, 0, 0, 0]]
[7, 6, [216, 136, 128, 560, 72, 65, 0], [491, 0, 0, 0, 0, 0, 0]]
""

170116(2)

Ruby


2017の素因数分解がつくる多角形(4)

組み合わせてみた。

# m次以下を取り出す
def mul(f_ary, b_ary, m)
  s1, s2 = f_ary.size, b_ary.size
  ary = Array.new(s1 + s2 - 1, 0)
  (0..s1 - 1).each{|i|
    (0..s2 - 1).each{|j|
      ary[i + j] += f_ary[i] * b_ary[j]
    }
  }
  ary[0..m]
end

def f(k, ary)
  a = Array.new(k, 0)
  (0..ary.size - 1).each{|i|
    a[i % k] += ary[i]
  }
  a
end

def g(ary)
  m = ary.min
  ary.map{|i| i - m}
end

# 最初以外0か?
def h0(ary)
  m = ary.size
  flag = true
  (1..m - 1).each{|i| flag = false if ary[i] != 0}
  flag
end

def w(ary)
  m = ary.size
  a = []
  (1..m - 1).each{|i|
    b = Array.new(m, 0)
    (0..m - 1).each{|j|
      b[i * j % m] += ary[j]
    }
    a << b
  }
  a
end

def x0(k, w, m, n)
  b = w[0]
  (1..k - 2).each{|i|
    b = f(k, mul(b, w[i], n))
  }
  b = g(b)
  return w[0] if h0(b) && b[0] == m
end

def find(k, m, max, n)
  (0..max).to_a.repeated_permutation(k){|c|
    a = x0(k, w(c), m, n)
    return a if a != nil
  }
end

# 最後だけ0か?
def h(ary)
  m = ary.size
  flag = true
  (0..m - 2).each{|i| flag = false if ary[i] == 0}
  flag = false if ary[m - 1] != 0
  flag
end

# 共役か?
def v(ary1, ary2)
  m = ary2[0] - ary1[0]
  ary2 = ary2.map{|i| i - m}
  ary1 == [ary2[0]] + ary2[1..-1].reverse
end

def x(k, w, n)
  (0..k - 1).each{|i|
    ary = []
    (1..k - 1).each{|j|
      ary << w[j - 1].rotate(i * j)
    }
    k0 = (k - 1) / 2
    ary.combination(k0){|c|
      b = c[0]
      (1..k0 - 1).each{|j|
        b = f(k, mul(b, c[j], n))
      }
      b2 = g(f(k, mul(b, b, n)))
      a = ary - c
      d = a[0]
      (1..k0 - 1).each{|j|
        d = f(k, mul(d, a[j], n))
      }
      gb = g(b)
      gd = g(d)
      p [k, i, b2, g(f(k, mul(gb, gd, n)))] if h(b2) && v(gb, gd)
    }
  }
end

n = 100
x(3, w(find(3, 7, 3, n)), n)
p ''
x(5, w(find(5, 11, 2, n)), n)
p ''
x(5, w(find(5, 31, 3, n)), n)
p ''
x(7, w(find(7, 2017, 3, n)), n)

出力結果
[3, 0, [5, 8, 0], [7, 0, 0]]
[3, 2, [8, 5, 0], [7, 0, 0]]
""
[5, 1, [8, 12, 9, 12, 0], [11, 0, 0, 0, 0]]
[5, 2, [12, 12, 8, 9, 0], [11, 0, 0, 0, 0]]
[5, 3, [9, 8, 12, 12, 0], [11, 0, 0, 0, 0]]
[5, 4, [12, 9, 12, 8, 0], [11, 0, 0, 0, 0]]
""
[5, 0, [3, 31, 15, 27, 0], [31, 0, 0, 0, 0]]
[5, 1, [27, 15, 31, 3, 0], [31, 0, 0, 0, 0]]
[5, 2, [31, 27, 3, 15, 0], [31, 0, 0, 0, 0]]
[5, 4, [15, 3, 27, 31, 0], [31, 0, 0, 0, 0]]
""
[7, 0, [1716, 1740, 2196, 636, 1664, 1065, 0], [2017, 0, 0, 0, 0, 0, 0]]
[7, 1, [636, 1716, 1664, 1740, 1065, 2196, 0], [2017, 0, 0, 0, 0, 0, 0]]
[7, 3, [2196, 1065, 1740, 1664, 1716, 636, 0], [2017, 0, 0, 0, 0, 0, 0]]
[7, 4, [1065, 1664, 636, 2196, 1740, 1716, 0], [2017, 0, 0, 0, 0, 0, 0]]
[7, 5, [1740, 636, 1065, 1716, 2196, 1664, 0], [2017, 0, 0, 0, 0, 0, 0]]
[7, 6, [1664, 2196, 1716, 1065, 636, 1740, 0], [2017, 0, 0, 0, 0, 0, 0]]

170116

Ruby


2017の素因数分解がつくる多角形(3)

要となるw(ary) のary を求めるプログラムを作ってみた。

# m次以下を取り出す
def mul(f_ary, b_ary, m)
  s1, s2 = f_ary.size, b_ary.size
  ary = Array.new(s1 + s2 - 1, 0)
  (0..s1 - 1).each{|i|
    (0..s2 - 1).each{|j|
      ary[i + j] += f_ary[i] * b_ary[j]
    }
  }
  ary[0..m]
end

def f(k, ary)
  a = Array.new(k, 0)
  (0..ary.size - 1).each{|i|
    a[i % k] += ary[i]
  }
  a
end

def g(ary)
  m = ary.min
  ary.map{|i| i - m}
end

# 最初以外0か?
def h0(ary)
  m = ary.size
  flag = true
  (1..m - 1).each{|i| flag = false if ary[i] != 0}
  flag
end

def w(ary)
  m = ary.size
  a = []
  (1..m - 1).each{|i|
    b = Array.new(m, 0)
    (0..m - 1).each{|j|
      b[i * j % m] += ary[j]
    }
    a << b
  }
  a
end

def x0(k, w, m, n)
  b = w[0]
  (1..k - 2).each{|i|
    b = f(k, mul(b, w[i], n))
  }
  b = g(b)
  return w[0] if h0(b) && b[0] == m
end

def find(k, m, max, n)
  ary = []
  (0..max).to_a.repeated_permutation(k){|c|
    a = x0(k, w(c), m, n)
    ary << a if a != nil
  }
  ary
end

n = 100
p find(3, 7, 3, n)
p ''
p find(5, 11, 2, n)
p ''
p find(5, 31, 3, n)
p ''
p find(7, 2017, 3, n)

出力結果
[[0, 1, 3], [0, 2, 3], [0, 3, 1], [0, 3, 2], [1, 0, 3], [1, 3, 0], [2, 0, 3], [2, 3, 0], [3, 0, 1], [3, 0, 2], [3, 1, 0], [3, 2, 0]]
""
[[0, 0, 0, 1, 2], [0, 0, 0, 2, 1], [0, 0, 1, 0, 2], [0, 0, 1, 1, 2], [0, 0, 1, 2, 0], [0, 0, 2, 0, 1], [0, 0, 2, 1, 0], [0, 0, 2, 1, 1], [0, 1, 0, 0, 2], [0, 1, 0, 1, 2], [0, 1, 0, 2, 0], [0, 1, 0, 2, 1], [0, 1, 1, 2, 0], [0, 1, 1, 2, 2], [0, 1, 2, 0, 0], [0, 1, 2, 0, 1], [0, 1, 2, 1, 2], [0, 1, 2, 2, 2], [0, 2, 0, 0, 1], [0, 2, 0, 1, 0], [0, 2, 1, 0, 0], [0, 2, 1, 0, 1], [0, 2, 1, 1, 0], [0, 2, 1, 2, 1], [0, 2, 1, 2, 2], [0, 2, 2, 1, 1], [0, 2, 2, 1, 2], [0, 2, 2, 2, 1], [1, 0, 0, 0, 2], [1, 0, 0, 2, 0], [1, 0, 0, 2, 1], [1, 0, 1, 0, 2], [1, 0, 1, 2, 0], [1, 0, 2, 0, 0], [1, 0, 2, 1, 0], [1, 0, 2, 1, 2], [1, 0, 2, 2, 1], [1, 0, 2, 2, 2], [1, 1, 0, 0, 2], [1, 1, 0, 2, 2], [1, 1, 2, 0, 0], [1, 1, 2, 2, 0], [1, 2, 0, 0, 0], [1, 2, 0, 0, 1], [1, 2, 0, 1, 0], [1, 2, 0, 1, 2], [1, 2, 0, 2, 2], [1, 2, 1, 0, 2], [1, 2, 1, 2, 0], [1, 2, 2, 0, 1], [1, 2, 2, 0, 2], [1, 2, 2, 2, 0], [2, 0, 0, 0, 1], [2, 0, 0, 1, 0], [2, 0, 0, 1, 1], [2, 0, 1, 0, 0], [2, 0, 1, 0, 1], [2, 0, 1, 1, 2], [2, 0, 1, 2, 1], [2, 0, 1, 2, 2], [2, 0, 2, 1, 2], [2, 0, 2, 2, 1], [2, 1, 0, 0, 0], [2, 1, 0, 1, 0], [2, 1, 0, 2, 1], [2, 1, 0, 2, 2], [2, 1, 1, 0, 0], [2, 1, 1, 0, 2], [2, 1, 2, 0, 1], [2, 1, 2, 0, 2], [2, 1, 2, 1, 0], [2, 1, 2, 2, 0], [2, 2, 0, 1, 1], [2, 2, 0, 1, 2], [2, 2, 0, 2, 1], [2, 2, 1, 0, 2], [2, 2, 1, 1, 0], [2, 2, 1, 2, 0], [2, 2, 2, 0, 1], [2, 2, 2, 1, 0]]
""
[[0, 0, 1, 3, 3], [0, 0, 2, 3, 3], [0, 0, 3, 3, 1], [0, 0, 3, 3, 2], [0, 1, 1, 1, 3], [0, 1, 1, 3, 1], [0, 1, 1, 3, 2], [0, 1, 2, 1, 3], [0, 1, 3, 0, 3], [0, 1, 3, 1, 1], [0, 1, 3, 2, 2], [0, 1, 3, 3, 0], [0, 2, 1, 2, 3], [0, 2, 2, 2, 3], [0, 2, 2, 3, 1], [0, 2, 2, 3, 2], [0, 2, 3, 0, 3], [0, 2, 3, 1, 1], [0, 2, 3, 2, 2], [0, 2, 3, 3, 0], [0, 3, 0, 1, 3], [0, 3, 0, 2, 3], [0, 3, 0, 3, 1], [0, 3, 0, 3, 2], [0, 3, 1, 0, 3], [0, 3, 1, 1, 1], [0, 3, 1, 2, 1], [0, 3, 2, 0, 3], [0, 3, 2, 1, 2], [0, 3, 2, 2, 2], [0, 3, 3, 1, 0], [0, 3, 3, 2, 0], [1, 0, 0, 3, 3], [1, 0, 1, 1, 3], [1, 0, 1, 3, 1], [1, 0, 2, 2, 3], [1, 0, 2, 3, 1], [1, 0, 3, 0, 3], [1, 0, 3, 1, 1], [1, 0, 3, 1, 2], [1, 1, 0, 1, 3], [1, 1, 0, 2, 3], [1, 1, 0, 3, 1], [1, 1, 1, 0, 3], [1, 1, 1, 3, 0], [1, 1, 3, 0, 1], [1, 1, 3, 1, 0], [1, 1, 3, 2, 0], [1, 2, 0, 3, 2], [1, 2, 1, 0, 3], [1, 2, 1, 3, 0], [1, 2, 3, 0, 2], [1, 3, 0, 1, 1], [1, 3, 0, 1, 2], [1, 3, 0, 3, 0], [1, 3, 1, 0, 1], [1, 3, 1, 1, 0], [1, 3, 2, 0, 1], [1, 3, 2, 2, 0], [1, 3, 3, 0, 0], [2, 0, 0, 3, 3], [2, 0, 1, 1, 3], [2, 0, 1, 3, 2], [2, 0, 2, 2, 3], [2, 0, 2, 3, 2], [2, 0, 3, 0, 3], [2, 0, 3, 2, 1], [2, 0, 3, 2, 2], [2, 1, 0, 3, 1], [2, 1, 2, 0, 3], [2, 1, 2, 3, 0], [2, 1, 3, 0, 1], [2, 2, 0, 1, 3], [2, 2, 0, 2, 3], [2, 2, 0, 3, 2], [2, 2, 2, 0, 3], [2, 2, 2, 3, 0], [2, 2, 3, 0, 2], [2, 2, 3, 1, 0], [2, 2, 3, 2, 0], [2, 3, 0, 2, 1], [2, 3, 0, 2, 2], [2, 3, 0, 3, 0], [2, 3, 1, 0, 2], [2, 3, 1, 1, 0], [2, 3, 2, 0, 2], [2, 3, 2, 2, 0], [2, 3, 3, 0, 0], [3, 0, 0, 1, 3], [3, 0, 0, 2, 3], [3, 0, 1, 1, 1], [3, 0, 1, 2, 1], [3, 0, 1, 3, 0], [3, 0, 2, 1, 2], [3, 0, 2, 2, 2], [3, 0, 2, 3, 0], [3, 0, 3, 0, 1], [3, 0, 3, 0, 2], [3, 0, 3, 1, 0], [3, 0, 3, 2, 0], [3, 1, 0, 0, 3], [3, 1, 0, 1, 1], [3, 1, 0, 2, 2], [3, 1, 0, 3, 0], [3, 1, 1, 0, 1], [3, 1, 1, 0, 2], [3, 1, 1, 1, 0], [3, 1, 2, 1, 0], [3, 2, 0, 0, 3], [3, 2, 0, 1, 1], [3, 2, 0, 2, 2], [3, 2, 0, 3, 0], [3, 2, 1, 2, 0], [3, 2, 2, 0, 1], [3, 2, 2, 0, 2], [3, 2, 2, 2, 0], [3, 3, 0, 0, 1], [3, 3, 0, 0, 2], [3, 3, 1, 0, 0], [3, 3, 2, 0, 0]]
""
[[0, 0, 1, 2, 3, 0, 3], [0, 0, 1, 3, 2, 0, 3], [0, 0, 1, 3, 3, 0, 2], [0, 0, 2, 0, 3, 3, 1], [0, 0, 2, 3, 3, 1, 3], [0, 0, 3, 0, 2, 3, 1], [0, 0, 3, 0, 3, 2, 1], [0, 0, 3, 1, 3, 3, 2], [0, 1, 2, 3, 0, 3, 0], [0, 1, 2, 3, 3, 0, 3], [0, 1, 3, 0, 3, 3, 2], [0, 1, 3, 2, 0, 3, 0], [0, 1, 3, 3, 0, 2, 0], [0, 2, 0, 0, 1, 3, 3], [0, 2, 0, 3, 3, 1, 0], [0, 2, 3, 1, 0, 0, 3], [0, 2, 3, 3, 0, 3, 1], [0, 2, 3, 3, 1, 3, 0], [0, 3, 0, 0, 1, 2, 3], [0, 3, 0, 0, 1, 3, 2], [0, 3, 0, 1, 2, 3, 3], [0, 3, 0, 2, 3, 1, 0], [0, 3, 0, 3, 2, 1, 0], [0, 3, 0, 3, 3, 2, 1], [0, 3, 1, 0, 2, 3, 3], [0, 3, 1, 3, 3, 2, 0], [0, 3, 2, 1, 0, 0, 3], [0, 3, 3, 1, 0, 0, 2], [0, 3, 3, 2, 0, 1, 3], [0, 3, 3, 2, 1, 0, 3], [1, 0, 0, 2, 0, 3, 3], [1, 0, 0, 3, 0, 2, 3], [1, 0, 0, 3, 0, 3, 2], [1, 0, 2, 3, 3, 0, 3], [1, 0, 3, 0, 3, 3, 2], [1, 2, 3, 0, 3, 0, 0], [1, 2, 3, 3, 0, 3, 0], [1, 3, 0, 0, 2, 3, 3], [1, 3, 0, 3, 3, 2, 0], [1, 3, 2, 0, 3, 0, 0], [1, 3, 3, 0, 2, 0, 0], [1, 3, 3, 2, 0, 0, 3], [2, 0, 0, 1, 3, 3, 0], [2, 0, 0, 3, 1, 3, 3], [2, 0, 1, 3, 0, 3, 3], [2, 0, 3, 0, 0, 1, 3], [2, 0, 3, 3, 1, 0, 0], [2, 1, 0, 0, 3, 0, 3], [2, 1, 0, 3, 0, 3, 3], [2, 3, 0, 3, 0, 0, 1], [2, 3, 1, 0, 0, 3, 0], [2, 3, 3, 0, 3, 0, 1], [2, 3, 3, 0, 3, 1, 0], [2, 3, 3, 1, 3, 0, 0], [3, 0, 0, 1, 2, 3, 0], [3, 0, 0, 1, 3, 2, 0], [3, 0, 0, 2, 3, 3, 1], [3, 0, 1, 2, 3, 3, 0], [3, 0, 2, 0, 0, 1, 3], [3, 0, 2, 3, 1, 0, 0], [3, 0, 3, 0, 0, 1, 2], [3, 0, 3, 0, 1, 2, 3], [3, 0, 3, 1, 0, 2, 3], [3, 0, 3, 2, 1, 0, 0], [3, 0, 3, 3, 2, 0, 1], [3, 0, 3, 3, 2, 1, 0], [3, 1, 0, 0, 2, 0, 3], [3, 1, 0, 0, 3, 0, 2], [3, 1, 0, 2, 3, 3, 0], [3, 1, 3, 0, 0, 2, 3], [3, 1, 3, 3, 2, 0, 0], [3, 2, 0, 0, 3, 1, 3], [3, 2, 0, 1, 3, 0, 3], [3, 2, 0, 3, 0, 0, 1], [3, 2, 1, 0, 0, 3, 0], [3, 2, 1, 0, 3, 0, 3], [3, 3, 0, 2, 0, 0, 1], [3, 3, 0, 3, 0, 1, 2], [3, 3, 0, 3, 1, 0, 2], [3, 3, 1, 0, 0, 2, 0], [3, 3, 1, 3, 0, 0, 2], [3, 3, 2, 0, 0, 3, 1], [3, 3, 2, 0, 1, 3, 0], [3, 3, 2, 1, 0, 3, 0]]

2017年1月15日日曜日

170115(2)

Ruby


2017の素因数分解がつくる多角形(2)

1種類だけでないことに気がついた。
ただし、凸多角形の判定は行っていない。

# m次以下を取り出す
def mul(f_ary, b_ary, m)
  s1, s2 = f_ary.size, b_ary.size
  ary = Array.new(s1 + s2 - 1, 0)
  (0..s1 - 1).each{|i|
    (0..s2 - 1).each{|j|
      ary[i + j] += f_ary[i] * b_ary[j]
    }
  }
  ary[0..m]
end

def f(k, ary)
  a = Array.new(k, 0)
  (0..ary.size - 1).each{|i|
    a[i % k] += ary[i]
  }
  a
end

def g(ary)
  m = ary.min
  ary.map{|i| i - m}
end

# 最後だけ0か?
def h(ary)
  m = ary.size
  flag = true
  (0..m - 2).each{|i| flag = false if ary[i] == 0}
  flag = false if ary[m - 1] != 0
  flag
end

# 共役か?
def v(ary1, ary2)
  m = ary2[0] - ary1[0]
  ary2 = ary2.map{|i| i - m}
  ary1 == [ary2[0]] + ary2[1..-1].reverse
end

def w(ary)
  m = ary.size
  a = []
  (1..m - 1).each{|i|
    b = Array.new(m, 0)
    (0..m - 1).each{|j|
      b[i * j % m] += ary[j]
    }
    a << b
  }
  a
end

def x(k, w, n)
  (0..k - 1).each{|i|
    ary = []
    (1..k - 1).each{|j|
      ary << w[j - 1].rotate(i * j)
    }
    k0 = (k - 1) / 2
    ary.combination(k0){|c|
      b = c[0]
      (1..k0 - 1).each{|j|
        b = f(k, mul(b, c[j], n))
      }
      b2 = g(f(k, mul(b, b, n)))
      a = ary - c
      d = a[0]
      (1..k0 - 1).each{|j|
        d = f(k, mul(d, a[j], n))
      }
      gb = g(b)
      gd = g(d)
      p [k, i, b2, g(f(k, mul(gb, gd, n)))] if h(b2) && v(gb, gd)
    }
  }
end

n = 100
x(3, w([2, -1, 0]), n)
p ''
x(5, w([2, 1, 0, 0, 0]), n)
p ''
x(5, w([2, -1, 0, 0, 0]), n)
p ''
x(7, w([0, 1, 2, 3, 0, 3, 0]), n)

出力結果
[3, 0, [8, 5, 0], [7, 0, 0]]
[3, 1, [5, 8, 0], [7, 0, 0]]
""
[5, 0, [12, 9, 12, 8, 0], [11, 0, 0, 0, 0]]
[5, 1, [9, 8, 12, 12, 0], [11, 0, 0, 0, 0]]
[5, 2, [12, 12, 8, 9, 0], [11, 0, 0, 0, 0]]
[5, 3, [8, 12, 9, 12, 0], [11, 0, 0, 0, 0]]
""
[5, 0, [27, 15, 31, 3, 0], [31, 0, 0, 0, 0]]
[5, 2, [3, 31, 15, 27, 0], [31, 0, 0, 0, 0]]
[5, 3, [31, 27, 3, 15, 0], [31, 0, 0, 0, 0]]
[5, 4, [15, 3, 27, 31, 0], [31, 0, 0, 0, 0]]
""
[7, 0, [636, 1716, 1664, 1740, 1065, 2196, 0], [2017, 0, 0, 0, 0, 0, 0]]
[7, 2, [2196, 1065, 1740, 1664, 1716, 636, 0], [2017, 0, 0, 0, 0, 0, 0]]
[7, 3, [1065, 1664, 636, 2196, 1740, 1716, 0], [2017, 0, 0, 0, 0, 0, 0]]
[7, 4, [1740, 636, 1065, 1716, 2196, 1664, 0], [2017, 0, 0, 0, 0, 0, 0]]
[7, 5, [1664, 2196, 1716, 1065, 636, 1740, 0], [2017, 0, 0, 0, 0, 0, 0]]
[7, 6, [1716, 1740, 2196, 636, 1664, 1065, 0], [2017, 0, 0, 0, 0, 0, 0]]

170115

Ruby


2017の素因数分解がつくる多角形(1)

tsujimotter さんの記事(http://tsujimotter.hatenablog.com/entry/2017)を見て、
Ruby で確認しようと思った。

確認すること

ζ = e^{2iπ / 7} とする。
2017
= (3ζ + 3ζ^3 + 2ζ^4 + ζ^5) * (2ζ + 3ζ^3 + 3ζ^4 + ζ^5) * (1 + 3ζ + 2ζ^2 + 3ζ^4)
 * (ζ^2 + 2ζ^3 + 3ζ^4 + 3ζ^6) * (ζ^2 + 3ζ^3 + 3ζ^4 + 2ζ^6) * (1 + 3ζ^3 + 2ζ^5 + 3ζ^6)
((3ζ + 3ζ^3 + 2ζ^4 + ζ^5) * (2ζ + 3ζ^3 + 3ζ^4 + ζ^5) * (1 + 3ζ + 2ζ^2 + 3ζ^4))^2
= 2196 + 1065ζ + 1740ζ^2 + 1664ζ^3 + 1716ζ^4 + 636ζ^5

# m次以下を取り出す
def mul(f_ary, b_ary, m)
  s1, s2 = f_ary.size, b_ary.size
  ary = Array.new(s1 + s2 - 1, 0)
  (0..s1 - 1).each{|i|
    (0..s2 - 1).each{|j|
      ary[i + j] += f_ary[i] * b_ary[j]
    }
  }
  ary[0..m]
end

# ζ^7 = 1
def f(ary)
  a = Array.new(7, 0)
  (0..ary.size - 1).each{|i|
    a[i % 7] += ary[i]
  }
  a
end

# ζ^6 + ζ^5 + … + 1 = 0
def g(ary)
  m = ary.min
  ary.map{|i| i - m}
end

n = 100
a1 = [0, 3, 0, 3, 2, 1, 0]
a2 = [0, 2, 0, 3, 3, 1, 0]
a3 = [1, 3, 2, 0, 3, 0, 0]
ary = f(mul(a1, a2, n))
ary = f(mul(ary, a3, n))
b = ary
ary = f(mul(ary, [ary[0]] + (ary[1..-1]).reverse, n))

p ary
p g(ary)
p b
p c = f(mul(b, b, n))
p g(c)

出力結果
[77649, 75632, 75632, 75632, 75632, 75632, 75632]
[2017, 0, 0, 0, 0, 0, 0]
[86, 130, 116, 100, 85, 96, 116]
[76828, 75697, 76372, 76296, 76348, 75268, 74632]
[2196, 1065, 1740, 1664, 1716, 636, 0]

2017年1月14日土曜日

170114

新たな整数列(21)

https://oeis.org/A280841
https://oeis.org/A280842
が追加されました。

2017年1月9日月曜日

170109(2)

Ruby


二項係数の二乗の性質について(4)

二項係数の二乗に関する次の式を確認してみる。

binomial(2n, n) = Sum_{k=0..n} binomial(n, k)^2
binomial(3n, n)^2 = Sum_{k=0..n} binomial(n, k)^2 * binomial(3n + k, 2n)

二つ目の式は、Doron Zeilberger さんの写真で知った。

def ncr(n, r)
  return 1 if r == 0
  (n - r + 1..n).inject(:*) / (1..r).inject(:*)
end

n = 50
(0..n).each{|i|
  k = (0..i).inject(0){|s, j| s + ncr(i, j) ** 2}
  p [i, k, k == ncr(2 * i, i)]
}
(0..n).each{|i|
  k = (0..i).inject(0){|s, j| s + ncr(i, j) ** 2 * ncr(3 * i + j, 2 * i)}
  p [i, k, k == ncr(3 * i, i) ** 2]
}

出力結果
[0, 1, true]
[1, 2, true]
[2, 6, true]
[3, 20, true]
[4, 70, true]
[5, 252, true]
[6, 924, true]
[7, 3432, true]
[8, 12870, true]
[9, 48620, true]
[10, 184756, true]
[11, 705432, true]
[12, 2704156, true]
[13, 10400600, true]
[14, 40116600, true]
[15, 155117520, true]
[16, 601080390, true]
[17, 2333606220, true]
[18, 9075135300, true]
[19, 35345263800, true]
[20, 137846528820, true]
[21, 538257874440, true]
[22, 2104098963720, true]
[23, 8233430727600, true]
[24, 32247603683100, true]
[25, 126410606437752, true]
[26, 495918532948104, true]
[27, 1946939425648112, true]
[28, 7648690600760440, true]
[29, 30067266499541040, true]
[30, 118264581564861424, true]
[31, 465428353255261088, true]
[32, 1832624140942590534, true]
[33, 7219428434016265740, true]
[34, 28453041475240576740, true]
[35, 112186277816662845432, true]
[36, 442512540276836779204, true]
[37, 1746130564335626209832, true]
[38, 6892620648693261354600, true]
[39, 27217014869199032015600, true]
[40, 107507208733336176461620, true]
[41, 424784580848791721628840, true]
[42, 1678910486211891090247320, true]
[43, 6637553085023755473070800, true]
[44, 26248505381684851188961800, true]
[45, 103827421287553411369671120, true]
[46, 410795449442059149332177040, true]
[47, 1625701140345170250548615520, true]
[48, 6435067013866298908421603100, true]
[49, 25477612258980856902730428600, true]
[50, 100891344545564193334812497256, true]
[0, 1, true]
[1, 9, true]
[2, 225, true]
[3, 7056, true]
[4, 245025, true]
[5, 9018009, true]
[6, 344622096, true]
[7, 13521038400, true]
[8, 540917591841, true]
[9, 21966328580625, true]
[10, 902702926350225, true]
[11, 37456461988358400, true]
[12, 1566697064677290000, true]
[13, 65973795093338597136, true]
[14, 2794203818390077646400, true]
[15, 118933541228935777741056, true]
[16, 5084343623375056062840609, true]
[17, 218184481964802925571225625, true]
[18, 9394717048781243503863746025, true]
[19, 405748577172828446758090890000, true]
[20, 17571560360851714604758772195025, true]
[21, 762833211945304545066461934411225, true]
[22, 33190706695870327778227083008160000, true]
[23, 1447057367826698239985795843065881600, true]
[24, 63206660495682595624549330402589610000, true]
[25, 2765555290416839473031167204408459002384, true]
[26, 121195487631174633730927833544205257600656, true]
[27, 5318924889969443115310808620611069447398400, true]
[28, 233748495106736101786894895229641645789550144, true]
[29, 10285381108241623881916309820274516510629889600, true]
[30, 453108001368076310715667906944152961974817444096, true]
[31, 19982951354103292701454572015101140735385991373824, true]
[32, 882193820771900502535643811498546758648049058152225, true]
[33, 38984103955797136681279773419449309622062504973658249, true]
[34, 1724270438887994625834515280849063987966324698709200625, true]
[35, 76329911458638224452349090775329585231892494150920688400, true]
[36, 3381698334791469437004948003407442741034218709339939869225, true]
[37, 149936227529339926917553100548615791741885760141533899450625, true]
[38, 6652613763672283466013184106680268742762004160256359658170256, true]
[39, 295376420253712173831277560006115570812668377461927841585358400, true]
[40, 13123271479819978574664406818529563852092776645195540137756485841, true]
[41, 583414585018079792619433970761875763379742907122734367278277407649, true]
[42, 25951856488640880866128457426128287211789727159727599555822160140625, true]
[43, 1155057402258485564982733922763563747848191972170069391447847549440000, true]
[44, 51436513521060993435798859696436264469919974735768503830383977124000000, true]
[45, 2291721712560872550292226191948436363553183458985498289746618685729440000, true]
[46, 102156240196159152625674321430240318894926071994134772320778403545682560000, true]
[47, 4555871619915950611944232710538054608079729891901648156061887454566976000000, true]
[48, 203269900254193422158434741036864998800648156620681866622845989348639415210000, true]
[49, 9073224976364316856806085028235013912491582743797193661522250038080669492250000, true]
[50, 405162990018970340199751908160171239022527655331073364452340925866141007913459600, true]

170109

整数列のLINKS の編集(86)

https://oeis.org/A260164
のLINKS を編集しました。

2017年1月8日日曜日

170108

整数列のLINKS の編集(85)

https://oeis.org/A096562
https://oeis.org/A133099
https://oeis.org/A131986
https://oeis.org/A030181
https://oeis.org/A106248
https://oeis.org/A124972
https://oeis.org/A030182
https://oeis.org/A007191
のLINKS を編集しました。