euler-manager 0.0.5 → 0.0.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (645) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +11 -1
  3. data/Rakefile +3 -0
  4. data/bin/euler +28 -9
  5. data/config/config.rb +1 -0
  6. data/data/answers.yml +430 -456
  7. data/data/images/blackdot.gif +0 -0
  8. data/data/images/bracket_left.gif +0 -0
  9. data/data/images/bracket_right.gif +0 -0
  10. data/data/images/p295_lenticular.gif +0 -0
  11. data/data/images/p296_bisector.gif +0 -0
  12. data/data/images/p303_formula100.gif +0 -0
  13. data/data/images/p303_formula10000.gif +0 -0
  14. data/data/images/p392_gridlines.png +0 -0
  15. data/data/images/p400_winning.png +0 -0
  16. data/data/images/p411_longpath.png +0 -0
  17. data/data/images/p412_table53.png +0 -0
  18. data/data/images/p412_tablenums.png +0 -0
  19. data/data/images/p422_hyperbola.gif +0 -0
  20. data/data/images/p428_necklace.png +0 -0
  21. data/data/images/p_015.gif +0 -0
  22. data/data/images/p_068_1.gif +0 -0
  23. data/data/images/p_068_2.gif +0 -0
  24. data/data/images/p_085.gif +0 -0
  25. data/data/images/p_086.gif +0 -0
  26. data/data/images/p_090.gif +0 -0
  27. data/data/images/p_091_1.gif +0 -0
  28. data/data/images/p_091_2.gif +0 -0
  29. data/data/images/p_107_1.gif +0 -0
  30. data/data/images/p_107_2.gif +0 -0
  31. data/data/images/p_109.gif +0 -0
  32. data/data/images/p_126.gif +0 -0
  33. data/data/images/p_128.gif +0 -0
  34. data/data/images/p_138.gif +0 -0
  35. data/data/images/p_139.gif +0 -0
  36. data/data/images/p_143_torricelli.gif +0 -0
  37. data/data/images/p_144_1.gif +0 -0
  38. data/data/images/p_144_2.gif +0 -0
  39. data/data/images/p_147.gif +0 -0
  40. data/data/images/p_150.gif +0 -0
  41. data/data/images/p_151.gif +0 -0
  42. data/data/images/p_152_sum.gif +0 -0
  43. data/data/images/p_153_formule1.gif +0 -0
  44. data/data/images/p_153_formule2.gif +0 -0
  45. data/data/images/p_153_formule5.gif +0 -0
  46. data/data/images/p_153_formule6.gif +0 -0
  47. data/data/images/p_154_pyramid.gif +0 -0
  48. data/data/images/p_155_capacitors1.gif +0 -0
  49. data/data/images/p_155_capsform.gif +0 -0
  50. data/data/images/p_155_capsmu.gif +0 -0
  51. data/data/images/p_161_k9.gif +0 -0
  52. data/data/images/p_161_trio1.gif +0 -0
  53. data/data/images/p_161_trio3.gif +0 -0
  54. data/data/images/p_163.gif +0 -0
  55. data/data/images/p_173_square_laminas.gif +0 -0
  56. data/data/images/p_177_quad.gif +0 -0
  57. data/data/images/p_184.gif +0 -0
  58. data/data/images/p_189_colours.gif +0 -0
  59. data/data/images/p_189_grid.gif +0 -0
  60. data/data/images/p_194_Fig.png +0 -0
  61. data/data/images/p_194_GraphA.png +0 -0
  62. data/data/images/p_194_GraphB.png +0 -0
  63. data/data/images/p_199_circles_in_circles.gif +0 -0
  64. data/data/images/p_201_laserbeam.gif +0 -0
  65. data/data/images/p_208_robotwalk.gif +0 -0
  66. data/data/images/p_215_crackfree.gif +0 -0
  67. data/data/images/p_220.gif +0 -0
  68. data/data/images/p_226_formula.gif +0 -0
  69. data/data/images/p_226_scoop2.gif +0 -0
  70. data/data/images/p_228.png +0 -0
  71. data/data/images/p_237.gif +0 -0
  72. data/data/images/p_244_example.gif +0 -0
  73. data/data/images/p_244_start.gif +0 -0
  74. data/data/images/p_244_target.gif +0 -0
  75. data/data/images/p_246_anim.gif +0 -0
  76. data/data/images/p_246_ellipse.gif +0 -0
  77. data/data/images/p_247_hypersquares.gif +0 -0
  78. data/data/images/p_251_cardano.gif +0 -0
  79. data/data/images/p_252_convexhole.gif +0 -0
  80. data/data/images/p_255_Example.gif +0 -0
  81. data/data/images/p_255_Heron.gif +0 -0
  82. data/data/images/p_256_tatami3.gif +0 -0
  83. data/data/images/p_257_bisector.gif +0 -0
  84. data/data/images/p_262_formula1.gif +0 -0
  85. data/data/images/p_264_TriangleCentres.gif +0 -0
  86. data/data/images/p_265_BinaryCircles.gif +0 -0
  87. data/data/images/p_270_CutSquare.gif +0 -0
  88. data/data/images/p_275_sculptures2.gif +0 -0
  89. data/data/images/p_281_pizza.gif +0 -0
  90. data/data/images/p_282_formula.gif +0 -0
  91. data/data/images/p_282formula3.gif +0 -0
  92. data/data/images/p_287_quadtree.gif +0 -0
  93. data/data/images/p_289_euler.gif +0 -0
  94. data/data/images/p_291_formula.gif +0 -0
  95. data/data/images/p_299_ThreeSimTri.gif +0 -0
  96. data/data/images/p_300_protein.gif +0 -0
  97. data/data/images/p_306_pstrip.gif +0 -0
  98. data/data/images/p_309_ladders.gif +0 -0
  99. data/data/images/p_311_biclinic.gif +0 -0
  100. data/data/images/p_312_sierpinsky8t.gif +0 -0
  101. data/data/images/p_312_sierpinskyAt.gif +0 -0
  102. data/data/images/p_313_sliding_game_1.gif +0 -0
  103. data/data/images/p_313_sliding_game_2.gif +0 -0
  104. data/data/images/p_314_landgrab.gif +0 -0
  105. data/data/images/p_315_clocks.gif +0 -0
  106. data/data/images/p_316_decexp1.gif +0 -0
  107. data/data/images/p_316_decexp2.gif +0 -0
  108. data/data/images/p_316_decexp3.gif +0 -0
  109. data/data/images/p_321_swapping_counters_1.gif +0 -0
  110. data/data/images/p_321_swapping_counters_2.gif +0 -0
  111. data/data/images/p_326_formula1.gif +0 -0
  112. data/data/images/p_326_formula2.gif +0 -0
  113. data/data/images/p_327_rooms_of_doom.gif +0 -0
  114. data/data/images/p_328_sum1.gif +0 -0
  115. data/data/images/p_328_sum2.gif +0 -0
  116. data/data/images/p_330_formula.gif +0 -0
  117. data/data/images/p_331_crossflips1.gif +0 -0
  118. data/data/images/p_331_crossflips2.gif +0 -0
  119. data/data/images/p_331_crossflips3.gif +0 -0
  120. data/data/images/p_332_spherical.jpg +0 -0
  121. data/data/images/p_332_sum.gif +0 -0
  122. data/data/images/p_334_beans.gif +0 -0
  123. data/data/images/p_334_cases.gif +0 -0
  124. data/data/images/p_334_lfloor.gif +0 -0
  125. data/data/images/p_334_oplus.gif +0 -0
  126. data/data/images/p_334_rfloor.gif +0 -0
  127. data/data/images/p_335_mancala.gif +0 -0
  128. data/data/images/p_335_sum.gif +0 -0
  129. data/data/images/p_336_maximix.gif +0 -0
  130. data/data/images/p_338_gridpaper.gif +0 -0
  131. data/data/images/p_340_formula.gif +0 -0
  132. data/data/images/p_344_silverdollar.gif +0 -0
  133. data/data/images/p_351_hexorchard.png +0 -0
  134. data/data/images/p_354_bee_honeycomb.png +0 -0
  135. data/data/images/p_356_cubicpoly1.gif +0 -0
  136. data/data/images/p_356_cubicpoly2.gif +0 -0
  137. data/data/images/p_361_Thue-Morse1.gif +0 -0
  138. data/data/images/p_364_comf_dist.gif +0 -0
  139. data/data/images/p_372_pencilray1.jpg +0 -0
  140. data/data/images/p_372_pencilray2.gif +0 -0
  141. data/data/images/p_380_mazes.gif +0 -0
  142. data/data/images/p_384_formula.gif +0 -0
  143. data/data/images/p_385_ellipsetriangle.png +0 -0
  144. data/data/images/p_394_eatpie.gif +0 -0
  145. data/data/images/p_395_pythagorean.gif +0 -0
  146. data/data/images/p_404_c_ellipse.gif +0 -0
  147. data/data/images/p_405_tile1.png +0 -0
  148. data/data/images/p_405_tile2.gif +0 -0
  149. data/data/images/p_420_matrix.gif +0 -0
  150. data/data/images/p_424_kakuro1.gif +0 -0
  151. data/data/images/p_426_baxball1.gif +0 -0
  152. data/data/images/p_426_baxball2.gif +0 -0
  153. data/data/images/p_430_flips.gif +0 -0
  154. data/data/images/sod_13.gif +115 -0
  155. data/data/images/spacer.gif +0 -0
  156. data/data/images/symbol_asymp.gif +0 -0
  157. data/data/images/symbol_cong.gif +0 -0
  158. data/data/images/symbol_ge.gif +0 -0
  159. data/data/images/symbol_gt.gif +0 -0
  160. data/data/images/symbol_implies.gif +0 -0
  161. data/data/images/symbol_lceil.gif +0 -0
  162. data/data/images/symbol_le.gif +0 -0
  163. data/data/images/symbol_lfloor.gif +0 -0
  164. data/data/images/symbol_lt.gif +0 -0
  165. data/data/images/symbol_maps.gif +0 -0
  166. data/data/images/symbol_minus.gif +0 -0
  167. data/data/images/symbol_ne.gif +0 -0
  168. data/data/images/symbol_plusmn.gif +0 -0
  169. data/data/images/symbol_radic.gif +0 -0
  170. data/data/images/symbol_rceil.gif +0 -0
  171. data/data/images/symbol_rfloor.gif +0 -0
  172. data/data/images/symbol_sum.gif +0 -0
  173. data/data/images/symbol_times.gif +0 -0
  174. data/data/problems/1.yml +5 -3
  175. data/data/problems/10.yml +3 -4
  176. data/data/problems/100.yml +7 -9
  177. data/data/problems/101.yml +32 -45
  178. data/data/problems/102.yml +11 -12
  179. data/data/problems/103.yml +18 -22
  180. data/data/problems/104.yml +9 -11
  181. data/data/problems/105.yml +12 -17
  182. data/data/problems/106.yml +14 -15
  183. data/data/problems/107.yml +16 -16
  184. data/data/problems/108.yml +17 -28
  185. data/data/problems/109.yml +27 -29
  186. data/data/problems/11.yml +24 -29
  187. data/data/problems/110.yml +11 -15
  188. data/data/problems/111.yml +27 -17
  189. data/data/problems/112.yml +13 -11
  190. data/data/problems/113.yml +11 -9
  191. data/data/problems/114.yml +46 -100
  192. data/data/problems/115.yml +15 -12
  193. data/data/problems/116.yml +33 -72
  194. data/data/problems/117.yml +36 -78
  195. data/data/problems/118.yml +5 -5
  196. data/data/problems/119.yml +9 -7
  197. data/data/problems/12.yml +8 -9
  198. data/data/problems/120.yml +7 -13
  199. data/data/problems/121.yml +9 -11
  200. data/data/problems/122.yml +21 -38
  201. data/data/problems/123.yml +9 -9
  202. data/data/problems/124.yml +24 -54
  203. data/data/problems/125.yml +7 -8
  204. data/data/problems/126.yml +12 -13
  205. data/data/problems/127.yml +21 -27
  206. data/data/problems/128.yml +19 -14
  207. data/data/problems/129.yml +9 -8
  208. data/data/problems/13.yml +52 -2
  209. data/data/problems/130.yml +12 -15
  210. data/data/problems/131.yml +9 -8
  211. data/data/problems/132.yml +7 -8
  212. data/data/problems/133.yml +9 -9
  213. data/data/problems/134.yml +7 -15
  214. data/data/problems/135.yml +9 -16
  215. data/data/problems/136.yml +9 -13
  216. data/data/problems/137.yml +22 -32
  217. data/data/problems/138.yml +11 -16
  218. data/data/problems/139.yml +11 -11
  219. data/data/problems/14.yml +14 -24
  220. data/data/problems/140.yml +18 -25
  221. data/data/problems/141.yml +10 -11
  222. data/data/problems/142.yml +3 -10
  223. data/data/problems/143.yml +13 -16
  224. data/data/problems/144.yml +23 -26
  225. data/data/problems/145.yml +7 -7
  226. data/data/problems/146.yml +6 -6
  227. data/data/problems/147.yml +7 -8
  228. data/data/problems/148.yml +15 -7
  229. data/data/problems/149.yml +26 -35
  230. data/data/problems/15.yml +7 -7
  231. data/data/problems/150.yml +18 -29
  232. data/data/problems/151.yml +17 -15
  233. data/data/problems/152.yml +11 -8
  234. data/data/problems/153.yml +38 -53
  235. data/data/problems/154.yml +10 -12
  236. data/data/problems/155.yml +12 -15
  237. data/data/problems/156.yml +20 -22
  238. data/data/problems/157.yml +26 -28
  239. data/data/problems/158.yml +13 -14
  240. data/data/problems/159.yml +15 -25
  241. data/data/problems/16.yml +5 -2
  242. data/data/problems/160.yml +3 -4
  243. data/data/problems/161.yml +6 -10
  244. data/data/problems/162.yml +10 -11
  245. data/data/problems/163.yml +13 -15
  246. data/data/problems/164.yml +3 -3
  247. data/data/problems/165.yml +25 -28
  248. data/data/problems/166.yml +7 -11
  249. data/data/problems/167.yml +10 -12
  250. data/data/problems/168.yml +7 -9
  251. data/data/problems/169.yml +4 -5
  252. data/data/problems/17.yml +7 -7
  253. data/data/problems/170.yml +7 -10
  254. data/data/problems/171.yml +7 -9
  255. data/data/problems/172.yml +3 -2
  256. data/data/problems/173.yml +9 -7
  257. data/data/problems/174.yml +13 -15
  258. data/data/problems/175.yml +13 -15
  259. data/data/problems/176.yml +5 -5
  260. data/data/problems/177.yml +13 -12
  261. data/data/problems/178.yml +5 -5
  262. data/data/problems/179.yml +3 -6
  263. data/data/problems/18.yml +13 -17
  264. data/data/problems/180.yml +20 -25
  265. data/data/problems/181.yml +7 -3
  266. data/data/problems/182.yml +22 -27
  267. data/data/problems/183.yml +17 -23
  268. data/data/problems/184.yml +11 -14
  269. data/data/problems/185.yml +17 -18
  270. data/data/problems/186.yml +16 -24
  271. data/data/problems/187.yml +9 -12
  272. data/data/problems/188.yml +5 -6
  273. data/data/problems/189.yml +5 -7
  274. data/data/problems/19.yml +7 -8
  275. data/data/problems/190.yml +7 -9
  276. data/data/problems/191.yml +9 -10
  277. data/data/problems/192.yml +14 -22
  278. data/data/problems/193.yml +5 -3
  279. data/data/problems/194.yml +11 -14
  280. data/data/problems/195.yml +7 -9
  281. data/data/problems/196.yml +13 -21
  282. data/data/problems/197.yml +7 -11
  283. data/data/problems/198.yml +13 -16
  284. data/data/problems/199.yml +10 -10
  285. data/data/problems/2.yml +6 -6
  286. data/data/problems/20.yml +10 -18
  287. data/data/problems/200.yml +8 -8
  288. data/data/problems/201.yml +14 -16
  289. data/data/problems/202.yml +11 -10
  290. data/data/problems/203.yml +11 -16
  291. data/data/problems/204.yml +7 -7
  292. data/data/problems/205.yml +6 -6
  293. data/data/problems/206.yml +2 -2
  294. data/data/problems/207.yml +13 -16
  295. data/data/problems/208.yml +8 -8
  296. data/data/problems/209.yml +11 -23
  297. data/data/problems/21.yml +8 -9
  298. data/data/problems/210.yml +6 -6
  299. data/data/problems/211.yml +7 -7
  300. data/data/problems/212.yml +26 -36
  301. data/data/problems/213.yml +6 -7
  302. data/data/problems/214.yml +10 -11
  303. data/data/problems/215.yml +11 -14
  304. data/data/problems/216.yml +7 -10
  305. data/data/problems/217.yml +14 -23
  306. data/data/problems/218.yml +9 -10
  307. data/data/problems/219.yml +10 -15
  308. data/data/problems/22.yml +7 -9
  309. data/data/problems/220.yml +15 -20
  310. data/data/problems/221.yml +10 -16
  311. data/data/problems/222.yml +5 -3
  312. data/data/problems/223.yml +6 -8
  313. data/data/problems/224.yml +6 -8
  314. data/data/problems/225.yml +6 -7
  315. data/data/problems/226.yml +9 -12
  316. data/data/problems/227.yml +9 -9
  317. data/data/problems/228.yml +14 -17
  318. data/data/problems/229.yml +17 -25
  319. data/data/problems/23.yml +11 -15
  320. data/data/problems/230.yml +15 -19
  321. data/data/problems/231.yml +8 -12
  322. data/data/problems/232.yml +9 -10
  323. data/data/problems/233.yml +7 -6
  324. data/data/problems/234.yml +14 -19
  325. data/data/problems/235.yml +4 -5
  326. data/data/problems/236.yml +20 -22
  327. data/data/problems/237.yml +14 -9
  328. data/data/problems/238.yml +21 -33
  329. data/data/problems/239.yml +5 -5
  330. data/data/problems/24.yml +7 -6
  331. data/data/problems/240.yml +7 -7
  332. data/data/problems/241.yml +9 -12
  333. data/data/problems/242.yml +7 -9
  334. data/data/problems/243.yml +14 -15
  335. data/data/problems/244.yml +19 -28
  336. data/data/problems/245.yml +22 -30
  337. data/data/problems/246.yml +10 -13
  338. data/data/problems/247.yml +14 -17
  339. data/data/problems/248.yml +5 -2
  340. data/data/problems/249.yml +3 -3
  341. data/data/problems/25.yml +12 -11
  342. data/data/problems/250.yml +3 -3
  343. data/data/problems/251.yml +11 -9
  344. data/data/problems/252.yml +24 -25
  345. data/data/problems/253.yml +19 -32
  346. data/data/problems/254.yml +13 -17
  347. data/data/problems/255.yml +40 -50
  348. data/data/problems/256.yml +31 -39
  349. data/data/problems/257.yml +10 -14
  350. data/data/problems/258.yml +7 -9
  351. data/data/problems/259.yml +14 -12
  352. data/data/problems/26.yml +17 -7
  353. data/data/problems/260.yml +21 -25
  354. data/data/problems/261.yml +13 -15
  355. data/data/problems/262.yml +15 -16
  356. data/data/problems/263.yml +13 -15
  357. data/data/problems/264.yml +15 -16
  358. data/data/problems/265.yml +10 -12
  359. data/data/problems/266.yml +6 -6
  360. data/data/problems/267.yml +13 -10
  361. data/data/problems/268.yml +5 -4
  362. data/data/problems/269.yml +10 -11
  363. data/data/problems/27.yml +15 -21
  364. data/data/problems/270.yml +13 -13
  365. data/data/problems/271.yml +7 -9
  366. data/data/problems/272.yml +8 -11
  367. data/data/problems/273.yml +13 -17
  368. data/data/problems/274.yml +16 -19
  369. data/data/problems/275.yml +13 -15
  370. data/data/problems/276.yml +5 -7
  371. data/data/problems/277.yml +17 -20
  372. data/data/problems/278.yml +20 -28
  373. data/data/problems/279.yml +4 -3
  374. data/data/problems/28.yml +6 -13
  375. data/data/problems/280.yml +9 -9
  376. data/data/problems/281.yml +10 -13
  377. data/data/problems/282.yml +9 -6
  378. data/data/problems/283.yml +8 -8
  379. data/data/problems/284.yml +15 -18
  380. data/data/problems/285.yml +11 -11
  381. data/data/problems/286.yml +7 -8
  382. data/data/problems/287.yml +22 -32
  383. data/data/problems/288.yml +10 -11
  384. data/data/problems/289.yml +14 -15
  385. data/data/problems/29.yml +13 -20
  386. data/data/problems/290.yml +3 -4
  387. data/data/problems/291.yml +3 -6
  388. data/data/problems/292.yml +8 -9
  389. data/data/problems/293.yml +9 -10
  390. data/data/problems/294.yml +6 -6
  391. data/data/problems/295.yml +16 -21
  392. data/data/problems/296.yml +9 -11
  393. data/data/problems/297.yml +12 -15
  394. data/data/problems/298.yml +29 -29
  395. data/data/problems/299.yml +15 -21
  396. data/data/problems/3.yml +3 -3
  397. data/data/problems/30.yml +7 -8
  398. data/data/problems/300.yml +15 -16
  399. data/data/problems/301.yml +15 -17
  400. data/data/problems/302.yml +13 -14
  401. data/data/problems/303.yml +9 -7
  402. data/data/problems/304.yml +10 -15
  403. data/data/problems/305.yml +6 -10
  404. data/data/problems/306.yml +20 -24
  405. data/data/problems/307.yml +7 -8
  406. data/data/problems/308.yml +19 -30
  407. data/data/problems/309.yml +11 -12
  408. data/data/problems/31.yml +11 -14
  409. data/data/problems/310.yml +10 -15
  410. data/data/problems/311.yml +11 -17
  411. data/data/problems/312.yml +10 -11
  412. data/data/problems/313.yml +13 -13
  413. data/data/problems/314.yml +23 -25
  414. data/data/problems/315.yml +39 -45
  415. data/data/problems/316.yml +13 -13
  416. data/data/problems/317.yml +6 -7
  417. data/data/problems/318.yml +35 -57
  418. data/data/problems/319.yml +15 -19
  419. data/data/problems/32.yml +9 -10
  420. data/data/problems/320.yml +9 -8
  421. data/data/problems/321.yml +8 -9
  422. data/data/problems/322.yml +6 -8
  423. data/data/problems/323.yml +12 -15
  424. data/data/problems/324.yml +10 -13
  425. data/data/problems/325.yml +15 -21
  426. data/data/problems/326.yml +15 -8
  427. data/data/problems/327.yml +19 -23
  428. data/data/problems/328.yml +28 -31
  429. data/data/problems/329.yml +12 -13
  430. data/data/problems/33.yml +9 -9
  431. data/data/problems/330.yml +17 -36
  432. data/data/problems/331.yml +16 -22
  433. data/data/problems/332.yml +9 -11
  434. data/data/problems/333.yml +17 -20
  435. data/data/problems/334.yml +22 -34
  436. data/data/problems/335.yml +11 -12
  437. data/data/problems/336.yml +18 -20
  438. data/data/problems/337.yml +9 -11
  439. data/data/problems/338.yml +27 -37
  440. data/data/problems/339.yml +9 -9
  441. data/data/problems/34.yml +7 -3
  442. data/data/problems/340.yml +8 -10
  443. data/data/problems/341.yml +12 -14
  444. data/data/problems/342.yml +9 -13
  445. data/data/problems/343.yml +18 -25
  446. data/data/problems/344.yml +16 -17
  447. data/data/problems/345.yml +17 -22
  448. data/data/problems/346.yml +7 -7
  449. data/data/problems/347.yml +9 -12
  450. data/data/problems/348.yml +7 -8
  451. data/data/problems/349.yml +8 -9
  452. data/data/problems/35.yml +7 -4
  453. data/data/problems/350.yml +12 -14
  454. data/data/problems/351.yml +8 -9
  455. data/data/problems/352.yml +38 -42
  456. data/data/problems/353.yml +17 -21
  457. data/data/problems/354.yml +11 -13
  458. data/data/problems/355.yml +4 -4
  459. data/data/problems/356.yml +6 -6
  460. data/data/problems/357.yml +5 -5
  461. data/data/problems/358.yml +16 -25
  462. data/data/problems/359.yml +19 -22
  463. data/data/problems/36.yml +7 -4
  464. data/data/problems/360.yml +8 -8
  465. data/data/problems/361.yml +14 -15
  466. data/data/problems/362.yml +16 -28
  467. data/data/problems/363.yml +22 -23
  468. data/data/problems/364.yml +9 -11
  469. data/data/problems/365.yml +7 -13
  470. data/data/problems/366.yml +19 -22
  471. data/data/problems/367.yml +14 -15
  472. data/data/problems/368.yml +18 -35
  473. data/data/problems/369.yml +7 -11
  474. data/data/problems/37.yml +7 -6
  475. data/data/problems/370.yml +10 -13
  476. data/data/problems/371.yml +8 -9
  477. data/data/problems/372.yml +9 -12
  478. data/data/problems/373.yml +5 -6
  479. data/data/problems/374.yml +17 -21
  480. data/data/problems/375.yml +13 -17
  481. data/data/problems/376.yml +19 -21
  482. data/data/problems/377.yml +6 -7
  483. data/data/problems/378.yml +8 -11
  484. data/data/problems/379.yml +9 -11
  485. data/data/problems/38.yml +9 -13
  486. data/data/problems/380.yml +14 -17
  487. data/data/problems/381.yml +12 -18
  488. data/data/problems/382.yml +16 -19
  489. data/data/problems/383.yml +7 -9
  490. data/data/problems/384.yml +20 -24
  491. data/data/problems/385.yml +12 -16
  492. data/data/problems/386.yml +9 -11
  493. data/data/problems/387.yml +14 -15
  494. data/data/problems/388.yml +6 -8
  495. data/data/problems/389.yml +8 -8
  496. data/data/problems/39.yml +7 -6
  497. data/data/problems/390.yml +9 -14
  498. data/data/problems/391.yml +21 -25
  499. data/data/problems/392.yml +16 -17
  500. data/data/problems/393.yml +5 -6
  501. data/data/problems/394.yml +15 -18
  502. data/data/problems/395.yml +12 -13
  503. data/data/problems/396.yml +17 -22
  504. data/data/problems/397.yml +13 -16
  505. data/data/problems/398.yml +8 -9
  506. data/data/problems/399.yml +18 -18
  507. data/data/problems/4.yml +5 -4
  508. data/data/problems/40.yml +11 -14
  509. data/data/problems/400.yml +10 -11
  510. data/data/problems/401.yml +6 -7
  511. data/data/problems/402.yml +16 -21
  512. data/data/problems/403.yml +12 -14
  513. data/data/problems/404.yml +14 -16
  514. data/data/problems/405.yml +10 -11
  515. data/data/problems/406.yml +35 -41
  516. data/data/problems/407.yml +9 -16
  517. data/data/problems/408.yml +9 -9
  518. data/data/problems/409.yml +5 -7
  519. data/data/problems/41.yml +5 -4
  520. data/data/problems/410.yml +10 -13
  521. data/data/problems/411.yml +15 -19
  522. data/data/problems/412.yml +11 -15
  523. data/data/problems/413.yml +8 -8
  524. data/data/problems/414.yml +29 -34
  525. data/data/problems/415.yml +12 -15
  526. data/data/problems/416.yml +7 -7
  527. data/data/problems/417.yml +16 -17
  528. data/data/problems/418.yml +9 -12
  529. data/data/problems/419.yml +13 -18
  530. data/data/problems/42.yml +9 -10
  531. data/data/problems/420.yml +5 -6
  532. data/data/problems/421.yml +14 -25
  533. data/data/problems/422.yml +16 -18
  534. data/data/problems/423.yml +16 -18
  535. data/data/problems/424.yml +18 -19
  536. data/data/problems/425.yml +11 -12
  537. data/data/problems/426.yml +20 -21
  538. data/data/problems/427.yml +11 -13
  539. data/data/problems/428.yml +21 -25
  540. data/data/problems/429.yml +6 -6
  541. data/data/problems/43.yml +15 -13
  542. data/data/problems/430.yml +14 -16
  543. data/data/problems/44.yml +9 -12
  544. data/data/problems/45.yml +11 -11
  545. data/data/problems/46.yml +9 -14
  546. data/data/problems/47.yml +11 -16
  547. data/data/problems/48.yml +5 -3
  548. data/data/problems/49.yml +7 -6
  549. data/data/problems/5.yml +5 -4
  550. data/data/problems/50.yml +11 -6
  551. data/data/problems/51.yml +9 -11
  552. data/data/problems/52.yml +5 -4
  553. data/data/problems/53.yml +15 -24
  554. data/data/problems/54.yml +29 -39
  555. data/data/problems/55.yml +16 -17
  556. data/data/problems/56.yml +5 -7
  557. data/data/problems/57.yml +10 -11
  558. data/data/problems/58.yml +11 -18
  559. data/data/problems/59.yml +11 -19
  560. data/data/problems/6.yml +13 -9
  561. data/data/problems/60.yml +5 -6
  562. data/data/problems/61.yml +18 -26
  563. data/data/problems/62.yml +5 -5
  564. data/data/problems/63.yml +5 -3
  565. data/data/problems/64.yml +52 -126
  566. data/data/problems/65.yml +21 -47
  567. data/data/problems/66.yml +13 -23
  568. data/data/problems/67.yml +10 -13
  569. data/data/problems/68.yml +15 -19
  570. data/data/problems/69.yml +18 -10
  571. data/data/problems/7.yml +5 -2
  572. data/data/problems/70.yml +10 -12
  573. data/data/problems/71.yml +11 -13
  574. data/data/problems/72.yml +11 -12
  575. data/data/problems/73.yml +11 -12
  576. data/data/problems/74.yml +25 -37
  577. data/data/problems/75.yml +10 -12
  578. data/data/problems/76.yml +4 -4
  579. data/data/problems/77.yml +4 -4
  580. data/data/problems/78.yml +13 -8
  581. data/data/problems/79.yml +7 -7
  582. data/data/problems/8.yml +14 -8
  583. data/data/problems/80.yml +7 -7
  584. data/data/problems/81.yml +9 -15
  585. data/data/problems/82.yml +10 -15
  586. data/data/problems/83.yml +10 -19
  587. data/data/problems/84.yml +36 -59
  588. data/data/problems/85.yml +7 -5
  589. data/data/problems/86.yml +11 -11
  590. data/data/problems/87.yml +7 -8
  591. data/data/problems/88.yml +30 -49
  592. data/data/problems/89.yml +13 -14
  593. data/data/problems/9.yml +6 -9
  594. data/data/problems/90.yml +16 -18
  595. data/data/problems/91.yml +10 -15
  596. data/data/problems/92.yml +14 -25
  597. data/data/problems/93.yml +13 -17
  598. data/data/problems/94.yml +7 -7
  599. data/data/problems/95.yml +13 -19
  600. data/data/problems/96.yml +24 -40
  601. data/data/problems/97.yml +7 -10
  602. data/data/problems/98.yml +9 -12
  603. data/data/problems/99.yml +9 -12
  604. data/euler-manager.gemspec +1 -0
  605. data/example/1/README.md +4 -4
  606. data/example/15/README.md +8 -0
  607. data/example/15/python/15.py +5 -0
  608. data/example/15/python/euler.py +0 -0
  609. data/example/2/README.md +7 -5
  610. data/example/Eulerfile.rb +1 -0
  611. data/lib/euler/problem.rb +6 -1
  612. data/lib/euler/solution.rb +4 -2
  613. data/lib/euler/version.rb +1 -1
  614. data/rake/clean.rake +16 -0
  615. data/rake/update.rake +88 -0
  616. data/spec/euler/solution_spec.rb +2 -1
  617. data/templates/Eulerfile.rb +12 -0
  618. metadata +189 -29
  619. data/data/problems/431.yml +0 -33
  620. data/data/problems/432.yml +0 -13
  621. data/data/problems/433.yml +0 -18
  622. data/data/problems/434.yml +0 -32
  623. data/data/problems/435.yml +0 -21
  624. data/data/problems/436.yml +0 -21
  625. data/data/problems/437.yml +0 -22
  626. data/data/problems/438.yml +0 -29
  627. data/data/problems/439.yml +0 -17
  628. data/data/problems/440.yml +0 -21
  629. data/data/problems/441.yml +0 -23
  630. data/data/problems/442.yml +0 -9
  631. data/data/problems/443.yml +0 -13
  632. data/data/problems/444.yml +0 -28
  633. data/data/problems/445.yml +0 -37
  634. data/data/problems/446.yml +0 -29
  635. data/data/problems/447.yml +0 -31
  636. data/data/problems/448.yml +0 -14
  637. data/data/problems/449.yml +0 -17
  638. data/data/problems/450.yml +0 -26
  639. data/data/problems/451.yml +0 -15
  640. data/data/problems/452.yml +0 -8
  641. data/data/problems/453.yml +0 -16
  642. data/data/problems/454.yml +0 -17
  643. data/data/problems/455.yml +0 -16
  644. data/data/problems/456.yml +0 -15
  645. data/scripts/update_problems +0 -68
@@ -2,28 +2,17 @@
2
2
  :id: 421
3
3
  :name: Prime factors of <var>n</var><sup>15</sup>+1
4
4
  :url: http://projecteuler.net/problem=421
5
- :content: "\r\n<p>\r\nNumbers of the form <var>n</var><sup>15</sup>+1 are composite
6
- for every integer <var>n</var> <img src=\"images/symbol_gt.gif\" width=\"10\" height=\"10\"
7
- alt=\"&gt;\" border=\"0\" style=\"vertical-align:middle;\"> 1.<br>\r\nFor positive
8
- integers <var>n</var> and <var>m</var> let <var>s</var>(<var>n,m</var>) be defined
9
- as the sum of the <i>distinct</i> prime factors of <var>n</var><sup>15</sup>+1 not
10
- exceeding <var>m</var>.\r\n</p>\r\nE.g. 2<sup>15</sup>+1 = 3<img src=\"images/symbol_times.gif\"
11
- width=\"9\" height=\"9\" alt=\"×\" border=\"0\" style=\"vertical-align:middle;\">3<img
12
- src=\"images/symbol_times.gif\" width=\"9\" height=\"9\" alt=\"×\" border=\"0\"
13
- style=\"vertical-align:middle;\">11<img src=\"images/symbol_times.gif\" width=\"9\"
14
- height=\"9\" alt=\"×\" border=\"0\" style=\"vertical-align:middle;\">331.<br>\r\nSo
15
- <var>s</var>(2,10) = 3 and <var>s</var>(2,1000) = 3+11+331 = 345.<br><br>\r\n\r\nAlso
16
- 10<sup>15</sup>+1 = 7<img src=\"images/symbol_times.gif\" width=\"9\" height=\"9\"
17
- alt=\"×\" border=\"0\" style=\"vertical-align:middle;\">11<img src=\"images/symbol_times.gif\"
18
- width=\"9\" height=\"9\" alt=\"×\" border=\"0\" style=\"vertical-align:middle;\">13<img
19
- src=\"images/symbol_times.gif\" width=\"9\" height=\"9\" alt=\"×\" border=\"0\"
20
- style=\"vertical-align:middle;\">211<img src=\"images/symbol_times.gif\" width=\"9\"
21
- height=\"9\" alt=\"×\" border=\"0\" style=\"vertical-align:middle;\">241<img src=\"images/symbol_times.gif\"
22
- width=\"9\" height=\"9\" alt=\"×\" border=\"0\" style=\"vertical-align:middle;\">2161<img
23
- src=\"images/symbol_times.gif\" width=\"9\" height=\"9\" alt=\"×\" border=\"0\"
24
- style=\"vertical-align:middle;\">9091.<br>\r\nSo <var>s</var>(10,100) = 31 and <var>s</var>(10,1000)
25
- = 483.<br><p>\r\nFind &amp;Sum; <var>s</var>(<var>n</var>,10<sup>8</sup>) for 1
26
- <img src=\"images/symbol_le.gif\" width=\"10\" height=\"12\" alt=\"≤\" border=\"0\"
27
- style=\"vertical-align:middle;\"><var>n</var> <img src=\"images/symbol_le.gif\"
28
- width=\"10\" height=\"12\" alt=\"≤\" border=\"0\" style=\"vertical-align:middle;\">
29
- 10<sup>11</sup>.\r\n</p>\r\n\r\n"
5
+ :content: "Numbers of the form <var>n</var><sup>15</sup>+1 are composite for every
6
+ integer <var>n</var> ![>](/home/will/src/euler-manager/config/../data/images/symbol_gt.gif)
7
+ 1. \n\rFor positive integers <var>n</var> and <var>m</var> let <var>s</var>(<var>n,m</var>)
8
+ be defined as the sum of the _distinct_ prime factors of <var>n</var><sup>15</sup>+1
9
+ not exceeding <var>m</var>.\n\n\rE.g. 2<sup>15</sup>+1 = 3 ![×](/home/will/src/euler-manager/config/../data/images/symbol_times.gif)3
10
+ ![×](/home/will/src/euler-manager/config/../data/images/symbol_times.gif)11 ![×](/home/will/src/euler-manager/config/../data/images/symbol_times.gif)331.
11
+ \ \n\rSo <var>s</var>(2,10) = 3 and <var>s</var>(2,1000) = 3+11+331 = 345. \n \n
12
+ \ \n\r\rAlso 10<sup>15</sup>+1 = 7 ![×](/home/will/src/euler-manager/config/../data/images/symbol_times.gif)11
13
+ ![×](/home/will/src/euler-manager/config/../data/images/symbol_times.gif)13 ![×](/home/will/src/euler-manager/config/../data/images/symbol_times.gif)211
14
+ ![×](/home/will/src/euler-manager/config/../data/images/symbol_times.gif)241 ![×](/home/will/src/euler-manager/config/../data/images/symbol_times.gif)2161
15
+ ![×](/home/will/src/euler-manager/config/../data/images/symbol_times.gif)9091. \n\rSo
16
+ <var>s</var>(10,100) = 31 and <var>s</var>(10,1000) = 483. \n\nFind &Sum; <var>s</var>(<var>n</var>,10<sup>8</sup>)
17
+ for 1 ![≤](/home/will/src/euler-manager/config/../data/images/symbol_le.gif) <var>n</var>
18
+ ![≤](/home/will/src/euler-manager/config/../data/images/symbol_le.gif) 10<sup>11</sup>.\n\n"
@@ -2,21 +2,19 @@
2
2
  :id: 422
3
3
  :name: Sequence of points on a hyperbola
4
4
  :url: http://projecteuler.net/problem=422
5
- :content: "\r\n<p>Let H be the hyperbola defined by the equation 12<var>x</var><sup>2</sup>
6
- + 7<var>x</var><var>y</var> - 12<var>y</var><sup>2</sup> = 625.</p>\r\n\r\n<p>Next,
7
- define X as the point (7, 1). It can be seen that X is in H.</p>\r\n\r\n<p>Now we
8
- define a sequence of points in H, {P<sub><var>i</var></sub> : <var>i</var> <img
9
- src=\"images/symbol_ge.gif\" width=\"10\" height=\"12\" alt=\"≥\" border=\"0\" style=\"vertical-align:middle;\">
10
- 1}, as:\r\n</p>\n<ul>\n<li> P<sub>1</sub> = (13, 61/4).\r\n</li>\n<li> P<sub>2</sub>
11
- = (-43/6, -4).\r\n</li>\n<li> For <var>i</var> &gt; 2, P<sub><var>i</var></sub>
12
- is the unique point in H that is different from P<sub><var>i</var>-1</sub> and such
13
- that line P<sub><var>i</var></sub>P<sub><var>i</var>-1</sub> is parallel to line
14
- P<sub><var>i</var>-2</sub>X. It can be shown that P<sub><var>i</var></sub> is well-defined,
15
- and that its coordinates are always rational.\r\n</li>\n</ul>\n<img src=\"project/images/p422_hyperbola.gif\"><p>You
16
- are given that P<sub>3</sub> = (-19/2, -229/24), P<sub>4</sub> = (1267/144, -37/12)
17
- and P<sub>7</sub> = (17194218091/143327232, 274748766781/1719926784).</p>\r\n\r\n<p>Find
18
- P<sub><var>n</var></sub> for <var>n</var> = 11<sup>14</sup> in the following format:<br>If
19
- P<sub><var>n</var></sub> = (<var>a</var>/<var>b</var>, <var>c</var>/<var>d</var>)
20
- where the fractions are in lowest terms and the denominators are positive, then
21
- the answer is (<var>a</var> + <var>b</var> + <var>c</var> + <var>d</var>) mod 1 000 000 007.</p>\r\n\r\n<p>For
22
- <var>n</var> = 7, the answer would have been: 806236837.</p>\r\n"
5
+ :content: "Let H be the hyperbola defined by the equation 12<var>x</var><sup>2</sup>
6
+ + 7<var>x</var><var>y</var> - 12<var>y</var><sup>2</sup> = 625.\n\nNext, define
7
+ X as the point (7, 1). It can be seen that X is in H.\n\nNow we define a sequence
8
+ of points in H, {P<sub><var>i</var></sub> : <var>i</var> ![≥](/home/will/src/euler-manager/config/../data/images/symbol_ge.gif)
9
+ 1}, as:\n\n- P<sub>1</sub> = (13, 61/4).\r\n- P<sub>2</sub> = (-43/6, -4).\r\n-
10
+ For <var>i</var> > 2, P<sub><var>i</var></sub> is the unique point in H that is
11
+ different from P<sub><var>i</var>-1</sub> and such that line P<sub><var>i</var></sub>P<sub><var>i</var>-1</sub>
12
+ is parallel to line P<sub><var>i</var>-2</sub>X. It can be shown that P<sub><var>i</var></sub>
13
+ is well-defined, and that its coordinates are always rational.\r\n ![](/home/will/src/euler-manager/config/../data/images/p422_hyperbola.gif)\n\nYou
14
+ are given that P<sub>3</sub> = (-19/2, -229/24), P<sub>4</sub> = (1267/144, -37/12)
15
+ and P<sub>7</sub> = (17194218091/143327232, 274748766781/1719926784).\n\nFind P<sub><var>n</var></sub>
16
+ for <var>n</var> = 11<sup>14</sup> in the following format: \nIf P<sub><var>n</var></sub>
17
+ = (<var>a</var>/<var>b</var>, <var>c</var>/<var>d</var>) where the fractions are
18
+ in lowest terms and the denominators are positive, then the answer is (<var>a</var>
19
+ + <var>b</var> + <var>c</var> + <var>d</var>) mod 1 000 000 007.\n\nFor <var>n</var>
20
+ = 7, the answer would have been: 806236837.\n\n"
@@ -2,21 +2,19 @@
2
2
  :id: 423
