euler-manager 0.0.5 → 0.0.6

Sign up to get free protection for your applications and to get access to all the features.
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"