2018年8月19日日曜日

180819(2)

Ruby


A145495(2)

n が50以下のときを出力してみた。

def f(n)
  return 1 if n < 2
  (1..n).inject(:*)
end

def A(n)
  s = 8 * n + 7
  s *= f(6 * n + 1)
  s /= (f(3 * n) * f(n) * (f(n + 1)) ** 2)
  s
end

def A001421(n)
  (0..n).map{|i| f(6 * i) / (f(3 * i) * f(i) ** 3)}
end

def B(n)
  (0..n).map{|i| A(i) / 7}
end

# 0からn+1まで
def C(n)
  a = A001421(2 * n - 1)
  b = B(2 * n - 1)
  ary = [1, 84]
  n.times{|i|
    c0 = (b[1] - a[1]).to_r
    c = (1..2 * n - 1 - i).map{|j| (b[j] - a[j]) / c0}
    a, b = b, c
    ary << ary[-1] * c0
  }
  ary
end

n = 50
p C(n - 1)

出力結果
[1, 84, (27720/1), (13693680/1), (5354228880/1), (2489716429200/1), (1010824870255200/1), (459492105307435200/1), (189737418627305920800/1), (85223723866764909426000/1), (35532611270849849570013600/1), (15842376246977818384652245440/1), (6646596943618421076833646609600/1), (2948532659526725719238433845966400/1), (1242466300683646422306780046784918400/1), (549170104902171718659596780678933932800/1), (232161661847393094063344539032019320091200/1), (102332080743410488358244498064804633545493200/1), (43368737121334790105394050611229163714750784800/1), (19074635783015143648109278049535353233838634648000/1), (8099893496027514841140804061013744050592466950894400/1), (3556316095812994873251735314445662995012983989554121280/1), (1512588988803578988298627682442798221904873060492174960000/1), (663159667257196002134626007082688001462973634845506051040000/1), (282433935679037540822162132712107405144806880005615414041840000/1), (123677820433850539126024797914631832712910932754458989808921736000/1), (52732417161595905251363865375478563258547901390108868362530107561600/1), (23067953633887193355344490236305502775205116999560274363512956967673600/1), (9844889989751189964208687444183270684395872710590112647805918634759366400/1), (4302895883451597682632590115690446756024747814025161303825517886054309280000/1), (1837900369970284488801150594656359513018184352509202346145721550033707523776000/1), (802676307385602826999387666804307102414535300379083507225732094245043852351564800/1), (343095572437140434177701974272542638675212961760825593481708591332443038582772688000/1), (149741723302196052902988633248699376404533002526682142827863430310285679350551711682000/1), (64046216647894356702068646334211088361429725176947011484803063545867749763721000020052000/1), (27935990935509281335946009719525720609145977437265643513699057280771524531392455689418648000/1), (11955273835115329112673656635684650053066423772795539917029210846775890045886857108609780456000/1), (5211960866261854874697215479796539646107543358462603352477122000777766623518116237321944919336000/1), (2231594089141608593163031655547251815871497533405349266432885741789629173843812266950754003712624000/1), (972414865644985153368976101564982643490887771337723649984499969185497117331212608469269851901172960000/1), (416545127870556063351216708983455295908285133249875514589898844492559830560178742521755617252466297104000/1), (181431818244516517925179588065791293167310896050965900660923720849575188051871414678725950937957765373486400/1), (77750171867223298047448911275998854169503718136962704258839750617732586684667823314761340438534583844198928000/1), (33852063202282664791728802718819780180498804906051529049627856071283476463031418327882832923028941365839356512000/1), (14512229200246221538717176561740472064567196970855785835053254247658275629679217312050286850531390121723771327712000/1), (6316337818276863029108933544129648492829656063406110665117269416942903420275230250090250607096435039949046290300832000/1), (2708701971634961985961352805373859404388833665451982820011884087642616118926725552176384282086717577276699706231907520000/1), (1178563494496408723634577656425877220551961479380831000426743416361104459826743438079513081907825407587221646648799976320000/1), (505572394365169544334881831158392128754542752274605732401146682442946762615145627929779210194789338540886511368541338778080000/1), (219911094293890456644236482221473066004941542577405672019692655161599113503848165863027176352840638047465711871045876722067400000/1), (94362863205574830539910002439069016621199577406916467144306356444451658139093679673937413087722333603710997321894119781176287568000/1)]

0 件のコメント:

コメントを投稿

注: コメントを投稿できるのは、このブログのメンバーだけです。