3
3
  :name: Consecutive die throws
4
4
  :url: http://projecteuler.net/problem=423
5
- :content: "\r\n<p>Let <var>n</var> be a positive integer.<br>\r\nA 6-sided die is
6
- thrown <var>n</var> times. Let <var>c</var> be the number of pairs of consecutive
7
- throws that give the same value.</p>\r\n\r\n<p>For example, if <var>n</var> = 7
8
- and the values of the die throws are (1,1,5,6,6,6,3), then the following pairs of
9
- consecutive throws give the same value:<br>\r\n(<u>1,1</u>,5,6,6,6,3)<br>\r\n(1,1,5,<u>6,6</u>,6,3)<br>\r\n(1,1,5,6,<u>6,6</u>,3)<br>\r\nTherefore,
10
- <var>c</var> = 3 for (1,1,5,6,6,6,3).</p>\r\n\r\n<p>Define C(<var>n</var>) as the
11
- number of outcomes of throwing a 6-sided die <var>n</var> times such that <var>c</var>
12
- does not exceed π(<var>n</var>).<sup>1</sup><br>\r\nFor example, C(3) = 216, C(4)
13
- = 1290, C(11) = 361912500 and C(24) = 4727547363281250000.</p>\r\n\r\n<p>Define
14
- S(<var>L</var>) as <img src=\"images/symbol_sum.gif\" width=\"11\" height=\"14\"
15
- alt=\"∑\" border=\"0\" style=\"vertical-align:middle;\"> C(<var>n</var>) for 1 <img
16
- src=\"images/symbol_le.gif\" width=\"10\" height=\"12\" alt=\"≤\" border=\"0\" style=\"vertical-align:middle;\"><var>n</var>
17
- <img src=\"images/symbol_le.gif\" width=\"10\" height=\"12\" alt=\"≤\" border=\"0\"
18
- style=\"vertical-align:middle;\"><var>L</var>.<br>\r\nFor example, S(50) mod 1 000 000 007
19
- = 832833871.</p>\r\n\r\n<p>Find S(50 000 000) mod 1 000 000 007.</p>\r\n\r\n<p><sup>1</sup>
20
- π denotes the <b>prime-counting function</b>, i.e. π(<var>n</var>) is the number
21
- of primes <img src=\"images/symbol_le.gif\" width=\"10\" height=\"12\" alt=\"≤\"
22
- border=\"0\" style=\"vertical-align:middle;\"><var>n</var>.</p>\r\n"
5
+ :content: "Let <var>n</var> be a positive integer. \n\rA 6-sided die is thrown <var>n</var>
6
+ times. Let <var>c</var> be the number of pairs of consecutive throws that give the
7
+ same value.\n\nFor example, if <var>n</var> = 7 and the values of the die throws
8
+ are (1,1,5,6,6,6,3), then the following pairs of consecutive throws give the same
9
+ value: \n\r(<u>1,1</u>,5,6,6,6,3) \n\r(1,1,5,<u>6,6</u>,6,3) \n\r(1,1,5,6,<u>6,6</u>,3)
10
+ \ \n\rTherefore, <var>c</var> = 3 for (1,1,5,6,6,6,3).\n\nDefine C(<var>n</var>)
11
+ as the number of outcomes of throwing a 6-sided die <var>n</var> times such that
12
+ <var>c</var> does not exceed π(<var>n</var>).<sup>1</sup> \n\rFor example, C(3)
13
+ = 216, C(4) = 1290, C(11) = 361912500 and C(24) = 4727547363281250000.\n\nDefine
14
+ S(<var>L</var>) as ![∑](/home/will/src/euler-manager/config/../data/images/symbol_sum.gif)
15
+ C(<var>n</var>) for 1 ![≤](/home/will/src/euler-manager/config/../data/images/symbol_le.gif)
16
+ <var>n</var> ![≤](/home/will/src/euler-manager/config/../data/images/symbol_le.gif)
17
+ <var>L</var>. \n\rFor example, S(50) mod 1 000 000 007 = 832833871.\n\nFind S(50 000 000)
18
+ mod 1 000 000 007.\n\n<sup>1</sup> π denotes the **prime-counting function** , i.e.
19
+ π(<var>n</var>) is the number of primes ![≤](/home/will/src/euler-manager/config/../data/images/symbol_le.gif)
20
+ <var>n</var>.\n\n"
@@ -2,23 +2,23 @@
2
2
  :id: 424
