Advertisement
Guest User

Leftover numbers

a guest
Jul 7th, 2017
711
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 13.09 KB | None | 0 0
  1. from sympy import factorint
  2. from sympy import divisors
  3. from sympy import fibonacci
  4. from itertools import count
  5. import operator
  6. import json
  7. import sys
  8.  
  9. def gcd(a, b):
  10.     while b:      
  11.         a, b = b, a % b
  12.     return a
  13.  
  14. def lcm(a, b):
  15.     return a * b // gcd(a, b)
  16.  
  17. def combine_dicts(a, b, op=operator.add):
  18.     return dict(a.items() + b.items() +
  19.         [(k, op(a[k], b[k])) for k in set(b) & set(a)])
  20.  
  21. for i in count(1):
  22.     fib_divisors = reduce(lcm, map(fibonacci, divisors(i)[:-1]), 1)
  23.  
  24.     o = fibonacci(i) / fib_divisors
  25.     if o != 1:
  26.         print "O_%d = %d\n  : %s" % (i, o, json.dumps(factorint(o), sort_keys=True))
  27.         sys.stdout.flush()
  28.  
  29. ----------
  30.  
  31. O_3 = 2
  32.   : {"2": 1}
  33. O_4 = 3
  34.   : {"3": 1}
  35. O_5 = 5
  36.   : {"5": 1}
  37. O_6 = 4
  38.   : {"2": 2}
  39. O_7 = 13
  40.   : {"13": 1}
  41. O_8 = 7
  42.   : {"7": 1}
  43. O_9 = 17
  44.   : {"17": 1}
  45. O_10 = 11
  46.   : {"11": 1}
  47. O_11 = 89
  48.   : {"89": 1}
  49. O_12 = 6
  50.   : {"2": 1, "3": 1}
  51. O_13 = 233
  52.   : {"233": 1}
  53. O_14 = 29
  54.   : {"29": 1}
  55. O_15 = 61
  56.   : {"61": 1}
  57. O_16 = 47
  58.   : {"47": 1}
  59. O_17 = 1597
  60.   : {"1597": 1}
  61. O_18 = 19
  62.   : {"19": 1}
  63. O_19 = 4181
  64.   : {"37": 1, "113": 1}
  65. O_20 = 41
  66.   : {"41": 1}
  67. O_21 = 421
  68.   : {"421": 1}
  69. O_22 = 199
  70.   : {"199": 1}
  71. O_23 = 28657
  72.   : {"28657": 1}
  73. O_24 = 46
  74.   : {"2": 1, "23": 1}
  75. O_25 = 15005
  76.   : {"5": 1, "3001": 1}
  77. O_26 = 521
  78.   : {"521": 1}
  79. O_27 = 5777
  80.   : {"53": 1, "109": 1}
  81. O_28 = 281
  82.   : {"281": 1}
  83. O_29 = 514229
  84.   : {"514229": 1}
  85. O_30 = 31
  86.   : {"31": 1}
  87. O_31 = 1346269
  88.   : {"557": 1, "2417": 1}
  89. O_32 = 2207
  90.   : {"2207": 1}
  91. O_33 = 19801
  92.   : {"19801": 1}
  93. O_34 = 3571
  94.   : {"3571": 1}
  95. O_35 = 141961
  96.   : {"141961": 1}
  97. O_36 = 321
  98.   : {"3": 1, "107": 1}
  99. O_37 = 24157817
  100.   : {"73": 1, "149": 1, "2221": 1}
  101. O_38 = 9349
  102.   : {"9349": 1}
  103. O_39 = 135721
  104.   : {"135721": 1}
  105. O_40 = 2161
  106.   : {"2161": 1}
  107. O_41 = 165580141
  108.   : {"2789": 1, "59369": 1}
  109. O_42 = 211
  110.   : {"211": 1}
  111. O_43 = 433494437
  112.   : {"433494437": 1}
  113. O_44 = 13201
  114.   : {"43": 1, "307": 1}
  115. O_45 = 109441
  116.   : {"109441": 1}
  117. O_46 = 64079
  118.   : {"139": 1, "461": 1}
  119. O_47 = 2971215073
  120.   : {"2971215073": 1}
  121. O_48 = 2206
  122.   : {"2": 1, "1103": 1}
  123. O_49 = 598364773
  124.   : {"97": 1, "6168709": 1}
  125. O_50 = 15251
  126.   : {"101": 1, "151": 1}
  127. O_51 = 6376021
  128.   : {"6376021": 1}
  129. O_52 = 90481
  130.   : {"90481": 1}
  131. O_53 = 53316291173
  132.   : {"953": 1, "55945741": 1}
  133. O_54 = 5779
  134.   : {"5779": 1}
  135. O_55 = 313671601
  136.   : {"661": 1, "474541": 1}
  137. O_56 = 101521
  138.   : {"7": 1, "14503": 1}
  139. O_57 = 43701901
  140.   : {"797": 1, "54833": 1}
  141. O_58 = 1149851
  142.   : {"59": 1, "19489": 1}
  143. O_59 = 956722026041
  144.   : {"353": 1, "2710260697": 1}
  145. O_60 = 2521
  146.   : {"2521": 1}
  147. O_61 = 2504730781961
  148.   : {"4513": 1, "555003497": 1}
  149. O_62 = 3010349
  150.   : {"3010349": 1}
  151. O_63 = 35239681
  152.   : {"35239681": 1}
  153. O_64 = 4870847
  154.   : {"1087": 1, "4481": 1}
  155. O_65 = 14736206161
  156.   : {"14736206161": 1}
  157. O_66 = 9901
  158.   : {"9901": 1}
  159. O_67 = 44945570212853
  160.   : {"269": 1, "116849": 1, "1429913": 1}
  161. O_68 = 4250681
  162.   : {"67": 1, "63443": 1}
  163. O_69 = 2053059121
  164.   : {"137": 1, "829": 1, "18077": 1}
  165. O_70 = 64681
  166.   : {"71": 1, "911": 1}
  167. O_71 = 308061521170129
  168.   : {"6673": 1, "46165371073": 1}
  169. O_72 = 103681
  170.   : {"103681": 1}
  171. O_73 = 806515533049393
  172.   : {"9375829": 1, "86020717": 1}
  173. O_74 = 54018521
  174.   : {"54018521": 1}
  175. O_75 = 230686501
  176.   : {"230686501": 1}
  177. O_76 = 29134601
  178.   : {"29134601": 1}
  179. O_77 = 4777821694801
  180.   : {"988681": 1, "4832521": 1}
  181. O_78 = 67861
  182.   : {"79": 1, "859": 1}
  183. O_79 = 14472334024676221
  184.   : {"157": 1, "92180471494753": 1}
  185. O_80 = 4868641
  186.   : {"1601": 1, "3041": 1}
  187. O_81 = 192900153617
  188.   : {"2269": 1, "4373": 1, "19441": 1}
  189. O_82 = 370248451
  190.   : {"370248451": 1}
  191. O_83 = 99194853094755497
  192.   : {"99194853094755497": 1}
  193. O_84 = 118441
  194.   : {"83": 1, "1427": 1}
  195. O_85 = 32522917584361
  196.   : {"9521": 1, "3415914041": 1}
  197. O_86 = 969323029
  198.   : {"6709": 1, "144481": 1}
  199. O_87 = 661078661101
  200.   : {"173": 1, "3821263937": 1}
  201. O_88 = 224056801
  202.   : {"263": 1, "881": 1, "967": 1}
  203. O_89 = 1779979416004714189
  204.   : {"1069": 1, "1665088321800481": 1}
  205. O_90 = 97921
  206.   : {"181": 1, "541": 1}
  207. O_91 = 1538476926502321
  208.   : {"13": 1, "741469": 1, "159607993": 1}
  209. O_92 = 1368706081
  210.   : {"4969": 1, "275449": 1}
  211. O_93 = 4531100550901
  212.   : {"4531100550901": 1}
  213. O_94 = 6643838879
  214.   : {"6643838879": 1}
  215. O_95 = 1527884938291801
  216.   : {"761": 1, "29641": 1, "67735001": 1}
  217. O_96 = 4870846
  218.   : {"2": 1, "769": 1, "3167": 1}
  219. O_97 = 83621143489848422977
  220.   : {"193": 1, "389": 1, "3084989": 1, "361040209": 1}
  221. O_98 = 599786069
  222.   : {"599786069": 1}
  223. O_99 = 3653720611201
  224.   : {"197": 1, "18546805133": 1}
  225. O_100 = 228811001
  226.   : {"401": 1, "570601": 1}
  227. O_101 = 573147844013817084101
  228.   : {"743519377": 1, "770857978613": 1}
  229. O_102 = 3188011
  230.   : {"919": 1, "3469": 1}
  231. O_103 = 1500520536206896083277
  232.   : {"519121": 1, "5644193": 1, "512119709": 1}
  233. O_104 = 10525900321
  234.   : {"103": 1, "102193207": 1}
  235. O_105 = 8288823481
  236.   : {"8288823481": 1}
  237. O_106 = 119218851371
  238.   : {"119218851371": 1}
  239. O_107 = 10284720757613717413913
  240.   : {"1247833": 1, "8242065050061761": 1}
  241. O_108 = 33385281
  242.   : {"3": 1, "11128427": 1}
  243. O_109 = 26925748508234281076009
  244.   : {"827728777": 1, "32529675488417": 1}
  245. O_110 = 142585201
  246.   : {"11": 1, "331": 1, "39161": 1}
  247. O_111 = 1459000305513721
  248.   : {"1459000305513721": 1}
  249. O_112 = 10745088481
  250.   : {"10745088481": 1}
  251. O_113 = 184551825793033096366333
  252.   : {"677": 1, "272602401466814027129": 1}
  253. O_114 = 21850951
  254.   : {"229": 1, "95419": 1}
  255. O_115 = 3372041404278257761
  256.   : {"1381": 1, "2441738887963981": 1}
  257. O_116 = 440719107401
  258.   : {"347": 1, "1270083883": 1}
  259. O_117 = 1176486689738881
  260.   : {"29717": 1, "39589685693": 1}
  261. O_118 = 2139295485799
  262.   : {"709": 1, "8969": 1, "336419": 1}
  263. O_119 = 159512939815855788121
  264.   : {"159512939815855788121": 1}
  265. O_120 = 4974481
  266.   : {"241": 1, "20641": 1}
  267. O_121 = 97415813466381445596089
  268.   : {"97415813466381445596089": 1}
  269. O_122 = 5600748293801
  270.   : {"5600748293801": 1}
  271. O_123 = 68541957733949701
  272.   : {"68541957733949701": 1}
  273. O_124 = 3020733700601
  274.   : {"3020733700601": 1}
  275. O_125 = 792070839820228500005
  276.   : {"5": 1, "158414167964045700001": 1}
  277. O_126 = 31530241
  278.   : {"1009": 1, "31249": 1}
  279. O_127 = 155576970220531065681649693
  280.   : {"27941": 1, "5568053048227732210073": 1}
  281. O_128 = 23725150497407
  282.   : {"127": 1, "186812208641": 1}
  283. O_129 = 469793567274867421
  284.   : {"257": 1, "5417": 1, "8513": 1, "39639893": 1}
  285. O_130 = 6698324881
  286.   : {"131": 1, "2081": 1, "24571": 1}
  287. O_131 = 1066340417491710595814572169
  288.   : {"1066340417491710595814572169": 1}
  289. O_132 = 261399601
  290.   : {"261399601": 1}
  291. O_133 = 51362674674278351399401
  292.   : {"3457": 1, "42293": 1, "351301301942501": 1}
  293. O_134 = 100501350283429
  294.   : {"4021": 1, "24994118449": 1}
  295. O_135 = 1114769954367361
  296.   : {"1114769954367361": 1}
  297. O_136 = 23230657239121
  298.   : {"23230657239121": 1}
  299. O_137 = 19134702400093278081449423917
  300.   : {"19134702400093278081449423917": 1}
  301. O_138 = 1026529561
  302.   : {"691": 1, "1485571": 1}
  303. O_139 = 50095301248058391139327916261
  304.   : {"277": 1, "2114537501": 1, "85526722937689093": 1}
  305. O_140 = 12317523121
  306.   : {"12317523121": 1}
  307. O_141 = 22070297525055988321
  308.   : {"108289": 1, "1435097": 1, "142017737": 1}
  309. O_142 = 688846502588399
  310.   : {"688846502588399": 1}
  311. O_143 = 16557761623387534111504801
  312.   : {"8581": 1, "1929584153756850496621": 1}
  313. O_144 = 10749957121
  314.   : {"10749957121": 1}
  315. O_145 = 349619996930737079890201
  316.   : {"349619996930737079890201": 1}
  317. O_146 = 1803423556807921
  318.   : {"151549": 1, "11899937029": 1}
  319. O_147 = 359316079957723981
  320.   : {"293": 1, "3529": 1, "347502052673": 1}
  321. O_148 = 972666870342481
  322.   : {"11987": 1, "81143477963": 1}
  323. O_149 = 6161314747715278029583501626149
  324.   : {"110557": 1, "162709": 1, "4000949": 1, "85607646594577": 1}
  325. O_150 = 226965751
  326.   : {"12301": 1, "18451": 1}
  327. O_151 = 16130531424904581415797907386349
  328.   : {"5737": 1, "2811666624525811646469915877": 1}
  329. O_152 = 1091346396980401
  330.   : {"1091346396980401": 1}
  331. O_153 = 121980492954159598081
  332.   : {"17": 1, "7175323114950564593": 1}
  333. O_154 = 2141890304401
  334.   : {"229769": 1, "9321929": 1}
  335. O_155 = 16424697761902088993749801
  336.   : {"21701": 1, "12370533881": 1, "61182778621": 1}
  337. O_156 = 12280217041
  338.   : {"12280217041": 1}
  339. O_157 = 289450641941273985495088042104137
  340.   : {"313": 1, "11617": 1, "7636481": 1, "10424204306491346737": 1}
  341. O_158 = 32361122672259149
  342.   : {"32361122672259149": 1}
  343. O_159 = 7106567261110294289821
  344.   : {"317": 1, "97639037": 1, "229602768949": 1}
  345. O_160 = 23725145626561
  346.   : {"23725145626561": 1}
  347. O_161 = 5325384894714727861491234721
  348.   : {"8693": 1, "612606107755058997065597": 1}
  349. O_162 = 192900153619
  350.   : {"3079": 1, "62650261": 1}
  351. O_163 = 5193981023518027157495786850488117
  352.   : {"977": 1, "4892609": 1, "33365519393": 1, "32566223208133": 1}
  353. O_164 = 45694638489299801
  354.   : {"163": 1, "800483": 1, "350207569": 1}
  355. O_165 = 40326773227765201
  356.   : {"86461": 1, "518101": 1, "900241": 1}
  357. O_166 = 221806434537978679
  358.   : {"35761381": 1, "6202401259": 1}
  359. O_167 = 35600075545958458963222876581316753
  360.   : {"18104700793": 1, "1966344318693345608565721": 1}
  361. O_168 = 10978677361
  362.   : {"167": 1, "65740583": 1}
  363. O_169 = 400009475456580321242184872389193
  364.   : {"337": 1, "89909": 1, "104600155609": 1, "126213229732669": 1}
  365. O_170 = 14783146675081
  366.   : {"1158551": 1, "12760031": 1}
  367. O_171 = 39277339906179015273601
  368.   : {"6841": 1, "5741461760879844361": 1}
  369. O_172 = 313195711516578281
  370.   : {"313195711516578281": 1}
  371. O_173 = 638817435613190341905763972389505493
  372.   : {"1639343785721": 1, "389678749007629271532733": 1}
  373. O_174 = 330539330551
  374.   : {"349": 1, "947104099": 1}
  375. O_175 = 12079073814871033705119001
  376.   : {"701": 1, "17231203730201189308301": 1}
  377. O_176 = 52337681992411201
  378.   : {"93058241": 1, "562418561": 1}
  379. O_177 = 2288292587779989705334201
  380.   : {"2191261": 1, "805134061": 1, "1297027681": 1}
  381. O_178 = 3980154972736918051
  382.   : {"179": 1, "22235502640988369": 1}
  383. O_179 = 11463113765491467695340528626429782121
  384.   : {"21481": 1, "156089": 1, "3418816640903898929534613769": 1}
  385. O_180 = 10783342081
  386.   : {"10783342081": 1}
  387. O_181 = 30010821454963453907530667147829489881
  388.   : {"8689": 1, "422453": 1, "8175789237238547574551461093": 1}
  389. O_182 = 689667151970161
  390.   : {"689667151970161": 1}
  391. O_183 = 15684190725257406307513801
  392.   : {"1097": 1, "14297347971975757800833": 1}
  393. O_184 = 2408601003642486721
  394.   : {"253367": 1, "9506372193863": 1}
  395. O_185 = 1702945513191305556907097618161
  396.   : {"1702945513191305556907097618161": 1}
  397. O_186 = 2265550275451
  398.   : {"63799": 1, "35510749": 1}
  399. O_187 = 3788862125124360918966178024054801
  400.   : {"373": 1, "10157807305963434099105034917037": 1}
  401. O_188 = 14713531683370658881
  402.   : {"563": 1, "5641": 1, "4632894751907": 1}
  403. O_189 = 37216909291681445195521
  404.   : {"38933": 1, "955921950316735037": 1}
  405. O_190 = 694493169660601
  406.   : {"191": 1, "41611": 1, "87382901": 1}
  407. O_191 = 3691087032412706639440686994833808526209
  408.   : {"4870723671313": 1, "757810806256989128439975793": 1}
  409. O_192 = 23725150497406
  410.   : {"2": 1, "11862575248703": 1}
  411. O_193 = 9663391306290450775010025392525829059713
  412.   : {"9465278929": 1, "1020930432032326933976826008497": 1}
  413. O_194 = 186982561199565069121
  414.   : {"3299": 1, "56678557502141579": 1}
  415. O_195 = 88999250837499877681
  416.   : {"88999250837499877681": 1}
  417. O_196 = 358889844987430121
  418.   : {"5881": 1, "61025309469041": 1}
  419. O_197 = 66233869353085486281758142155705206899077
  420.   : {"15761": 1, "25795969": 1, "227150265697": 1, "717185107125886549": 1}
  421. O_198 = 3269118441601
  422.   : {"991": 1, "2179": 1, "1513909": 1}
  423. O_199 = 173402521172797813159685037284371942044301
  424.   : {"397": 1, "436782169201002048261171378550055269633": 1}
  425. O_200 = 52361396168994001
  426.   : {"9125201": 1, "5738108801": 1}
  427. O_201 = 5050260704396247169315999021
  428.   : {"5050260704396247169315999021": 1}
  429. O_202 = 1281597540372340914251
  430.   : {"809": 1, "7879": 1, "201062946718741": 1}
  431. O_203 = 177789476511755544773333681149218601
  432.   : {"1217": 1, "56470541": 1, "2586982700656733994659533": 1}
  433. O_204 = 27102433445641
  434.   : {"409": 1, "66265118449": 1}
  435. O_205 = 3758399976002037812130285171971401
  436.   : {"821": 1, "125598581": 1, "36448117857891321536401": 1}
  437. O_206 = 3355265920593054081629
  438.   : {"619": 1, "1031": 1, "5257480026438961": 1}
  439. O_207 = 4072353155773627601222196481
  440.   : {"4072353155773627601222196481": 1}
  441. O_208 = 115509240442846111681
  442.   : {"3329": 1, "106513889": 1, "325759201": 1}
  443. O_209 = 57314120955051297736679165379998262001
  444.   : {"57314120955051297736679165379998262001": 1}
  445. O_210 = 16271615641
  446.   : {"21211": 1, "767131": 1}
  447. O_211 = 55835073295300465536628086585786672357234389
  448.   : {"22504837": 1, "38490197": 1, "800972881": 1, "80475423858449593021": 1}
  449. O_212 = 4737711507406862859881
  450.   : {"1483": 1, "2969": 1, "1076012367720403": 1}
  451. O_213 = 237254752064134595103404691601
  452.   : {"1277": 1, "185790722054921374395775013": 1}
  453. O_214 = 22997334743627409910279
  454.   : {"47927441": 1, "479836483312919": 1}
  455. O_215 = 176564796682276305310248237411699961
  456.   : {"2607553541": 1, "67712817361580804952011621": 1}
  457. O_216 = 1114577054219521
  458.   : {"6263": 1, "177962167367": 1}
  459. O_217 = 57247659290265530398525693996258373401
  460.   : {"433": 1, "44269": 1, "217221773": 1, "2191174861": 1, "6274653314021": 1}
  461. O_218 = 60207804009475408400201
  462.   : {"128621": 1, "788071": 1, "593985111211": 1}
  463. O_219 = 1626168262624866331113444171121
  464.   : {"123953": 1, "4139537": 1, "3169251245945843761": 1}
  465. O_220 = 59996854928656801
  466.   : {"59996854928656801": 1}
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement