2016年4月10日日曜日

160410(2)

Ruby


Zagier's problems(5)

U にあたるものを実験しながら作ってみた。

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

def u(m, n)
  i = (0..n).inject(0){|s, k| s + f(m * n + k).to_r / (f(m * n - m * k) * f((m + 1) * k + 1))}
  j = i.denominator
  return i.to_i if j == 1
  i
end

def U(m, n)
  i = m * ((m + 1) * n + 1) * u(m, n)
  j = i.denominator
  return i.to_i if j == 1
  i
end

(1..10).each{|i| p (0..24).map{|j| u(i, j)}}
(1..10).each{|i| p (0..24).map{|j| U(i, j)}}

出力結果
[1, (4/3), (11/5), (29/7), (76/9), (199/11), (521/13), (1364/15), (3571/17), (9349/19), (24476/21), (64079/23), (167761/25), (439204/27), (1149851/29), (3010349/31), (7881196/33), (20633239/35), (54018521/37), (141422324/39), (370248451/41), (969323029/43), (2537720636/45), (6643838879/47), (17393796001/49)]
[1, (5/4), (51/14), (277/20), (1497/26), (4045/16), (43721/38), (118141/22), (638471/25), (6900995/56), (37295141/62), (201554637/68), (544632231/37), (1177345345/16), (15906858593/43), (85965651921/46), (929170680307/98), (5021529726405/104), (27137921296481/110), (73330918307761/58), (792606555396977/122), (2141747185756205/64), (11574673402485763/67), (125106329323279427/140), (676113834597852597/146)]
[1, (6/5), (73/9), (2395/39), (26149/51), (286723/63), (1046406/25), (34383331/87), (376562651/99), (4124144989/111), (15055945217/41), (18321502422/5), (1805922599993/49), (59335680780827/159), (649847528402837/171), (7117164655305731/183), (5196504361583310/13), (853685877677323571/207), (9349613086538467867/219), (14628208463635117451/33), (373820804592843820033/81), (4094105312070579316998/85), (44838858887431435924777/89), (1473232694136663467311579/279), (16134922735374295426616581/291)]
[1, (7/6), (243/11), (4905/16), (441221/84), (9706233/104), (214166697/124), (4726434631/144), (104267890033/164), (575171734653/46), (16920175995685/68), (559988733543713/112), (24710827624432425/244), (136303509835451075/66), (3007365527824818089/71), (265415060476370716153/304), (5856051170156218402567/324), (32301611378151143865201/86), (1425389302791240028347285/182), (5241572023931088771464221/32), (1387784767942506927630863145/404), (7654933774760962651071049129/106), (56298846379180337755702684413/37), (3726490884475354742481271093249/116), (82220360363618816911119260568461/121)]
[1, (8/7), (872/13), (30800/19), (1481651/25), (320160441/155), (14303597201/185), (632753150096/215), (28063941736416/245), (1244046819273791/275), (55148150118255993/305), (2444859860324379899/335), (21676245687786483441/73), (4804712672638069513601/395), (212997271287348543216227/425), (9442431469459570812240492/455), (418593237257656800568818557/485), (18556719346361354985123320363/515), (164528039005459940946753641082/109), (36468572364202560186290146533498/575), (323338597034469891385772441777774/121), (71669828219779330954419394272463557/635), (453886354076044140415025026313070028/95), (140849065966787010746842233489220761528/695), (6243998291342823607143198136571738632484/725)]
[1, (9/8), (6467/30), (97719/11), (124825895/174), (3451116521/72), (473843501720/129), (13892727393211/50), (3722832354082018/171), (330619364192637931/192), (19614632135295958439/142), (5233079174973134534939/468), (77578054424217659547456/85), (10350287680004192659267865/138), (1227459569883088583600797523/198), (81882723163731202870397380888/159), (29132003643569951998302290674129/678), (863715590276647665754619878161943/240), (230468527479333002597974532269296647/762), (20498984710697000958807078261654745741/804), (1823276328091360164035074022035632129149/846), (162170902238114180371163365934396012251817/888), (4808083141026376388630645128443464176386227/310), (106913449328270614245368842491626794433919374/81), (114112682782742401221498163990969826086554412961/1014)]
[1, (10/9), (12173/17), (1248801/25), (301500013/33), (47068369985/41), (8954530878371/49), (3616616044683269/133), (1961307671216691883/455), (347559287308451008967/511), (62140698954891656421190/567), (11067012620150133414337963/623), (1974249851740493659523015623/679), (351951838629631165144467430043/735), (62758674512597558743883263610439/791), (11189954786512984420393651687875941/847), (1995221638416328054526045855047718383/903), (355758150892408390230576747504182000459/959), (9061863319798195260695461954546882409601/145), (11310428571396007320666762754450306819217990/1071), (2016696277341169111795798300521062697437592955/1127), (51369491523983014450494440607772389176868751201/169), (64115828922334414331872309869748783481829146350651/1239), (2286429018304177791698795890230227079657492052657499/259), (2038402280444992115457711912936851219673442797789253973/1351)]
[1, (11/10), (46209/19), (8022659/28), (4465724103/37), (1293807657413/46), (518661438624693/55), (174793411667965457/64), (515038338884349001737/584), (181163947386176653214257/656), (9318830205506037846622983/104), (23212245303284868932655427373/800), (8308538381612887460327404311377/872), (2965401558243638825595575915138699/944), (1059841112828460144356737772557905821/1016), (378546262274221323803046299807145727787/1088), (135245341646806611776768752141187647720673/1160), (6039246784049866362336004131840524645509213/154), (17260103082702448587399430715897692567830284987/1304), (3083031009429017764677322806099449025463759518733/688), (2202789474139810162249748866502901072982904998321405/1448), (196733946434713193587628380799376721768378411991659421/380), (281127995768849933952434422866250185772438121212994731307/1592), (50215777312314628834696305254457702238981370606946330243373/832), (5125512225049376532128690593738813756858658012015112550734407/248)]
[1, (12/11), (176380/21), (51767397/31), (67135645120/41), (11918731692919/17), (30561824672982970/61), (19857346674609625440/71), (15014665811552483461267/81), (93786705206867081003177917/819), (68254082605708675916908061296/909), (48382209702384034966235090259067/999), (34794212090651687712978763123190218/1089), (24826501160479241396695493078891857030/1179), (17789428163904432084351323109865284484846/1269), (12718316540886128783733071854567602844617154/1359), (9103548603182325055758247469335316966493759994/1449), (6512194352582229649951655678555440574784042852379/1539), (1553301114265427814172941683861566408905467435314942/543), (3333971239159690878362227054802423742149983172341920259/1719), (2385484971604224864516234862714188805787273553827637636176/1809), (568928268435511124410652013385573854626812480971550780809889/633), (1221196309021127356558929592785195303364375549163225429501141509/1989), (873758013389420925175253137897920305751311885957706240700566283646/2079), (208389200015806255519448229650676439085027964865470716797780641996850/723)]
[1, (13/12), (676063/23), (670541695/68), (2039260161407/90), (992233919906433/56), (1825414401676678659/67), (11338991545128842076851/390), (3546391386864465585047379/89), (4826768444379726302646441741/100), (11884266409237776928712446583571/185), (25082456173446867997531106031789854/305), (145268085315175686173723817369275021269/1330), (20683009715062239295106529519220570898657/144), (29737404634631517999428117136643599042420624/155), (212571532141417706479502950979348764619819117181/830), (304892632314065272058289481527025222428461239401952/885), (873005406669864319827933219287817237076045224891891893/1880), (625572823359585750188563058595614431711167452739370292373/995), (51201240603327890861210134539287060162998608401782506525809/60), (2567590646756112061879370386802811251864850983639156389918101579/2210), (3678155424897510961866819717255539980992433254589714722237697729227/2320), (2634767054772379555236636827236085122327873600670627536268141229361301/1215), (7549106200718645399348303323571499862700443001140193578587045676822020227/2540), (5407513606480782081476231360615523908328248286891919710376857493360509982808/1325)]
[1, 4, 11, 29, 76, 199, 521, 1364, 3571, 9349, 24476, 64079, 167761, 439204, 1149851, 3010349, 7881196, 20633239, 54018521, 141422324, 370248451, 969323029, 2537720636, 6643838879, 17393796001]
[2, 10, 51, 277, 1497, 8090, 43721, 236282, 1276942, 6900995, 37295141, 201554637, 1089264462, 5886726725, 31813717186, 171931303842, 929170680307, 5021529726405, 27137921296481, 146661836615522, 792606555396977, 4283494371512410, 23149346804971526, 125106329323279427, 676113834597852597]
[3, 18, 219, 2395, 26149, 286723, 3139218, 34383331, 376562651, 4124144989, 45167835651, 494680565394, 5417767799979, 59335680780827, 649847528402837, 7117164655305731, 77947565423749650, 853685877677323571, 9349613086538467867, 102397459245445822157, 1121462413778531460099, 12282315936211737950994, 134516576662294307774331, 1473232694136663467311579, 16134922735374295426616581]
[4, 28, 972, 19620, 441221, 9706233, 214166697, 4726434631, 104267890033, 2300686938612, 50760527987055, 1119977467087426, 24710827624432425, 545214039341804300, 12029462111299272356, 265415060476370716153, 5856051170156218402567, 129206445512604575460804, 2850778605582480056694570, 62898864287173065257570652, 1387784767942506927630863145, 30619735099043850604284196516, 675586156550164053068432212956, 14905963537901418969925084372996, 328881441454475267644477042273844]
[5, 40, 4360, 154000, 7408255, 320160441, 14303597201, 632753150096, 28063941736416, 1244046819273791, 55148150118255993, 2444859860324379899, 108381228438932417205, 4804712672638069513601, 212997271287348543216227, 9442431469459570812240492, 418593237257656800568818557, 18556719346361354985123320363, 822640195027299704733768205410, 36468572364202560186290146533498, 1616692985172349456928862208888870, 71669828219779330954419394272463557, 3177204478532308982905175184191490196, 140849065966787010746842233489220761528, 6243998291342823607143198136571738632484]
[6, 54, 19401, 1172628, 124825895, 10353349563, 947687003440, 83356364359266, 7445664708164036, 661238728385275862, 58843896405887875317, 5233079174973134534939, 465468326545305957284736, 41401150720016770637071460, 3682378709649265750802392569, 327530892654924811481589523552, 29132003643569951998302290674129, 2591146770829942997263859634485829, 230468527479333002597974532269296647, 20498984710697000958807078261654745741, 1823276328091360164035074022035632129149, 162170902238114180371163365934396012251817, 14424249423079129165891935385330392529158681, 1282961391939247370944426109899521533207032488, 114112682782742401221498163990969826086554412961]
[7, 70, 85211, 8741607, 2110500091, 329478589895, 62681716148597, 10849848134049807, 1961307671216691883, 347559287308451008967, 62140698954891656421190, 11067012620150133414337963, 1974249851740493659523015623, 351951838629631165144467430043, 62758674512597558743883263610439, 11189954786512984420393651687875941, 1995221638416328054526045855047718383, 355758150892408390230576747504182000459, 63433043238587366824868233681828176867207, 11310428571396007320666762754450306819217990, 2016696277341169111795798300521062697437592955, 359586440667881101153461084254406724238081258407, 64115828922334414331872309869748783481829146350651, 11432145091520888958493979451151135398287460263287495, 2038402280444992115457711912936851219673442797789253973]
[8, 88, 369672, 64181272, 35725792824, 10350461259304, 4149291508997544, 1398347293343723656, 515038338884349001737, 181163947386176653214257, 65231811438542264926360881, 23212245303284868932655427373, 8308538381612887460327404311377, 2965401558243638825595575915138699, 1059841112828460144356737772557905821, 378546262274221323803046299807145727787, 135245341646806611776768752141187647720673, 48313974272398930898688033054724197164073704, 17260103082702448587399430715897692567830284987, 6166062018858035529354645612198898050927519037466, 2202789474139810162249748866502901072982904998321405, 786935785738852774350513523197506887073513647966637684, 281127995768849933952434422866250185772438121212994731307, 100431554624629257669392610508915404477962741213892660486746, 35878585575345635724900834156171696298010606084105787855140849]
[9, 108, 1587420, 465906573, 604220806080, 321805755708813, 275056422056846730, 178716120071486628960, 135131992303972351151403, 93786705206867081003177917, 68254082605708675916908061296, 48382209702384034966235090259067, 34794212090651687712978763123190218, 24826501160479241396695493078891857030, 17789428163904432084351323109865284484846, 12718316540886128783733071854567602844617154, 9103548603182325055758247469335316966493759994, 6512194352582229649951655678555440574784042852379, 4659903342796283442518825051584699226716402305944826, 3333971239159690878362227054802423742149983172341920259, 2385484971604224864516234862714188805787273553827637636176, 1706784805306533373231956040156721563880437442914652342429667, 1221196309021127356558929592785195303364375549163225429501141509, 873758013389420925175253137897920305751311885957706240700566283646, 625167600047418766558344688952029317255083894596412150393341925990550]
[10, 130, 6760630, 3352708475, 10196300807035, 9922339199064330, 18254144016766786590, 22677983090257684153702, 35463913868644655850473790, 48267684443797263026464417410, 71305598455426661572274679501426, 100329824693787471990124424127159416, 145268085315175686173723817369275021269, 206830097150622392951065295192205708986570, 297374046346315179994281171366435990424206240, 425143064282835412959005901958697529239638234362, 609785264628130544116578963054050444856922478803904, 873005406669864319827933219287817237076045224891891893, 1251145646719171500377126117191228863422334905478740584746, 1792043421116476180142354708875047105704951294062387728403315, 2567590646756112061879370386802811251864850983639156389918101579, 3678155424897510961866819717255539980992433254589714722237697729227, 5269534109544759110473273654472170244655747201341255072536282458722602, 7549106200718645399348303323571499862700443001140193578587045676822020227, 10815027212961564162952462721231047816656496573783839420753714986721019965616]

0 件のコメント:

コメントを投稿

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