3
3
  :name: Kakuro
4
4
  :url: http://projecteuler.net/problem=424
5
- :content: "\r\n<p align=\"center\">\r\n<img src=\"project/images/p_424_kakuro1.gif\"></p>\r\n<p>\r\nThe
5
+ :content: "![](/home/will/src/euler-manager/config/../data/images/p_424_kakuro1.gif)\n\nThe
6
6
  above is an example of a cryptic kakuro (also known as cross sums, or even sums
7
7
  cross) puzzle, with its final solution on the right. (The common rules of kakuro
8
8
  puzzles can be found easily on numerous internet sites. Other related information
9
- can also be currently found at <a href=\"http://krazydad.com/\">krazydad.com</a>
10
- whose author has provided the puzzle data for this challenge.)\r\n</p>\n<p>\r\n</p>\n<p>\r\nThe
11
- downloadable text file (<a href=\"project/kakuro200.txt\">kakuro200.txt</a>) contains
12
- the description of 200 such puzzles, a mix of 5x5 and 6x6 types. The first puzzle
13
- in the file is the above example which is coded as follows:\r\n</p>\r\n<p>\r\n6,X,X,(vCC),(vI),X,X,X,(hH),B,O,(vCA),(vJE),X,(hFE,vD),O,O,O,O,(hA),O,I,(hJC,vB),O,O,(hJC),H,O,O,O,X,X,X,(hJE),O,O,X\r\n</p>\r\n<p>\r\nThe
9
+ can also be currently found at [krazydad.com](http://krazydad.com/) whose author
10
+ has provided the puzzle data for this challenge.)\n\nThe downloadable text file
11
+ ( [kakuro200.txt](project/kakuro200.txt)) contains the description of 200 such puzzles,
12
+ a mix of 5x5 and 6x6 types. The first puzzle in the file is the above example which
13
+ is coded as follows:\n\n6,X,X,(vCC),(vI),X,X,X,(hH),B,O,(vCA),(vJE),X,(hFE,vD),O,O,O,O,(hA),O,I,(hJC,vB),O,O,(hJC),H,O,O,O,X,X,X,(hJE),O,O,X\n\nThe
14
14
  first character is a numerical digit indicating the size of the information grid.
15
15
  It would be either a 6 (for a 5x5 kakuro puzzle) or a 7 (for a 6x6 puzzle) followed
16
- by a comma (,). The extra top line and left column are needed to insert information.\r\n</p>\r\n<p>\r\nThe
16
+ by a comma (,). The extra top line and left column are needed to insert information.\n\nThe
17
17
  content of each cell is then described and followed by a comma, going left to right
18
- and starting with the top line.<br>\r\nX = Gray cell, not required to be filled
19
- by a digit.<br>\r\nO (upper case letter)= White empty cell to be filled by a digit.<br>\r\nA
18
+ and starting with the top line. \n\rX = Gray cell, not required to be filled by
19
+ a digit. \n\rO (upper case letter)= White empty cell to be filled by a digit. \n\rA
20
20
  = Or any one of the upper case letters from A to J to be replaced by its equivalent
21
- digit in the solved puzzle.<br>\r\n( ) = Location of the encrypted sums. Horizontal
21
+ digit in the solved puzzle. \n\r( ) = Location of the encrypted sums. Horizontal
22
22
  sums are preceded by a lower case \"h\" and vertical sums are preceded by a lower
23
23
  case \"v\". Those are followed by one or two upper case letters depending if the
24
24
  sum is a single digit or double digit one. For double digit sums, the first letter
@@ -26,12 +26,11 @@
26
26
  contain information for both a horizontal and a vertical sum, the first one is always
27
27
  for the horizontal sum and the two are separated by a comma within the same set
28
28
  of brackets, ex.: (hFE,vD). Each set of brackets is also immediately followed by
29
- a comma.\r\n</p>\r\n<p>\r\nThe description of the last cell is followed by a Carriage
30
- Return/Line Feed (CRLF) instead of a comma.\r\n</p>\r\n<p>\r\nThe required answer
31
- to each puzzle is based on the value of each letter necessary to arrive at the solution
32
- and according to the alphabetical order. As indicated under the example puzzle,
33
- its answer would be 8426039571. At least 9 out of the 10 encrypting letters are
34
- always part of the problem description. When only 9 are given, the missing one must
35
- be assigned the remaining digit.\r\n</p>\r\n<p>\r\nYou are given that the sum of
36
- the answers for the first 10 puzzles in the file is 64414157580.\r\n</p>\r\n<p>\r\nFind
37
- the sum of the answers for the 200 puzzles.\r\n</p>\r\n\r\n\r\n\r\n"
29
+ a comma.\n\nThe description of the last cell is followed by a Carriage Return/Line
30
+ Feed (CRLF) instead of a comma.\n\nThe required answer to each puzzle is based on
31
+ the value of each letter necessary to arrive at the solution and according to the
32
+ alphabetical order. As indicated under the example puzzle, its answer would be 8426039571.
33
+ At least 9 out of the 10 encrypting letters are always part of the problem description.
34
+ When only 9 are given, the missing one must be assigned the remaining digit.\n\nYou
35
+ are given that the sum of the answers for the first 10 puzzles in the file is 64414157580.\n\nFind
36
+ the sum of the answers for the 200 puzzles.\n\n"
@@ -2,15 +2,14 @@
2
2
  :id: 425
3
3
  :name: Prime connection
4
4
  :url: http://projecteuler.net/problem=425
5
- :content: "\r\n<p>\r\nTwo positive numbers A and B are said to be <i>connected</i>
6
- (denoted by \"A ↔ B\") if one of these conditions holds:<br>\r\n(1) A and B have
7
- the same length and differ in exactly one digit; for example, 123 ↔ 173.<br>\r\n(2)
8
- Adding one digit to the left of A (or B) makes B (or A); for example, 23 ↔ 223 and
9
- 123 ↔ 23.\r\n</p>\r\n<p>\r\nWe call a prime P a <i>2's relative</i> if there exists
10
- a chain of connected primes between 2 and P and no prime in the chain exceeds P.\r\n</p>\r\n<p>\r\nFor
11
- example, 127 is a 2's relative. One of the possible chains is shown below:<br>\r\n2
12
- 3 ↔ 13 ↔ 113 ↔ 103 ↔ 107 ↔ 127<br>\r\nHowever, 11 and 103 are not 2's relatives.\r\n</p>\r\n<p>\r\nLet
13
- F(N) be the sum of the primes <img src=\"images/symbol_le.gif\" width=\"10\" height=\"12\"
14
- alt=\"≤\" border=\"0\" style=\"vertical-align:middle;\"> N which are not 2's relatives.<br>\r\nWe
15
- can verify that F(10<sup>3</sup>) = 431 and F(10<sup>4</sup>) = 78728.\r\n</p>\r\n<p>\r\nFind
16
- F(10<sup>7</sup>).\r\n</p>\r\n"
5
+ :content: "Two positive numbers A and B are said to be _connected_ (denoted by \"A
6
+ ↔ B\") if one of these conditions holds: \n\r(1) A and B have the same length and
7
+ differ in exactly one digit; for example, 123 ↔ 173. \n\r(2) Adding one digit to
8
+ the left of A (or B) makes B (or A); for example, 23 ↔ 223 and 123 ↔ 23.\n\nWe call
9
+ a prime P a _2's relative_ if there exists a chain of connected primes between 2
10
+ and P and no prime in the chain exceeds P.\n\nFor example, 127 is a 2's relative.
11
+ One of the possible chains is shown below: \n\r2 ↔ 3 ↔ 13 ↔ 113 ↔ 103 ↔ 107 ↔ 127
12
+ \ \n\rHowever, 11 and 103 are not 2's relatives.\n\nLet F(N) be the sum of the primes
13
+ ![≤](/home/will/src/euler-manager/config/../data/images/symbol_le.gif) N which are
14
+ not 2's relatives. \n\rWe can verify that F(10<sup>3</sup>) = 431 and F(10<sup>4</sup>)
15
+ = 78728.\n\nFind F(10<sup>7</sup>).\n\n"
@@ -2,28 +2,27 @@
2
2
  :id: 426
3
3
  :name: Box-ball system
4
4
  :url: http://projecteuler.net/problem=426
5
- :content: "\r\n<p>\r\nConsider an infinite row of boxes. Some of the boxes contain
6
- a ball. For example, an initial configuration of 2 consecutive occupied boxes followed
7
- by 2 empty boxes, 2 occupied boxes, 1 empty box, and 2 occupied boxes can be denoted
5
+ :content: "Consider an infinite row of boxes. Some of the boxes contain a ball. For
6
+ example, an initial configuration of 2 consecutive occupied boxes followed by 2
7
+ empty boxes, 2 occupied boxes, 1 empty box, and 2 occupied boxes can be denoted
8
8
  by the sequence (2, 2, 2, 1, 2), in which the number of consecutive occupied and
9
- empty boxes appear alternately.\r\n</p>\r\n<p>\r\nA turn consists of moving each
10
- ball exactly once according to the following rule: Transfer the leftmost ball which
11
- has not been moved to the nearest empty box to its right.\r\n</p>\r\n<p>\r\nAfter
12
- one turn the sequence (2, 2, 2, 1, 2) becomes (2, 2, 1, 2, 3) as can be seen below;
13
- note that we begin the new sequence starting at the first occupied box.\r\n</p>\r\n\r\n<div
14
- align=\"center\">\r\n<img src=\"project/images/p_426_baxball1.gif\">\n</div>\r\n\r\n<p>\r\nA
15
- system like this is called a <b>Box-Ball System</b> or <b>BBS</b> for short.\r\n</p>\r\n<p>\r\nIt
16
- can be shown that after a sufficient number of turns, the system evolves to a state
9
+ empty boxes appear alternately.\n\nA turn consists of moving each ball exactly once
10
+ according to the following rule: Transfer the leftmost ball which has not been moved
11
+ to the nearest empty box to its right.\n\nAfter one turn the sequence (2, 2, 2,
12
+ 1, 2) becomes (2, 2, 1, 2, 3) as can be seen below; note that we begin the new sequence
13
+ starting at the first occupied box.\n\n ![](/home/will/src/euler-manager/config/../data/images/p_426_baxball1.gif)\n\nA
14
+ system like this is called a **Box-Ball System** or **BBS** for short.\n\nIt can
15
+ be shown that after a sufficient number of turns, the system evolves to a state
17
16
  where the consecutive numbers of occupied boxes is invariant. In the example below,
18
- the consecutive numbers of <b>occupied boxes</b> evolves to [1, 2, 3]; we shall
19
- call this the final state.\r\n</p>\r\n\r\n<div align=\"center\">\r\n<img src=\"project/images/p_426_baxball2.gif\">\n</div>\r\n\r\n<p>\r\nWe
20
- define the sequence {<var>t</var><sub><var>i</var></sub>}:<br></p>\n<ul>\n<li>\n<var>s</var><sub>0</sub>
21
- = 290797\r\n</li>\n<li>\n<var>s</var><sub><var>k</var>+1</sub> = <var>s</var><sub><var>k</var></sub><sup>2</sup>
22
- mod 50515093\r\n</li>\n<li>\n<var>t</var><sub><var>k</var></sub> = (<var>s</var><sub><var>k</var></sub>
23
- mod 64) + 1\r\n</li>\n</ul>\n<p>\r\nStarting from the initial configuration (<var>t</var><sub>0</sub>,
17
+ the consecutive numbers of **occupied boxes** evolves to [1, 2, 3]; we shall call
18
+ this the final state.\n\n ![](/home/will/src/euler-manager/config/../data/images/p_426_baxball2.gif)\n\nWe
19
+ define the sequence {<var>t</var><sub><var>i</var></sub>}:\n\n- <var>s</var><sub>0</sub>
20
+ = 290797\r\n- <var>s</var><sub><var>k</var>+1</sub> = <var>s</var><sub><var>k</var></sub><sup>2</sup>
21
+ mod 50515093\r\n- <var>t</var><sub><var>k</var></sub> = (<var>s</var><sub><var>k</var></sub>
22
+ mod 64) + 1\r\n\nStarting from the initial configuration (<var>t</var><sub>0</sub>,
24
23
  <var>t</var><sub>1</sub>, …, <var>t</var><sub>10</sub>), the final state becomes
25
- [1, 3, 10, 24, 51, 75].<br>\r\nStarting from the initial configuration (<var>t</var><sub>0</sub>,
24
+ [1, 3, 10, 24, 51, 75]. \n\rStarting from the initial configuration (<var>t</var><sub>0</sub>,
26
25
  <var>t</var><sub>1</sub>, …, <var>t</var><sub>10 000 000</sub>), find the final
27
- state.<br>\r\nGive as your answer the sum of the squares of the elements of the
28
- final state. For example, if the final state is [1, 2, 3] then 14 ( = 1<sup>2</sup>
29
- + 2<sup>2</sup> + 3<sup>2</sup>) is your answer.\r\n</p>\r\n"
26
+ state. \n\rGive as your answer the sum of the squares of the elements of the final
27
+ state. For example, if the final state is [1, 2, 3] then 14 ( = 1<sup>2</sup> +
28
+ 2<sup>2</sup> + 3<sup>2</sup>) is your answer.\n\n"
@@ -2,17 +2,15 @@
2
2
  :id: 427
3
3
  :name: n-sequences
4
4
  :url: http://projecteuler.net/problem=427
5
- :content: "\r\n<p>A sequence of integers S = {s<sub><var>i</var></sub>} is called
6
- an <var>n-sequence</var> if it has <var>n</var> elements and each element s<sub><var>i</var></sub>
7
- satisfies 1 <img src=\"images/symbol_le.gif\" width=\"10\" height=\"12\" alt=\"≤\"
8
- border=\"0\" style=\"vertical-align:middle;\"> s<sub><var>i</var></sub><img src=\"images/symbol_le.gif\"
9
- width=\"10\" height=\"12\" alt=\"≤\" border=\"0\" style=\"vertical-align:middle;\"><var>n</var>.
5
+ :content: "A sequence of integers S = {s<sub><var>i</var></sub>} is called an <var>n-sequence</var>
6
+ if it has <var>n</var> elements and each element s<sub><var>i</var></sub> satisfies
7
+ 1 ![≤](/home/will/src/euler-manager/config/../data/images/symbol_le.gif) s<sub><var>i</var></sub>
8
+ ![≤](/home/will/src/euler-manager/config/../data/images/symbol_le.gif) <var>n</var>.
10
9
  Thus there are <var>n</var><sup><var>n</var></sup> distinct <var>n</var>-sequences
11
- in total.\r\nFor example, the sequence S = {1, 5, 5, 10, 7, 7, 7, 2, 3, 7} is a
12
- 10-sequence.</p>\r\n\r\n<p>For any sequence S, let L(S) be the length of the longest
13
- contiguous subsequence of S with the same value.\r\nFor example, for the given sequence
14
- S above, L(S) = 3, because of the three consecutive 7's.</p>\r\n\r\n<p>Let <var>f</var>(<var>n</var>)
15
- = <img src=\"images/symbol_sum.gif\" width=\"11\" height=\"14\" alt=\"∑\" border=\"0\"
16
- style=\"vertical-align:middle;\"> L(S) for all <var>n</var>-sequences S.</p>\r\n\r\n<p>For
17
- example, <var>f</var>(3) = 45, <var>f</var>(7) = 1403689 and <var>f</var>(11) =
18
- 481496895121.</p>\r\n\r\n<p>Find <var>f</var>(7 500 000) mod 1 000 000 009.</p>\r\n\r\n\r\n"
10
+ in total.\rFor example, the sequence S = {1, 5, 5, 10, 7, 7, 7, 2, 3, 7} is a 10-sequence.\n\nFor
11
+ any sequence S, let L(S) be the length of the longest contiguous subsequence of
12
+ S with the same value.\rFor example, for the given sequence S above, L(S) = 3, because
13
+ of the three consecutive 7's.\n\nLet <var>f</var>(<var>n</var>) = ![∑](/home/will/src/euler-manager/config/../data/images/symbol_sum.gif)
14
+ L(S) for all <var>n</var>-sequences S.\n\nFor example, <var>f</var>(3) = 45, <var>f</var>(7)
15
+ = 1403689 and <var>f</var>(11) = 481496895121.\n\nFind <var>f</var>(7 500 000) mod
16
+ 1 000 000 009.\n\n"
@@ -2,31 +2,27 @@
2
2
  :id: 428
3
3
  :name: Necklace of circles
4
4
  :url: http://projecteuler.net/problem=428
5
- :content: "\r\n<p>Let <var>a</var>, <var>b</var> and <var>c</var> be positive numbers.<br>\r\nLet
5
+ :content: "Let <var>a</var>, <var>b</var> and <var>c</var> be positive numbers. \n\rLet
6
6
  W, X, Y, Z be four collinear points where |WX| = <var>a</var>, |XY| = <var>b</var>,
7
- |YZ| = <var>c</var> and |WZ| = <var>a</var> + <var>b</var> + <var>c</var>.<br>\r\nLet
8
- C<sub>in</sub> be the circle having the diameter XY.<br>\r\nLet C<sub>out</sub>
9
- be the circle having the diameter WZ.<br></p>\r\n\r\n<p>\r\nThe triplet (<var>a</var>,
10
- <var>b</var>, <var>c</var>) is called a <em>necklace triplet</em> if you can place
11
- <var>k</var> <img src=\"images/symbol_ge.gif\" width=\"10\" height=\"12\" alt=\"≥\"
12
- border=\"0\" style=\"vertical-align:middle;\"> 3 distinct circles C<sub>1</sub>,
13
- C<sub>2</sub>, ..., C<sub><var>k</var></sub> such that:\r\n</p>\n<ul>\n<li>C<sub><var>i</var></sub>
14
- has no common interior points with any C<sub><var>j</var></sub> for 1 <img src=\"images/symbol_le.gif\"
15
- width=\"10\" height=\"12\" alt=\"≤\" border=\"0\" style=\"vertical-align:middle;\"><var>i</var>,
16
- <var>j</var> <img src=\"images/symbol_le.gif\" width=\"10\" height=\"12\" alt=\"≤\"
17
- border=\"0\" style=\"vertical-align:middle;\"><var>k</var> and <var>i</var> <img
18
- src=\"images/symbol_ne.gif\" width=\"11\" height=\"10\" alt=\"≠\" border=\"0\" style=\"vertical-align:middle;\"><var>j</var>,\r\n</li>\n<li>C<sub><var>i</var></sub>
19
- is tangent to both C<sub>in</sub> and C<sub>out</sub> for 1 <img src=\"images/symbol_le.gif\"
20
- width=\"10\" height=\"12\" alt=\"≤\" border=\"0\" style=\"vertical-align:middle;\"><var>i</var>
21
- <img src=\"images/symbol_le.gif\" width=\"10\" height=\"12\" alt=\"≤\" border=\"0\"
22
- style=\"vertical-align:middle;\"><var>k</var>,\r\n</li>\n<li>C<sub><var>i</var></sub>
23
- is tangent to C<sub><var>i</var>+1</sub> for 1 <img src=\"images/symbol_le.gif\"
24
- width=\"10\" height=\"12\" alt=\"≤\" border=\"0\" style=\"vertical-align:middle;\"><var>i</var>
25
- k, and\r\n</li>\n<li>C<sub><var>k</var></sub> is tangent to C<sub>1</sub>.\r\n</li>\n</ul>\n<p>\r\nFor
26
- example, (5, 5, 5) and (4, 3, 21) are necklace triplets, while it can be shown that
27
- (2, 2, 5) is not.\r\n</p>\r\n<p align=\"center\"><img src=\"project/images/p428_necklace.png\"></p>\r\n\r\n<p>\r\nLet
7
+ |YZ| = <var>c</var> and |WZ| = <var>a</var> + <var>b</var> + <var>c</var>. \n\rLet
8
+ C<sub>in</sub> be the circle having the diameter XY. \n\rLet C<sub>out</sub> be
9
+ the circle having the diameter WZ.\n\nThe triplet (<var>a</var>, <var>b</var>, <var>c</var>)
10
+ is called a _necklace triplet_ if you can place <var>k</var> ![≥](/home/will/src/euler-manager/config/../data/images/symbol_ge.gif)
11
+ 3 distinct circles C<sub>1</sub>, C<sub>2</sub>, ..., C<sub><var>k</var></sub> such
12
+ that:\n\n- C<sub><var>i</var></sub> has no common interior points with any C<sub><var>j</var></sub>
13
+ for 1 ![≤](/home/will/src/euler-manager/config/../data/images/symbol_le.gif) <var>i</var>,
14
+ <var>j</var> ![≤](/home/will/src/euler-manager/config/../data/images/symbol_le.gif)
15
+ <var>k</var> and <var>i</var> ![≠](/home/will/src/euler-manager/config/../data/images/symbol_ne.gif)
16
+ <var>j</var>,\r\n- C<sub><var>i</var></sub> is tangent to both C<sub>in</sub> and
17
+ C<sub>out</sub> for 1 ![≤](/home/will/src/euler-manager/config/../data/images/symbol_le.gif)
18
+ <var>i</var> ![≤](/home/will/src/euler-manager/config/../data/images/symbol_le.gif)
19
+ <var>k</var>,\r\n- C<sub><var>i</var></sub> is tangent to C<sub><var>i</var>+1</sub>
20
+ for 1 ![≤](/home/will/src/euler-manager/config/../data/images/symbol_le.gif) <var>i</var>
21
+ k, and\r\n- C<sub><var>k</var></sub> is tangent to C<sub>1</sub>.\r\n\nFor example,
22
+ (5, 5, 5) and (4, 3, 21) are necklace triplets, while it can be shown that (2, 2,
23
+ 5) is not.\n\n![](/home/will/src/euler-manager/config/../data/images/p428_necklace.png)\n\nLet
28
24
  T(<var>n</var>) be the number of necklace triplets (<var>a</var>, <var>b</var>,
29
25
  <var>c</var>) such that <var>a</var>, <var>b</var> and <var>c</var> are positive
30
- integers, and <var>b</var> <img src=\"images/symbol_le.gif\" width=\"10\" height=\"12\"
31
- alt=\"≤\" border=\"0\" style=\"vertical-align:middle;\"><var>n</var>.\r\nFor example,
32
- T(1) = 9, T(20) = 732 and T(3000) = 438106.\r\n</p>\r\n<p>\r\nFind T(1 000 000 000).\r\n</p>\r\n"
26
+ integers, and <var>b</var> ![≤](/home/will/src/euler-manager/config/../data/images/symbol_le.gif)
27
+ <var>n</var>.\rFor example, T(1) = 9, T(20) = 732 and T(3000) = 438106.\n\nFind
28
+ T(1 000 000 000).\n\n"
@@ -2,9 +2,9 @@
2
2
  :id: 429
3
3
  :name: Sum of squares of unitary divisors
4
4
  :url: http://projecteuler.net/problem=429
5
- :content: "\r\n<p>\r\nA unitary divisor <var>d</var> of a number <var>n</var> is a
6
- divisor of <var>n</var> that has the property gcd(<var>d, n/d</var>) = 1.<br>\r\nThe
7
- unitary divisors of 4! = 24 are 1, 3, 8 and 24.<br>\r\nThe sum of their squares
8
- is 1<sup>2</sup> + 3<sup>2</sup> + 8<sup>2</sup> + 24<sup>2</sup> = 650.\r\n</p>\r\n<p>\r\nLet
9
- S(<var>n</var>) represent the sum of the squares of the unitary divisors of <var>n</var>.
10
- Thus S(4!)=650.\r\n</p>\r\n<p>\r\nFind S(100 000 000!) modulo 1 000 000 009.\r\n</p>\r\n"
5
+ :content: "A unitary divisor <var>d</var> of a number <var>n</var> is a divisor of
6
+ <var>n</var> that has the property gcd(<var>d, n/d</var>) = 1. \n\rThe unitary
7
+ divisors of 4! = 24 are 1, 3, 8 and 24. \n\rThe sum of their squares is 1<sup>2</sup>
8
+ + 3<sup>2</sup> + 8<sup>2</sup> + 24<sup>2</sup> = 650.\n\nLet S(<var>n</var>) represent
9
+ the sum of the squares of the unitary divisors of <var>n</var>. Thus S(4!)=650.\n\nFind
10
+ S(100 000 000!) modulo 1 000 000 009.\n\n"
data/data/problems/43.yml CHANGED
@@ -2,16 +2,18 @@
2
2
  :id: 43
3
3
  :name: Sub-string divisibility
4
4
  :url: http://projecteuler.net/problem=43
5
- :content: "\r\n<p>The number, 1406357289, is a 0 to 9 pandigital number because it
6
- is made up of each of the digits 0 to 9 in some order, but it also has a rather
7
- interesting sub-string divisibility property.</p>\r\n<p>Let <i>d</i><sub>1</sub>
8
- be the 1<sup>st</sup> digit, <i>d</i><sub>2</sub> be the 2<sup>nd</sup> digit, and
9
- so on. In this way, we note the following:</p>\r\n<ul>\n<li>\n<i>d</i><sub>2</sub><i>d</i><sub>3</sub><i>d</i><sub>4</sub>=406
10
- is divisible by 2</li>\r\n<li>\n<i>d</i><sub>3</sub><i>d</i><sub>4</sub><i>d</i><sub>5</sub>=063
11
- is divisible by 3</li>\r\n<li>\n<i>d</i><sub>4</sub><i>d</i><sub>5</sub><i>d</i><sub>6</sub>=635
12
- is divisible by 5</li>\r\n<li>\n<i>d</i><sub>5</sub><i>d</i><sub>6</sub><i>d</i><sub>7</sub>=357
13
- is divisible by 7</li>\r\n<li>\n<i>d</i><sub>6</sub><i>d</i><sub>7</sub><i>d</i><sub>8</sub>=572
14
- is divisible by 11</li>\r\n<li>\n<i>d</i><sub>7</sub><i>d</i><sub>8</sub><i>d</i><sub>9</sub>=728
15
- is divisible by 13</li>\r\n<li>\n<i>d</i><sub>8</sub><i>d</i><sub>9</sub><i>d</i><sub>10</sub>=289
16
- is divisible by 17</li>\r\n</ul>\n<p>Find the sum of all 0 to 9 pandigital numbers
17
- with this property.</p>\r\n\r\n"
5
+ :content: |+
6
+ The number, 1406357289, is a 0 to 9 pandigital number because it is made up of each of the digits 0 to 9 in some order, but it also has a rather interesting sub-string divisibility property.
7
+
8
+ Let _d_<sub>1</sub> be the 1<sup>st</sup> digit, _d_<sub>2</sub> be the 2<sup>nd</sup> digit, and so on. In this way, we note the following:
9
+
10
+ - _d_<sub>2</sub>_d_<sub>3</sub>_d_<sub>4</sub>=406 is divisible by 2
11
+ - _d_<sub>3</sub>_d_<sub>4</sub>_d_<sub>5</sub>=063 is divisible by 3
12
+ - _d_<sub>4</sub>_d_<sub>5</sub>_d_<sub>6</sub>=635 is divisible by 5
13
+ - _d_<sub>5</sub>_d_<sub>6</sub>_d_<sub>7</sub>=357 is divisible by 7
14
+ - _d_<sub>6</sub>_d_<sub>7</sub>_d_<sub>8</sub>=572 is divisible by 11
15
+ - _d_<sub>7</sub>_d_<sub>8</sub>_d_<sub>9</sub>=728 is divisible by 13
16
+ - _d_<sub>8</sub>_d_<sub>9</sub>_d_<sub>10</sub>=289 is divisible by 17
17
+
18
+ Find the sum of all 0 to 9 pandigital numbers with this property.
19
+
@@ -2,19 +2,17 @@
2
2
  :id: 430
3
3
  :name: Range flips
4
4
  :url: http://projecteuler.net/problem=430
5
- :content: "\r\n<p><var>N</var> disks are placed in a row, indexed 1 to <var>N</var>
6
- from left to right.<br>\r\nEach disk has a black side and white side. Initially
7
- all disks show their white side.</p>\r\n\r\n<p>At each turn, two, not necessarily
8
- distinct, integers <var>A</var> and <var>B</var> between 1 and <var>N</var> (inclusive)
9
- are chosen uniformly at random.<br>\r\nAll disks with an index from <var>A</var>
10
- to <var>B</var> (inclusive) are flipped.</p>\r\n\r\n<p>The following example shows
11
- the case <var>N</var> = 8. At the first turn <var>A</var> = 5 and <var>B</var> =
12
- 2, and at the second turn <var>A</var> = 4 and <var>B</var> = 6.</p>\r\n\r\n<p align=\"center\"><img
13
- src=\"project/images/p_430_flips.gif\"></p>\r\n\r\n<p>Let E(<var>N</var>, <var>M</var>)
14
- be the expected number of disks that show their white side after <var>M</var> turns.<br>\r\nWe
15
- can verify that E(3, 1) = 10/9, E(3, 2) = 5/3, E(10, 4) <img src=\"images/symbol_asymp.gif\"
16
- width=\"11\" height=\"9\" alt=\"≈\" border=\"0\" style=\"vertical-align:middle;\">
17
- 5.157 and E(100, 10) <img src=\"images/symbol_asymp.gif\" width=\"11\" height=\"9\"
18
- alt=\"≈\" border=\"0\" style=\"vertical-align:middle;\"> 51.893.</p>\r\n\r\n<p>Find
19
- E(10<sup>10</sup>, 4000).<br>\r\nGive your answer rounded to 2 decimal places behind
20
- the decimal point.</p>\r\n"
5
+ :content: "<var>N</var> disks are placed in a row, indexed 1 to <var>N</var> from
6
+ left to right. \n\rEach disk has a black side and white side. Initially all disks
7
+ show their white side.\n\nAt each turn, two, not necessarily distinct, integers
8
+ <var>A</var> and <var>B</var> between 1 and <var>N</var> (inclusive) are chosen
9
+ uniformly at random. \n\rAll disks with an index from <var>A</var> to <var>B</var>
10
+ (inclusive) are flipped.\n\nThe following example shows the case <var>N</var> =
11
+ 8. At the first turn <var>A</var> = 5 and <var>B</var> = 2, and at the second turn
12
+ <var>A</var> = 4 and <var>B</var> = 6.\n\n![](/home/will/src/euler-manager/config/../data/images/p_430_flips.gif)\n\nLet
13
+ E(<var>N</var>, <var>M</var>) be the expected number of disks that show their white
14
+ side after <var>M</var> turns. \n\rWe can verify that E(3, 1) = 10/9, E(3, 2) =
15
+ 5/3, E(10, 4) ![≈](/home/will/src/euler-manager/config/../data/images/symbol_asymp.gif)
16
+ 5.157 and E(100, 10) ![≈](/home/will/src/euler-manager/config/../data/images/symbol_asymp.gif)
17
+ 51.893.\n\nFind E(10<sup>10</sup>, 4000). \n\rGive your answer rounded to 2 decimal
18
+ places behind the decimal point.\n\n"
data/data/problems/44.yml CHANGED
@@ -2,15 +2,12 @@
2
2
  :id: 44
3
3
  :name: Pentagon numbers
4
4
  :url: http://projecteuler.net/problem=44
5
- :content: "\r\n<p>Pentagonal numbers are generated by the formula, P<sub><var>n</var></sub>=<var>n</var>(3<var>n</var><img
6
- src=\"images/symbol_minus.gif\" width=\"9\" height=\"3\" alt=\"−\" border=\"0\"
7
- style=\"vertical-align:middle;\">1)/2. The first ten pentagonal numbers are:</p>\r\n<p
8
- style=\"text-align:center;\">1, 5, 12, 22, 35, 51, 70, 92, 117, 145, ...</p>\r\n<p>It
9
- can be seen that P<sub>4</sub> + P<sub>7</sub> = 22 + 70 = 92 = P<sub>8</sub>. However,
10
- their difference, 70 <img src=\"images/symbol_minus.gif\" width=\"9\" height=\"3\"
11
- alt=\"−\" border=\"0\" style=\"vertical-align:middle;\"> 22 = 48, is not pentagonal.</p>\r\n<p>Find
12
- the pair of pentagonal numbers, P<sub><var>j</var></sub> and P<sub><var>k</var></sub>,
13
- for which their sum and difference are pentagonal and D = |P<sub><var>k</var></sub><img
14
- src=\"images/symbol_minus.gif\" width=\"9\" height=\"3\" alt=\"−\" border=\"0\"
15
- style=\"vertical-align:middle;\"> P<sub><var>j</var></sub>| is minimised; what is
16
- the value of D?</p>\r\n"
5
+ :content: |+
6
+ Pentagonal numbers are generated by the formula, P<sub><var>n</var></sub>=<var>n</var>(3<var>n</var> ![−](/home/will/src/euler-manager/config/../data/images/symbol_minus.gif)1)/2. The first ten pentagonal numbers are:
7
+
8
+ 1, 5, 12, 22, 35, 51, 70, 92, 117, 145, ...
9
+
10
+ It can be seen that P<sub>4</sub> + P<sub>7</sub> = 22 + 70 = 92 = P<sub>8</sub>. However, their difference, 70 ![−](/home/will/src/euler-manager/config/../data/images/symbol_minus.gif) 22 = 48, is not pentagonal.
11
+
12
+ Find the pair of pentagonal numbers, P<sub><var>j</var></sub> and P<sub><var>k</var></sub>, for which their sum and difference are pentagonal and D = |P<sub><var>k</var></sub> ![−](/home/will/src/euler-manager/config/../data/images/symbol_minus.gif) P<sub><var>j</var></sub>| is minimised; what is the value of D?
13
+
data/data/problems/45.yml CHANGED
@@ -2,14 +2,14 @@
2
2
  :id: 45
3
3
  :name: Triangular, pentagonal, and hexagonal
4
4
  :url: http://projecteuler.net/problem=45
5
- :content: "\r\n<p>Triangle, pentagonal, and hexagonal numbers are generated by the
6
- following formulae:</p>\r\n<table>\n<tr>\n<td>Triangle</td>\r\n<td> </td>\r\n<td>T<sub><i>n</i></sub>=<i>n</i>(<i>n</i>+1)/2</td>\r\n<td> </td>\r\n<td>1,
7
- 3, 6, 10, 15, ...</td>\r\n</tr>\n<tr>\n<td>Pentagonal</td>\r\n<td> </td>\r\n<td>P<sub><i>n</i></sub>=<i>n</i>(3<i>n</i><img
8
- src=\"images/symbol_minus.gif\" width=\"9\" height=\"3\" alt=\"−\" border=\"0\"
9
- style=\"vertical-align:middle;\">1)/2</td>\r\n<td> </td>\r\n<td>1, 5, 12, 22, 35,
10
- ...</td>\r\n</tr>\n<tr>\n<td>Hexagonal</td>\r\n<td> </td>\r\n<td>H<sub><i>n</i></sub>=<i>n</i>(2<i>n</i><img
11
- src=\"images/symbol_minus.gif\" width=\"9\" height=\"3\" alt=\"−\" border=\"0\"
12
- style=\"vertical-align:middle;\">1)</td>\r\n<td> </td>\r\n<td>1, 6, 15, 28, 45,
13
- ...</td>\r\n</tr>\n</table>\n<p>It can be verified that T<sub>285</sub> = P<sub>165</sub>
14
- = H<sub>143</sub> = 40755.</p>\r\n<p>Find the next triangle number that is also
15
- pentagonal and hexagonal.</p>\r\n\r\n"
5
+ :content: |+
6
+ Triangle, pentagonal, and hexagonal numbers are generated by the following formulae:
7
+
8
+ | Triangle |   | T<sub><i>n</i></sub>=_n_(_n_+1)/2 |   | 1, 3, 6, 10, 15, ... |
9
+ | Pentagonal |   | P<sub><i>n</i></sub>=_n_(3_n_ ![−](/home/will/src/euler-manager/config/../data/images/symbol_minus.gif)1)/2 |   | 1, 5, 12, 22, 35, ... |
10
+ | Hexagonal |   | H<sub><i>n</i></sub>=_n_(2_n_ ![−](/home/will/src/euler-manager/config/../data/images/symbol_minus.gif)1) |   | 1, 6, 15, 28, 45, ... |
11
+
12
+ It can be verified that T<sub>285</sub> = P<sub>165</sub> = H<sub>143</sub> = 40755.
13
+
14
+ Find the next triangle number that is also pentagonal and hexagonal.
15
+
data/data/problems/46.yml CHANGED
@@ -2,17 +2,12 @@
2
2
  :id: 46
3
3
  :name: Goldbach's other conjecture
4
4
  :url: http://projecteuler.net/problem=46
5
- :content: "\r\n<p>It was proposed by Christian Goldbach that every odd composite number
6
- can be written as the sum of a prime and twice a square.</p>\r\n<p style=\"margin-left:10px;\">9
7
- = 7 + 2<img src=\"images/symbol_times.gif\" width=\"9\" height=\"9\" alt=\"×\" border=\"0\"
8
- style=\"vertical-align:middle;\">1<sup>2</sup><br>\r\n15 = 7 + 2<img src=\"images/symbol_times.gif\"
9
- width=\"9\" height=\"9\" alt=\"×\" border=\"0\" style=\"vertical-align:middle;\">2<sup>2</sup><br>\r\n21
10
- = 3 + 2<img src=\"images/symbol_times.gif\" width=\"9\" height=\"9\" alt=\"×\" border=\"0\"
11
- style=\"vertical-align:middle;\">3<sup>2</sup><br>\r\n25 = 7 + 2<img src=\"images/symbol_times.gif\"
12
- width=\"9\" height=\"9\" alt=\"×\" border=\"0\" style=\"vertical-align:middle;\">3<sup>2</sup><br>\r\n27
13
- = 19 + 2<img src=\"images/symbol_times.gif\" width=\"9\" height=\"9\" alt=\"×\"
14
- border=\"0\" style=\"vertical-align:middle;\">2<sup>2</sup><br>\r\n33 = 31 + 2<img
15
- src=\"images/symbol_times.gif\" width=\"9\" height=\"9\" alt=\"×\" border=\"0\"
16
- style=\"vertical-align:middle;\">1<sup>2</sup></p>\r\n<p>It turns out that the conjecture
17
- was false.</p>\r\n<p>What is the smallest odd composite that cannot be written as
18
- the sum of a prime and twice a square?</p>\r\n\r\n"
5
+ :content: "It was proposed by Christian Goldbach that every odd composite number can
6
+ be written as the sum of a prime and twice a square.\n\n9 = 7 + 2 ![×](/home/will/src/euler-manager/config/../data/images/symbol_times.gif)1<sup>2</sup>
7
+ \ \n\r15 = 7 + 2 ![×](/home/will/src/euler-manager/config/../data/images/symbol_times.gif)2<sup>2</sup>
8
+ \ \n\r21 = 3 + 2 ![×](/home/will/src/euler-manager/config/../data/images/symbol_times.gif)3<sup>2</sup>
9
+ \ \n\r25 = 7 + 2 ![×](/home/will/src/euler-manager/config/../data/images/symbol_times.gif)3<sup>2</sup>
10
+ \ \n\r27 = 19 + 2 ![×](/home/will/src/euler-manager/config/../data/images/symbol_times.gif)2<sup>2</sup>
11
+ \ \n\r33 = 31 + 2 ![×](/home/will/src/euler-manager/config/../data/images/symbol_times.gif)1<sup>2</sup>\n\nIt
12
+ turns out that the conjecture was false.\n\nWhat is the smallest odd composite that
13
+ cannot be written as the sum of a prime and twice a square?\n\n"