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,31 +2,29 @@
2
2
  :id: 236
3
3
  :name: Luxury Hampers
4
4
  :url: http://projecteuler.net/problem=236
5
- :content: "\r\n<style type=\"text/css\">\r\ntable.p236, table.p236 th, table.p236
5
+ :content: "<style type=\"text/css\"><![CDATA[\r\ntable.p236, table.p236 th, table.p236
6
6
  td {\r\n border-width: 1px 1px 1px 1px;\r\n border-style: solid solid solid solid;\r\n
7
7
  \ border-color: black black black black;\r\n text-align:right;\r\n -moz-border-radius:
8
8
  0px 0px 0px 0px;\r\n}\r\ntable.p236 {\r\n border-spacing: 1px;\r\n border-collapse:
9
9
  separate;\r\n background-color: rgb(224,237,252);\r\n}\r\ntable.p236 th, table.p236
10
10
  td {\r\n padding: 1px 6px 1px 6px;\r\n}\r\ntable.p236 th { background-color: rgb(193,218,249);
11
- }\r\ntable.p236 td { background-color: rgb(255,255,255); }\r\n</style>\n<p>Suppliers
12
- 'A' and 'B' provided the following numbers of products for the luxury hamper market:</p>\r\n\r\n<p></p>\n<center><table
13
- class=\"p236\">\n<tr>\n<th>Product</th>\n<th style=\"text-align:center\">'A'</th>\n<th
14
- style=\"text-align:center\">'B'</th>\n</tr>\n<tr>\n<td>Beluga Caviar</td>\n<td>5248</td>\n<td>640</td>\n</tr>\n<tr>\n<td>Christmas
15
- Cake</td>\n<td>1312</td>\n<td>1888</td>\n</tr>\n<tr>\n<td>Gammon Joint</td>\n<td>2624</td>\n<td>3776</td>\n</tr>\n<tr>\n<td>Vintage
16
- Port</td>\n<td>5760</td>\n<td>3776</td>\n</tr>\n<tr>\n<td>Champagne Truffles</td>\n<td>3936</td>\n<td>5664</td>\n</tr>\n</table></center>\r\n\r\n<p>Although
11
+ }\r\ntable.p236 td { background-color: rgb(255,255,255); }\r\n]]></style>\n\nSuppliers
12
+ 'A' and 'B' provided the following numbers of products for the luxury hamper market:\n\n<center><table
13
+ class=\"p236\">\r\n<tr>\n<th>Product</th>\n<th style=\"text-align:center\">'A'</th>\n<th
14
+ style=\"text-align:center\">'B'</th>\n</tr>\r\n<tr>\n<td>Beluga Caviar</td>\n<td>5248</td>\n<td>640</td>\n</tr>\r\n<tr>\n<td>Christmas
15
+ Cake</td>\n<td>1312</td>\n<td>1888</td>\n</tr>\r\n<tr>\n<td>Gammon Joint</td>\n<td>2624</td>\n<td>3776</td>\n</tr>\r\n<tr>\n<td>Vintage
16
+ Port</td>\n<td>5760</td>\n<td>3776</td>\n</tr>\r\n<tr>\n<td>Champagne Truffles</td>\n<td>3936</td>\n<td>5664</td>\n</tr>\r\n</table></center>\n\nAlthough
17
17
  the suppliers try very hard to ship their goods in perfect condition, there is inevitably
18
- some spoilage - <i>i.e.</i> products gone bad.</p>\r\n\r\n<p>The suppliers compare
19
- their performance using two types of statistic:</p>\n<ul>\n<li>The five <i>per-product
20
- spoilage rates</i> for each supplier are equal to the number of products gone bad
21
- divided by the number of products supplied, for each of the five products in turn.</li>\r\n
22
- \ <li>The <i>overall spoilage rate</i> for each supplier is equal to the total number
23
- of products gone bad divided by the total number of products provided by that supplier.</li>\n</ul>\n<p>To
24
- their surprise, the suppliers found that each of the five per-product spoilage rates
25
- was worse (higher) for 'B' than for 'A' by the same factor (ratio of spoilage rates),
26
- <var>m</var>&gt;1; and yet, paradoxically, the overall spoilage rate was worse for
27
- 'A' than for 'B', also by a factor of <var>m</var>.</p>\r\n\r\n<p>There are thirty-five
28
- <var>m</var><img src=\"images/symbol_gt.gif\" width=\"10\" height=\"10\" alt=\"&gt;\"
29
- border=\"0\" style=\"vertical-align:middle;\">1 for which this surprising result
30
- could have occurred, the smallest of which is 1476/1475.</p>\r\n\r\n<p>What's the
31
- largest possible value of <var>m</var>?<br>\r\nGive your answer as a fraction reduced
32
- to its lowest terms, in the form <var>u</var>/<var>v</var>.</p>\r\n"
18
+ some spoilage - _i.e._ products gone bad.\n\nThe suppliers compare their performance
19
+ using two types of statistic:\n\n- The five _per-product spoilage rates_ for each
20
+ supplier are equal to the number of products gone bad divided by the number of products
21
+ supplied, for each of the five products in turn.\n- The _overall spoilage rate_
22
+ for each supplier is equal to the total number of products gone bad divided by the
23
+ total number of products provided by that supplier.\n\nTo their surprise, the suppliers
24
+ found that each of the five per-product spoilage rates was worse (higher) for 'B'
25
+ than for 'A' by the same factor (ratio of spoilage rates), <var>m</var>>1; and yet,
26
+ paradoxically, the overall spoilage rate was worse for 'A' than for 'B', also by
27
+ a factor of <var>m</var>.\n\nThere are thirty-five <var>m</var> ![>](/home/will/src/euler-manager/config/../data/images/symbol_gt.gif)1
28
+ for which this surprising result could have occurred, the smallest of which is 1476/1475.\n\nWhat's
29
+ the largest possible value of <var>m</var>? \n\rGive your answer as a fraction
30
+ reduced to its lowest terms, in the form <var>u</var>/<var>v</var>.\n\n"
@@ -2,12 +2,17 @@
2
2
  :id: 237
3
3
  :name: Tours on a 4 x n playing board
4
4
  :url: http://projecteuler.net/problem=237
5
- :content: "\r\n<p>Let T(<i>n</i>) be the number of tours over a 4 <img src=\"images/symbol_times.gif\"
6
- width=\"9\" height=\"9\" alt=\"×\" border=\"0\" style=\"vertical-align:middle;\"><i>n</i>
7
- playing board such that:</p>\r\n<ul>\n<li>The tour starts in the top left corner.</li>\r\n<li>The
8
- tour consists of moves that are up, down, left, or right one square.</li>\r\n<li>The
9
- tour visits each square exactly once.</li>\r\n<li>The tour ends in the bottom left
10
- corner.</li>\r\n</ul>\n<p>The diagram shows one tour over a 4 <img src=\"images/symbol_times.gif\"
11
- width=\"9\" height=\"9\" alt=\"×\" border=\"0\" style=\"vertical-align:middle;\">
12
- 10 board:</p>\r\n\r\n<div style=\"text-align:center;\">\r\n<img src=\"project/images/p_237.gif\"
13
- alt=\"\">\n</div>\r\n\r\n<p>T(10) is 2329. What is T(10<sup>12</sup>) modulo 10<sup>8</sup>?</p>\r\n"
5
+ :content: |+
6
+ Let T(_n_) be the number of tours over a 4 ![×](/home/will/src/euler-manager/config/../data/images/symbol_times.gif) _n_ playing board such that:
7
+
8
+ - The tour starts in the top left corner.
9
+ - The tour consists of moves that are up, down, left, or right one square.
10
+ - The tour visits each square exactly once.
11
+ - The tour ends in the bottom left corner.
12
+
13
+ The diagram shows one tour over a 4 ![×](/home/will/src/euler-manager/config/../data/images/symbol_times.gif) 10 board:
14
+
15
+ ![](/home/will/src/euler-manager/config/../data/images/p_237.gif)
16
+
17
+ T(10) is 2329. What is T(10<sup>12</sup>) modulo 10<sup>8</sup>?
18
+
@@ -2,41 +2,29 @@
2
2
  :id: 238
3
3
  :name: Infinite string tour
4
4
  :url: http://projecteuler.net/problem=238
5
- :content: "\r\n<style type=\"text/css\">\r\ntable.p238 td { padding: 0px 3px 0px 3px;
6
- }\r\n</style>\n<p>Create a sequence of numbers using the \"Blum Blum Shub\" pseudo-random
7
- number generator:</p>\r\n\r\n<center><table class=\"p238\">\n<tr>\n<td style=\"text-align:right\">\n<var>s</var><sub>0</sub>\n</td>\r\n
8
- \ <td>=</td>\r\n <td>14025256</td>\r\n </tr>\n<tr>\n<td>\n<var>s</var><sub><var>n</var>+1</sub>\n</td>\r\n
5
+ :content: "<style type=\"text/css\"><![CDATA[\r\ntable.p238 td { padding: 0px 3px
6
+ 0px 3px; }\r\n]]></style>\n\nCreate a sequence of numbers using the \"Blum Blum
7
+ Shub\" pseudo-random number generator:\n\n<center><table class=\"p238\">\r\n <tr>\r\n
8
+ \ <td style=\"text-align:right\">\n<var>s</var><sub>0</sub>\n</td>\r\n <td>=</td>\r\n
9
+ \ <td>14025256</td>\r\n </tr>\n<tr>\r\n <td>\n<var>s</var><sub><var>n</var>+1</sub>\n</td>\r\n
9
10
  \ <td>=</td>\r\n <td>\n<var>s</var><sub><var>n</var></sub><sup>2</sup> mod
10
- 20300713</td>\r\n </tr>\n</table></center>\r\n\r\n<p>Concatenate these numbers
11
- <var>s</var><sub>0</sub><var>s</var><sub>1</sub><var>s</var><sub>2</sub>… to create
12
- a string <var>w</var> of infinite length.<br>\r\nThen, <var>w</var> = <span style=\"font-family:courier
13
- new;font-size:12pt;color:#0000ff;\">14025256741014958470038053646…</span></p>\r\n\r\n<p>For
11
+ 20300713</td>\r\n </tr>\r\n</table></center>\n\nConcatenate these numbers  <var>s</var><sub>0</sub><var>s</var><sub>1</sub><var>s</var><sub>2</sub>…
12
+ to create a string <var>w</var> of infinite length. \n\rThen, <var>w</var> = 14025256741014958470038053646…\n\nFor
14
13
  a positive integer <var>k</var>, if no substring of <var>w</var> exists with a sum
15
14
  of digits equal to <var>k</var>, <var>p</var>(<var>k</var>) is defined to be zero.
16
15
  If at least one substring of <var>w</var> exists with a sum of digits equal to <var>k</var>,
17
16
  we define <var>p</var>(<var>k</var>) = <var>z</var>, where <var>z</var> is the starting
18
- position of the earliest such substring.</p>\r\n\r\n<p>For instance:</p>\r\n\r\n<p>The
19
- substrings <span style=\"font-family:courier new;font-size:12pt;color:#0000ff;\">1</span>,
20
- <span style=\"font-family:courier new;font-size:12pt;color:#0000ff;\">14</span>,
21
- <span style=\"font-family:courier new;font-size:12pt;color:#0000ff;\">1402</span>,
22
- <br>\r\nwith respective sums of digits equal to 1, 5, 7, …<br>\r\nstart at position
23
- <b>1</b>, hence <var>p</var>(1) = <var>p</var>(5) = <var>p</var>(7) =  = <b>1</b>.</p>\r\n\r\n<p>The
24
- substrings <span style=\"font-family:courier new;font-size:12pt;color:#0000ff;\">4</span>,
25
- <span style=\"font-family:courier new;font-size:12pt;color:#0000ff;\">402</span>,
26
- <span style=\"font-family:courier new;font-size:12pt;color:#0000ff;\">4025</span>,
27
- …<br>\r\nwith respective sums of digits equal to 4, 6, 11, …<br>\r\nstart at position
28
- <b>2</b>, hence <var>p</var>(4)= <var>p</var>(6) = <var>p</var>(11) = … = <b>2</b>.</p>\r\n\r\n<p>The
29
- substrings <span style=\"font-family:courier new;font-size:12pt;color:#0000ff;\">02</span>,
30
- <span style=\"font-family:courier new;font-size:12pt;color:#0000ff;\">0252</span>,
31
- …<br>\r\nwith respective sums of digits equal to 2, 9, …<br>\r\nstart at position
32
- <b>3</b>, hence <var>p</var>(2) = <var>p</var>(9) = … = <b>3</b>.</p>\n<p>\r\n\r\n</p>\n<p>Note
33
- that substring <span style=\"font-family:courier new;font-size:12pt;color:#0000ff;\">025</span>
34
- starting at position <b>3</b>, has a sum of digits equal to 7, but there was an
35
- earlier substring (starting at position <b>1</b>) with a sum of digits equal to
36
- 7, so <var>p</var>(7) = 1, <i>not</i> 3.</p>\r\n\r\n<p>We can verify that, for 0 k <img
37
- src=\"images/symbol_le.gif\" width=\"10\" height=\"12\" alt=\"≤\" border=\"0\" style=\"vertical-align:middle;\"> 10<sup>3</sup>,
38
- <img src=\"images/symbol_sum.gif\" width=\"11\" height=\"14\" alt=\"∑\" border=\"0\"
39
- style=\"vertical-align:middle;\"> <var>p</var>(<var>k</var>) = 4742.</p>\r\n\r\n<p>Find
40
- <img src=\"images/symbol_sum.gif\" width=\"11\" height=\"14\" alt=\"∑\" border=\"0\"
41
- style=\"vertical-align:middle;\"> <var>p</var>(<var>k</var>), for 0 k <img src=\"images/symbol_le.gif\"
42
- width=\"10\" height=\"12\" alt=\"≤\" border=\"0\" style=\"vertical-align:middle;\"> 2·10<sup>15</sup>.</p>\r\n"
17
+ position of the earliest such substring.\n\nFor instance:\n\nThe substrings 1, 14,
18
+ 1402, … \n\rwith respective sums of digits equal to 1, 5, 7, … \n\rstart at position
19
+ **1** , hence <var>p</var>(1) = <var>p</var>(5) = <var>p</var>(7) = … =  **1** .\n\nThe
20
+ substrings 4, 402, 4025, … \n\rwith respective sums of digits equal to 4, 6, 11,
21
+ \n\rstart at position **2** , hence <var>p</var>(4) = <var>p</var>(6) = <var>p</var>(11) = … = 
22
+ **2** .\n\nThe substrings 02, 0252, \n\rwith respective sums of digits equal
23
+ to 2, 9, … \n\rstart at position **3** , hence <var>p</var>(2) = <var>p</var>(9) = … = 
24
+ **3** .\n\nNote that substring 025 starting at position **3** , has a sum of digits
25
+ equal to 7, but there was an earlier substring (starting at position **1** ) with
26
+ a sum of digits equal to 7, so <var>p</var>(7) = 1, _not_ 3.\n\nWe can verify that,
27
+ for 0k  ![≤](/home/will/src/euler-manager/config/../data/images/symbol_le.gif) 10<sup>3</sup>,
28
+ ![∑](/home/will/src/euler-manager/config/../data/images/symbol_sum.gif) <var>p</var>(<var>k</var>)
29
+ = 4742.\n\nFind ![∑](/home/will/src/euler-manager/config/../data/images/symbol_sum.gif) <var>p</var>(<var>k</var>),
30
+ for 0 k  ![≤](/home/will/src/euler-manager/config/../data/images/symbol_le.gif) 2·10<sup>15</sup>.\n\n"
@@ -2,8 +2,8 @@
2
2
  :id: 239
3
3
  :name: Twenty-two Foolish Primes
4
4
  :url: http://projecteuler.net/problem=239
5
- :content: "\r\n<p>A set of disks numbered 1 through 100 are placed in a line in random
6
- order.</p>\r\n\r\n<p>What is the probability that we have a partial derangement
7
- such that exactly 22 prime number discs are found away from their natural positions?<br>\r\n(Any
8
- number of non-prime disks may also be found in or out of their natural positions.)</p>\r\n\r\n<p>Give
9
- your answer rounded to 12 places behind the decimal point in the form 0.abcdefghijkl.</p>\r\n\r\n"
5
+ :content: "A set of disks numbered 1 through 100 are placed in a line in random order.\n\nWhat
6
+ is the probability that we have a partial derangement such that exactly 22 prime
7
+ number discs are found away from their natural positions? \n\r(Any number of non-prime
8
+ disks may also be found in or out of their natural positions.)\n\nGive your answer
9
+ rounded to 12 places behind the decimal point in the form 0.abcdefghijkl.\n\n"
data/data/problems/24.yml CHANGED
@@ -2,9 +2,10 @@
2
2
  :id: 24
3
3
  :name: Lexicographic permutations
4
4
  :url: http://projecteuler.net/problem=24
5
- :content: "\r\n<p>A permutation is an ordered arrangement of objects. For example,
6
- 3124 is one possible permutation of the digits 1, 2, 3 and 4. If all of the permutations
7
- are listed numerically or alphabetically, we call it lexicographic order. The lexicographic
8
- permutations of 0, 1 and 2 are:</p>\r\n<p style=\"text-align:center;\">012   021 
9
-  102   120   201   210</p>\r\n<p>What is the millionth lexicographic permutation
10
- of the digits 0, 1, 2, 3, 4, 5, 6, 7, 8 and 9?</p>\r\n\r\n"
5
+ :content: |+
6
+ A permutation is an ordered arrangement of objects. For example, 3124 is one possible permutation of the digits 1, 2, 3 and 4. If all of the permutations are listed numerically or alphabetically, we call it lexicographic order. The lexicographic permutations of 0, 1 and 2 are:
7
+
8
+ 012   021   102   120   201   210
9
+
10
+ What is the millionth lexicographic permutation of the digits 0, 1, 2, 3, 4, 5, 6, 7, 8 and 9?
11
+
@@ -2,10 +2,10 @@
2
2
  :id: 240
3
3
  :name: Top Dice
4
4
  :url: http://projecteuler.net/problem=240
5
- :content: "\r\n<p>There are 1111 ways in which five 6-sided dice (sides numbered 1
6
- to 6) can be rolled so that the top three sum to 15. Some examples are:\r\n\r\n<br><br>\r\nD<sub>1</sub>,D<sub>2</sub>,D<sub>3</sub>,D<sub>4</sub>,D<sub>5</sub>
7
- = 4,3,6,3,5\r\n<br>\r\nD<sub>1</sub>,D<sub>2</sub>,D<sub>3</sub>,D<sub>4</sub>,D<sub>5</sub>
8
- = 4,3,3,5,6\r\n<br>\r\nD<sub>1</sub>,D<sub>2</sub>,D<sub>3</sub>,D<sub>4</sub>,D<sub>5</sub>
9
- = 3,3,3,6,6\r\n<br>\r\nD<sub>1</sub>,D<sub>2</sub>,D<sub>3</sub>,D<sub>4</sub>,D<sub>5</sub>
10
- = 6,6,3,3,3\r\n<br><br>\r\nIn how many ways can twenty 12-sided dice (sides numbered
11
- 1 to 12) be rolled so that the top ten sum to 70?</p>\r\n"
5
+ :content: "There are 1111 ways in which five 6-sided dice (sides numbered 1 to 6)
6
+ can be rolled so that the top three sum to 15. Some examples are:\r\r \n \n \n\rD<sub>1</sub>,D<sub>2</sub>,D<sub>3</sub>,D<sub>4</sub>,D<sub>5</sub>
7
+ = 4,3,6,3,5\r \n\rD<sub>1</sub>,D<sub>2</sub>,D<sub>3</sub>,D<sub>4</sub>,D<sub>5</sub>
8
+ = 4,3,3,5,6\r \n\rD<sub>1</sub>,D<sub>2</sub>,D<sub>3</sub>,D<sub>4</sub>,D<sub>5</sub>
9
+ = 3,3,3,6,6\r \n\rD<sub>1</sub>,D<sub>2</sub>,D<sub>3</sub>,D<sub>4</sub>,D<sub>5</sub>
10
+ = 6,6,3,3,3\r \n \n \n\rIn how many ways can twenty 12-sided dice (sides numbered
11
+ 1 to 12) be rolled so that the top ten sum to 70?\n\n"
@@ -2,16 +2,13 @@
2
2
  :id: 241
3
3
  :name: Perfection Quotients
4
4
  :url: http://projecteuler.net/problem=241
5
- :content: "\r\n<p>For a positive integer <var>n</var>, let σ(<var>n</var>) be the
6
- sum of all divisors of <var>n</var>, so e.g. σ(6) = 1 + 2 + 3 + 6 = 12.\r\n</p>\r\n\r\n<p>A
7
- perfect number, as you probably know, is a number with σ(<var>n</var>) = 2<var>n</var>.</p>\r\n\r\n<p></p>\n<div
8
- style=\"text-align:left;\">\r\n<table><tr>\n<td>Let us define the <b>perfection
9
- quotient</b> of a positive integer as</td>\n<td>\n<var>p</var>(<var>n</var>)</td>\n<td>= </td>\r\n<td><div
10
- style=\"text-align:center;\">σ(<var>n</var>)<br><img src=\"images/blackdot.gif\"
11
- width=\"30\" height=\"1\" alt=\"\"><br><var>n</var>\n</div></td>\r\n<td>.</td>\r\n</tr></table>\n</div>\r\n\r\n<!--\r\n<p>Let
12
- us define the <b>perfection quotient</b> of a positive integer as <var>p</var>(<var>n</var>)
13
- = <font \"size=4\"> <sup>&sigma;(<var>n</var>)</sup>&frasl;<sub><var>n</var></sub></font>.</p>\r\n-->\r\n<p>Find
14
- the sum of all positive integers <var>n</var> <img src=\"images/symbol_le.gif\"
15
- width=\"10\" height=\"12\" alt=\"≤\" border=\"0\" style=\"vertical-align:middle;\">
5
+ :content: "For a positive integer <var>n</var>, let σ(<var>n</var>) be the sum of
6
+ all divisors of <var>n</var>, so e.g. σ(6) = 1 + 2 + 3 + 6 = 12.\n\nA perfect number,
7
+ as you probably know, is a number with σ(<var>n</var>) = 2<var>n</var>.\n\n| Let
8
+ us define the **perfection quotient** of a positive integer as | <var>p</var>(<var>n</var>)
9
+ | =  | \nσ(<var>n</var>) \n ![](/home/will/src/euler-manager/config/../data/images/blackdot.gif)
10
+ \ \n<var>n</var>\n | . |\n\n<!--\r\n<p>Let us define the <b>perfection quotient</b>
11
+ of a positive integer as <var>p</var>(<var>n</var>) = <font \"size=4\"> <sup>&sigma;(<var>n</var>)</sup>&frasl;<sub><var>n</var></sub></font>.</p>\r\n-->\n\nFind
12
+ the sum of all positive integers <var>n</var> ![≤](/home/will/src/euler-manager/config/../data/images/symbol_le.gif)
16
13
  10<sup>18</sup> for which <var>p</var>(<var>n</var>) has the form <var>k</var> +
17
- <sup>1</sup>⁄<sub>2</sub>, where <var>k</var> is an integer.</p>\r\n\r\n"
14
+ <sup>1</sup>⁄<sub>2</sub>, where <var>k</var> is an integer.\n\n"
@@ -2,15 +2,13 @@
2
2
  :id: 242
3
3
  :name: Odd Triplets
4
4
  :url: http://projecteuler.net/problem=242
5
- :content: "\r\n<p>Given the set {1,2,...,<var>n</var>}, we define <var>f</var>(<var>n</var>,<var>k</var>)
5
+ :content: "Given the set {1,2,...,<var>n</var>}, we define <var>f</var>(<var>n</var>,<var>k</var>)
6
6
  as the number of its <var>k</var>-element subsets with an odd sum of elements. For
7
7
  example, <var>f</var>(5,3) = 4, since the set {1,2,3,4,5} has four 3-element subsets
8
- having an odd sum of elements, i.e.: {1,2,4}, {1,3,5}, {2,3,4} and {2,4,5}.</p>\r\n\r\n<p>When
8
+ having an odd sum of elements, i.e.: {1,2,4}, {1,3,5}, {2,3,4} and {2,4,5}.\n\nWhen
9
9
  all three values <var>n</var>, <var>k</var> and <var>f</var>(<var>n</var>,<var>k</var>)
10
- are odd, we say that they make <br>\r\nan <i>odd-triplet</i> [<var>n</var>,<var>k</var>,<var>f</var>(<var>n</var>,<var>k</var>)].</p>\r\n\r\n<p>There
11
- are exactly five odd-triplets with <var>n</var> <img src=\"images/symbol_le.gif\"
12
- width=\"10\" height=\"12\" alt=\"≤\" border=\"0\" style=\"vertical-align:middle;\"> 10,
13
- namely:<br>\r\n[1,1,<var>f</var>(1,1) = 1], [5,1,<var>f</var>(5,1) = 3], [5,5,<var>f</var>(5,5) = 1],
14
- [9,1,<var>f</var>(9,1) = 5] and [9,9,<var>f</var>(9,9)= 1].</p>\r\n\r\n<p>How many
15
- odd-triplets are there with <var>n</var> <img src=\"images/symbol_le.gif\" width=\"10\"
16
- height=\"12\" alt=\"≤\" border=\"0\" style=\"vertical-align:middle;\"> 10<sup>12</sup> ?</p>\r\n"
10
+ are odd, we say that they make \n\ran _odd-triplet_ [<var>n</var>,<var>k</var>,<var>f</var>(<var>n</var>,<var>k</var>)].\n\nThere
11
+ are exactly five odd-triplets with <var>n</var>  ![≤](/home/will/src/euler-manager/config/../data/images/symbol_le.gif) 10,
12
+ namely: \n\r[1,1,<var>f</var>(1,1) = 1], [5,1,<var>f</var>(5,1) = 3], [5,5,<var>f</var>(5,5)= 1],
13
+ [9,1,<var>f</var>(9,1) = 5] and [9,9,<var>f</var>(9,9) = 1].\n\nHow many odd-triplets
14
+ are there with <var>n</var>  ![≤](/home/will/src/euler-manager/config/../data/images/symbol_le.gif) 10<sup>12</sup> ?\n\n"
@@ -2,18 +2,17 @@
2
2
  :id: 243
3
3
  :name: Resilience
4
4
  :url: http://projecteuler.net/problem=243
5
- :content: "\r\n<p> </p>\r\n<p>A positive fraction whose numerator is less than its
6
- denominator is called a proper fraction.<br>\r\nFor any denominator, <var>d</var>,
7
- there will be <var>d</var><img src=\"images/symbol_minus.gif\" width=\"9\" height=\"3\"
8
- alt=\"−\" border=\"0\" style=\"vertical-align:middle;\">1 proper fractions; for
9
- example, with <var>d</var> = 12:<br><sup>1</sup>/<sub>12</sub> , <sup>2</sup>/<sub>12</sub>
10
- , <sup>3</sup>/<sub>12</sub> , <sup>4</sup>/<sub>12</sub> , <sup>5</sup>/<sub>12</sub>
11
- , <sup>6</sup>/<sub>12</sub> , <sup>7</sup>/<sub>12</sub> , <sup>8</sup>/<sub>12</sub>
12
- , <sup>9</sup>/<sub>12</sub> , <sup>10</sup>/<sub>12</sub> , <sup>11</sup>/<sub>12</sub>
13
- .\r\n</p>\r\n\r\n<p>We shall call a fraction that cannot be cancelled down a <i>resilient
14
- fraction</i>.<br>\r\nFurthermore we shall define the <i>resilience</i> of a denominator,
15
- <var>R</var>(<var>d</var>), to be the ratio of its proper fractions that are resilient;
16
- for example, <var>R</var>(12) = <sup>4</sup>/<sub>11</sub> .<br>\r\nIn fact, <var>d</var> = 12
17
- is the smallest denominator having a resilience <var>R</var>(<var>d</var>) 4/<sub>10</sub>
18
- .</p>\r\n\r\n<p>Find the smallest denominator <var>d</var>, having a resilience
19
- <var>R</var>(<var>d</var>) 15499/<sub>94744</sub> .</p>\r\n\r\n"
5
+ :content: "A positive fraction whose numerator is less than its denominator is called
6
+ a proper fraction. \n\rFor any denominator, <var>d</var>, there will be <var>d</var>
7
+ ![−](/home/will/src/euler-manager/config/../data/images/symbol_minus.gif)1 proper
8
+ fractions; for example, with <var>d</var> = 12: \n<sup>1</sup>/<sub>12</sub> ,
9
+ <sup>2</sup>/<sub>12</sub> , <sup>3</sup>/<sub>12</sub> , <sup>4</sup>/<sub>12</sub>
10
+ , <sup>5</sup>/<sub>12</sub> , <sup>6</sup>/<sub>12</sub> , <sup>7</sup>/<sub>12</sub>
11
+ , <sup>8</sup>/<sub>12</sub> , <sup>9</sup>/<sub>12</sub> , <sup>10</sup>/<sub>12</sub>
12
+ , <sup>11</sup>/<sub>12</sub> .\n\nWe shall call a fraction that cannot be cancelled
13
+ down a _resilient fraction_. \n\rFurthermore we shall define the _resilience_ of
14
+ a denominator, <var>R</var>(<var>d</var>), to be the ratio of its proper fractions
15
+ that are resilient; for example, <var>R</var>(12) = <sup>4</sup>/<sub>11</sub> .
16
+ \ \n\rIn fact, <var>d</var> = 12 is the smallest denominator having a resilience
17
+ <var>R</var>(<var>d</var>) 4/<sub>10</sub> .\n\nFind the smallest denominator <var>d</var>,
18
+ having a resilience <var>R</var>(<var>d</var>) 15499/<sub>94744</sub> .\n\n"
@@ -2,31 +2,22 @@
2
2
  :id: 244
3
3
  :name: Sliders
4
4
  :url: http://projecteuler.net/problem=244
5
- :content: "\r\n<p>You probably know the game <i>Fifteen Puzzle</i>. Here, instead
6
- of numbered tiles, we have seven red tiles and eight blue tiles.</p>\r\n<p>A move
7
- is denoted by the uppercase initial of the direction (Left, Right, Up, Down) in
8
- which the tile is slid, e.g. starting from configuration (<b>S</b>), by the sequence
9
- <b>LULUR</b> we reach the configuration (<b>E</b>):</p>\r\n<p></p>\n<div style=\"text-align:
10
- center;\">\r\n<table cellspacing=\"0\" cellpadding=\"2\" border=\"0\" align=\"center\"><tr>\n<td
11
- width=\"25\">(<b>S</b>)</td>\n<td width=\"100\"><img src=\"project/images/p_244_start.gif\"></td>\n<td
12
- width=\"25\">, (<b>E</b>)</td>\n<td width=\"100\"><img src=\"project/images/p_244_example.gif\"></td>\r\n</tr></table>\n</div>\r\n\r\n<p>For
13
- each path, its checksum is calculated by (pseudocode):\r\n</p>\n<div style=\"margin-left:
14
- 100px;\">\r\nchecksum = 0<br>\r\nchecksum = (checksum <img src=\"images/symbol_times.gif\"
15
- width=\"9\" height=\"9\" alt=\"×\" border=\"0\" style=\"vertical-align:middle;\">
16
- 243 + <var>m</var><sub>1</sub>) mod 100 000 007<br>\r\nchecksum = (checksum <img
17
- src=\"images/symbol_times.gif\" width=\"9\" height=\"9\" alt=\"×\" border=\"0\"
18
- style=\"vertical-align:middle;\"> 243 + <var>m</var><sub>2</sub>) mod 100 000 007<br>\r\n   …<br>\r\nchecksum
19
- = (checksum <img src=\"images/symbol_times.gif\" width=\"9\" height=\"9\" alt=\"×\"
20
- border=\"0\" style=\"vertical-align:middle;\"> 243 + <var>m</var><sub><var>n</var></sub>)
21
- mod 100 000 007<br>\n</div>\r\nwhere <var>m</var><sub><var>k</var></sub> is the
22
- ASCII value of the <var>k</var><sup><var>th</var></sup> letter in the move sequence
23
- and the ASCII values for the moves are:\r\n\r\n<div style=\"text-align:center;\">\r\n<table
24
- cellspacing=\"0\" cellpadding=\"2\" border=\"1\" align=\"center\">\n<tr>\n<td width=\"30\"><b>L</b></td>\n<td
25
- width=\"30\">76</td>\n</tr>\n<tr>\n<td><b>R</b></td>\n<td>82</td>\n</tr>\n<tr>\n<td><b>U</b></td>\n<td>85</td>\n</tr>\n<tr>\n<td><b>D</b></td>\n<td>68</td>\n</tr>\n</table>\n</div>\r\n\r\n<p>For
26
- the sequence <b>LULUR</b> given above, the checksum would be 19761398.</p>\r\n<p>Now,
27
- starting from configuration (<b>S</b>),\r\nfind all shortest ways to reach configuration
28
- (<b>T</b>).</p>\r\n<p></p>\n<div style=\"text-align: center;\">\r\n<table cellspacing=\"0\"
29
- cellpadding=\"2\" border=\"0\" align=\"center\"><tr>\n<td width=\"25\">(<b>S</b>)</td>\n<td
30
- width=\"100\"><img src=\"project/images/p_244_start.gif\"></td>\n<td width=\"25\">, (<b>T</b>)</td>\n<td
31
- width=\"100\"><img src=\"project/images/p_244_target.gif\"></td>\r\n</tr></table>\n</div>\r\n\r\n<p>What
32
- is the sum of all checksums for the paths having the minimal length?</p>\r\n"
5
+ :content: "You probably know the game _Fifteen Puzzle_. Here, instead of numbered
6
+ tiles, we have seven red tiles and eight blue tiles.\n\nA move is denoted by the
7
+ uppercase initial of the direction (Left, Right, Up, Down) in which the tile is
8
+ slid, e.g. starting from configuration ( **S** ), by the sequence **LULUR** we reach
9
+ the configuration ( **E** ):\n\n| ( **S** ) | ![](/home/will/src/euler-manager/config/../data/images/p_244_start.gif)
10
+ | , ( **E** ) | ![](/home/will/src/euler-manager/config/../data/images/p_244_example.gif)
11
+ |\n\nFor each path, its checksum is calculated by (pseudocode):\n\n\rchecksum =
12
+ 0 \n\rchecksum = (checksum ![×](/home/will/src/euler-manager/config/../data/images/symbol_times.gif)
13
+ 243 + <var>m</var><sub>1</sub>) mod 100 000 007 \n\rchecksum = (checksum ![×](/home/will/src/euler-manager/config/../data/images/symbol_times.gif)
14
+ 243 + <var>m</var><sub>2</sub>) mod 100 000 007 \n\r   … \n\rchecksum = (checksum
15
+ ![×](/home/will/src/euler-manager/config/../data/images/symbol_times.gif) 243 +
16
+ <var>m</var><sub><var>n</var></sub>) mod 100 000 007 \n\n\rwhere <var>m</var><sub><var>k</var></sub>
17
+ is the ASCII value of the <var>k</var><sup><var>th</var></sup> letter in the move
18
+ sequence and the ASCII values for the moves are:\r\r\n\n| **L** | 76 |\n| **R**
19
+ | 82 |\n| **U** | 85 |\n| **D** | 68 |\n\nFor the sequence **LULUR** given above,
20
+ the checksum would be 19761398.\n\nNow, starting from configuration ( **S** ),\rfind
21
+ all shortest ways to reach configuration ( **T** ).\n\n| ( **S** ) | ![](/home/will/src/euler-manager/config/../data/images/p_244_start.gif)
22
+ | , ( **T** ) | ![](/home/will/src/euler-manager/config/../data/images/p_244_target.gif)
23
+ |\n\nWhat is the sum of all checksums for the paths having the minimal length?\n\n"
@@ -2,35 +2,27 @@
2
2
  :id: 245
3
3
  :name: Coresilience
4
4
  :url: http://projecteuler.net/problem=245
5
- :content: "\r\n<p>We shall call a fraction that cannot be cancelled down a resilient
6
- fraction.<br> Furthermore we shall define the resilience of a denominator, <var>R</var>(<var>d</var>),
5
+ :content: "We shall call a fraction that cannot be cancelled down a resilient fraction.
6
+ \ \n Furthermore we shall define the resilience of a denominator, <var>R</var>(<var>d</var>),
7
7
  to be the ratio of its proper fractions that are resilient; for example, <var>R</var>(12)
8
- = <sup>4</sup>⁄<sub>11</sub>.</p>\r\n\r\n\r\n<div style=\"text-align:left;\">\r\n<table><tr>\n<td>The
9
- resilience of a number <var>d</var> <img src=\"images/symbol_gt.gif\" width=\"10\"
10
- height=\"10\" alt=\"&gt;\" border=\"0\" style=\"vertical-align:middle;\"> 1 is then</td>\r\n<td><div
11
- style=\"text-align:center;\">φ(<var>d</var>)<br><img src=\"images/blackdot.gif\"
12
- width=\"36\" height=\"1\" alt=\"\"><br><var>d</var> - 1</div></td>\n<td>, where
13
- φ is Euler's totient function.</td>\r\n</tr></table>\n<table><tr>\n<td>We further
14
- define the <b>coresilience</b> of a number <var>n</var> <img src=\"images/symbol_gt.gif\"
15
- width=\"10\" height=\"10\" alt=\"&gt;\" border=\"0\" style=\"vertical-align:middle;\">
16
- 1 as <var>C</var>(<var>n</var>)</td>\n<td>= </td>\r\n<td><div style=\"text-align:center;\">\n<var>n</var>
17
- - φ(<var>n</var>)<br><img src=\"images/blackdot.gif\" width=\"54\" height=\"1\"
18
- alt=\"\"><br><var>n</var> - 1</div></td>\n<td>.</td>\r\n</tr></table>\n<table><tr>\n<td>The
19
- coresilience of a prime <var>p</var> is <var>C</var>(<var>p</var>)</td>\r\n<td>= </td>\r\n<td><div
20
- style=\"text-align:center;\">1<br><img src=\"images/blackdot.gif\" width=\"34\"
21
- height=\"1\" alt=\"\"><br><var>p</var> - 1</div></td>\n<td>.</td>\r\n</tr></table>\n</div>\r\n\r\n<!--\r\n<p>The
22
- resilience of a number <var>d</var> <img src='images/symbol_gt.gif' width='10' height='10'
23
- alt='&gt;' border='0' style='vertical-align:middle;' /> 1 is then <font \"size=4\"><sup>&phi;(<var>d</var>)</sup>&frasl;<sub>(<var>d</var>-1)</sub></font>,
24
- where &phi; is Euler's totient function.</p>\r\n\r\n<p>We further define the <b>coresilience</b>
25
- of a number <var>n</var> <img src='images/symbol_gt.gif' width='10' height='10'
26
- alt='&gt;' border='0' style='vertical-align:middle;' /> 1 as <var>C</var>(<var>n</var>)
8
+ = <sup>4</sup>⁄<sub>11</sub>.\n\n| The resilience of a number <var>d</var> ![>](/home/will/src/euler-manager/config/../data/images/symbol_gt.gif)
9
+ 1 is then | \nφ(<var>d</var>) \n ![](/home/will/src/euler-manager/config/../data/images/blackdot.gif)
10
+ \ \n<var>d</var> - 1\n | , where φ is Euler's totient function. |\n\n| We further
11
+ define the **coresilience** of a number <var>n</var> ![>](/home/will/src/euler-manager/config/../data/images/symbol_gt.gif)
12
+ 1 as <var>C</var>(<var>n</var>) | =  | \n<var>n</var> - φ(<var>n</var>) \n ![](/home/will/src/euler-manager/config/../data/images/blackdot.gif)
13
+ \ \n<var>n</var> - 1\n | . |\n\n| The coresilience of a prime <var>p</var> is <var>C</var>(<var>p</var>)
14
+ | =  | \n1 \n ![](/home/will/src/euler-manager/config/../data/images/blackdot.gif)
15
+ \ \n<var>p</var> - 1\n | . |\n\n<!--\r\n<p>The resilience of a number <var>d</var>
16
+ <img src='images/symbol_gt.gif' width='10' height='10' alt='&gt;' border='0' style='vertical-align:middle;'
17
+ /> 1 is then <font \"size=4\"><sup>&phi;(<var>d</var>)</sup>&frasl;<sub>(<var>d</var>-1)</sub></font>,
18
+ where &phi; is Euler's totient function.</p>\r\n\r\n\r\n<p>We further define the
19
+ <b>coresilience</b> of a number <var>n</var> <img src='images/symbol_gt.gif' width='10'
20
+ height='10' alt='&gt;' border='0' style='vertical-align:middle;' /> 1 as <var>C</var>(<var>n</var>)
27
21
  = <font \"size=4\"><sup>(<var>n</var> - &phi;(<var>n</var>))</sup>&frasl;<sub>(<var>n</var>
28
- - 1)</sub></font>.\r\n</p>\r\n\r\n<p>The coresilience of a prime <var>p</var> is
29
- <var>C</var>(<var>p</var>) = <font \"size=4\"><sup>1</sup>&frasl;<sub>(<var>p</var>
30
- - 1)</sub></font>.</p>\r\n-->\r\n\r\n<p>Find the sum of all <b>composite</b> integers
31
- 1 <img src=\"images/symbol_lt.gif\" width=\"10\" height=\"10\" alt=\"&lt;\" border=\"0\"
32
- style=\"vertical-align:middle;\"><var>n</var> <img src=\"images/symbol_le.gif\"
33
- width=\"10\" height=\"12\" alt=\"≤\" border=\"0\" style=\"vertical-align:middle;\">
34
- 2<img src=\"images/symbol_times.gif\" width=\"9\" height=\"9\" alt=\"×\" border=\"0\"
35
- style=\"vertical-align:middle;\">10<sup>11</sup>, for which <var>C</var>(<var>n</var>)
36
- is a <dfn title=\"A fraction with numerator 1\">unit fraction</dfn>.\r\n</p>\r\n\r\n"
22
+ - 1)</sub></font>.\r\n</p>\r\n\r\n\r\n<p>The coresilience of a prime <var>p</var>
23
+ is <var>C</var>(<var>p</var>) = <font \"size=4\"><sup>1</sup>&frasl;<sub>(<var>p</var>
24
+ - 1)</sub></font>.</p>\r\n-->\n\nFind the sum of all **composite** integers 1 ![<](/home/will/src/euler-manager/config/../data/images/symbol_lt.gif)
25
+ <var>n</var> ![≤](/home/will/src/euler-manager/config/../data/images/symbol_le.gif)
26
+ 2 ![×](/home/will/src/euler-manager/config/../data/images/symbol_times.gif)10<sup>11</sup>,
27
+ for which <var>C</var>(<var>n</var>) is a <dfn title=\"A fraction with numerator
28
+ 1\">unit fraction</dfn>.\n\n"
@@ -2,16 +2,13 @@
2
2
  :id: 246
3
3
  :name: Tangents to an ellipse
4
4
  :url: http://projecteuler.net/problem=246
5
- :content: "\r\n<p>\r\nA definition for an ellipse is:<br>\r\nGiven a circle c with
6
- centre M and radius r and a point G such that d(G,M)<img src=\"images/symbol_lt.gif\"
7
- width=\"10\" height=\"10\" alt=\"&lt;\" border=\"0\" style=\"vertical-align:middle;\">r,
8
- the locus of the points that are equidistant from c and G form an ellipse.\r\n</p>\r\nThe
9
- construction of the points of the ellipse is shown below.\r\n\r\n<div style=\"text-align:center;\">\r\n<img
10
- src=\"project/images/p_246_anim.gif\" alt=\"\">\n</div>\r\n\r\n<p>\r\nGiven are
11
- the points M(-2000,1500) and G(8000,1500).<br> \r\nGiven is also the circle c with
12
- centre M and radius 15000.<br>\r\nThe locus of the points that are equidistant from
13
- G and c form an ellipse e.<br>\r\nFrom a point P outside e the two tangents t<sub>1</sub>
14
- and t<sub>2</sub> to the ellipse are drawn.<br>\r\nLet the points where t<sub>1</sub>
15
- and t<sub>2</sub> touch the ellipse be R and S.\r\n</p>\r\n<div style=\"text-align:center;\">\r\n<img
16
- src=\"project/images/p_246_ellipse.gif\" alt=\"\">\n</div>\r\n<p>\r\nFor how many
17
- lattice points P is angle RPS greater than 45 degrees?\r\n</p>\r\n\r\n"
5
+ :content: "A definition for an ellipse is: \n\rGiven a circle c with centre M and
6
+ radius r and a point G such that d(G,M) ![<](/home/will/src/euler-manager/config/../data/images/symbol_lt.gif)r,
7
+ the locus of the points that are equidistant from c and G form an ellipse.\n\n\rThe
8
+ construction of the points of the ellipse is shown below.\r\r\n ![](/home/will/src/euler-manager/config/../data/images/p_246_anim.gif)\n\nGiven
9
+ are the points M(-2000,1500) and G(8000,1500). \n \rGiven is also the circle c
10
+ with centre M and radius 15000. \n\rThe locus of the points that are equidistant
11
+ from G and c form an ellipse e. \n\rFrom a point P outside e the two tangents t<sub>1</sub>
12
+ and t<sub>2</sub> to the ellipse are drawn. \n\rLet the points where t<sub>1</sub>
13
+ and t<sub>2</sub> touch the ellipse be R and S.\n\n ![](/home/will/src/euler-manager/config/../data/images/p_246_ellipse.gif)\n\nFor
14
+ how many lattice points P is angle RPS greater than 45 degrees?\n\n"
@@ -2,20 +2,17 @@
2
2
  :id: 247
3
3
  :name: Squares under a hyperbola
4
4
  :url: http://projecteuler.net/problem=247
5
- :content: "\r\n<p>Consider the region constrained by 1 <img src=\"images/symbol_le.gif\"
6
- width=\"10\" height=\"12\" alt=\"≤\" border=\"0\" style=\"vertical-align:middle;\"><var>x</var>
7
- and 0 <img src=\"images/symbol_le.gif\" width=\"10\" height=\"12\" alt=\"≤\" border=\"0\"
8
- style=\"vertical-align:middle;\"><var>y</var> <img src=\"images/symbol_le.gif\"
9
- width=\"10\" height=\"12\" alt=\"≤\" border=\"0\" style=\"vertical-align:middle;\"><sup>1</sup>/<sub><var>x</var></sub>.\r\n</p>\n<p>\r\nLet
10
- S<sub>1</sub> be the largest square that can fit under the curve.<br>\r\nLet S<sub>2</sub>
11
- be the largest square that fits in the remaining area, and so on. <br>\r\nLet the
12
- <i>index</i> of S<sub><var>n</var></sub> be the pair (left, below) indicating the
13
- number of squares to the left of S<sub><var>n</var></sub> and the number of squares
14
- below S<sub><var>n</var></sub>.\r\n</p>\r\n<div style=\"text-align:center;\">\r\n<img
15
- src=\"project/images/p_247_hypersquares.gif\" alt=\"\">\n</div>\r\n<p>\r\nThe diagram
16
- shows some such squares labelled by number. <br>\r\nS<sub>2</sub> has one square
17
- to its left and none below, so the index of S<sub>2</sub> is (1,0).<br>\r\nIt can
18
- be seen that the index of S<sub>32</sub> is (1,1) as is the index of S<sub>50</sub>.
19
- <br>\r\n50 is the largest <var>n</var> for which the index of S<sub><var>n</var></sub>
20
- is (1,1).\r\n</p>\r\n<p>\r\nWhat is the largest <var>n</var> for which the index
21
- of S<sub><var>n</var></sub> is (3,3)?\r\n</p>\r\n\r\n\r\n"
5
+ :content: "Consider the region constrained by 1 ![≤](/home/will/src/euler-manager/config/../data/images/symbol_le.gif)
6
+ <var>x</var> and 0 ![≤](/home/will/src/euler-manager/config/../data/images/symbol_le.gif)
7
+ <var>y</var> ![≤](/home/will/src/euler-manager/config/../data/images/symbol_le.gif)
8
+ <sup>1</sup>/<sub><var>x</var></sub>.\n\nLet S<sub>1</sub> be the largest square
9
+ that can fit under the curve. \n\rLet S<sub>2</sub> be the largest square that
10
+ fits in the remaining area, and so on. \n\rLet the _index_ of S<sub><var>n</var></sub>
11
+ be the pair (left, below) indicating the number of squares to the left of S<sub><var>n</var></sub>
12
+ and the number of squares below S<sub><var>n</var></sub>.\n\n ![](/home/will/src/euler-manager/config/../data/images/p_247_hypersquares.gif)\n\nThe
13
+ diagram shows some such squares labelled by number. \n\rS<sub>2</sub> has one
14
+ square to its left and none below, so the index of S<sub>2</sub> is (1,0). \n\rIt
15
+ can be seen that the index of S<sub>32</sub> is (1,1) as is the index of S<sub>50</sub>.
16
+ \ \n\r50 is the largest <var>n</var> for which the index of S<sub><var>n</var></sub>
17
+ is (1,1).\n\nWhat is the largest <var>n</var> for which the index of S<sub><var>n</var></sub>
18
+ is (3,3)?\n\n"
@@ -2,5 +2,8 @@
2
2
  :id: 248
3
3
  :name: Numbers for which Euler’s totient function equals 13!
4
4
  :url: http://projecteuler.net/problem=248
5
- :content: "\r\n<p>The first number n for which φ(n)=13! is 6227180929.</p>\r\n<p>Find
6
- the 150,000<sup>th</sup> such number.</p>\r\n\r\n"
5
+ :content: |+
6
+ The first number n for which φ(n)=13! is 6227180929.
7
+
8
+ Find the 150,000<sup>th</sup> such number.
9
+
@@ -2,6 +2,6 @@
2
2
  :id: 249
3
3
  :name: Prime Subset Sums
4
4
  :url: http://projecteuler.net/problem=249
5
- :content: "\r\n<p>Let <var>S</var> = {2, 3, 5, ..., 4999} be the set of prime numbers
6
- less than 5000.</p>\r\n<p>Find the number of subsets of <var>S</var>, the sum of
7
- whose elements is a prime number.<br>\r\nEnter the rightmost 16 digits as your answer.</p>\r\n"
5
+ :content: "Let <var>S</var> = {2, 3, 5, ..., 4999} be the set of prime numbers less
6
+ than 5000.\n\nFind the number of subsets of <var>S</var>, the sum of whose elements
7
+ is a prime number. \n\rEnter the rightmost 16 digits as your answer.\n\n"
data/data/problems/25.yml CHANGED
@@ -2,14 +2,15 @@
2
2
  :id: 25
3
3
  :name: 1000-digit Fibonacci number
4
4
  :url: http://projecteuler.net/problem=25
5
- :content: "\r\n<p>The Fibonacci sequence is defined by the recurrence relation:</p>\r\n<blockquote>F<sub><i>n</i></sub>
6
- = F<sub><i>n</i><img src=\"images/symbol_minus.gif\" width=\"9\" height=\"3\" alt=\"−\"
7
- border=\"0\" style=\"vertical-align:middle;\">1</sub> + F<sub><i>n</i><img src=\"images/symbol_minus.gif\"
8
- width=\"9\" height=\"3\" alt=\"−\" border=\"0\" style=\"vertical-align:middle;\">2</sub>,
9
- where F<sub>1</sub> = 1 and F<sub>2</sub> = 1.</blockquote>\r\n<p>Hence the first
10
- 12 terms will be:</p>\r\n<blockquote>F<sub>1</sub> = 1<br>\r\nF<sub>2</sub> = 1<br>\r\nF<sub>3</sub>
11
- = 2<br>\r\nF<sub>4</sub> = 3<br>\r\nF<sub>5</sub> = 5<br>\r\nF<sub>6</sub> = 8<br>\r\nF<sub>7</sub>
12
- = 13<br>\r\nF<sub>8</sub> = 21<br>\r\nF<sub>9</sub> = 34<br>\r\nF<sub>10</sub> =
13
- 55<br>\r\nF<sub>11</sub> = 89<br>\r\nF<sub>12</sub> = 144</blockquote>\r\n<p>The
14
- 12th term, F<sub>12</sub>, is the first term to contain three digits.</p>\r\n<p>What
15
- is the first term in the Fibonacci sequence to contain 1000 digits?</p>\r\n\r\n"
5
+ :content: "The Fibonacci sequence is defined by the recurrence relation:\n\n> F<sub><i>n</i></sub>
6
+ = F<sub><i>n</i><img src=\"%7B%7B%20images_dir%20%7D%7D/symbol_minus.gif\" width=\"9\"
7
+ height=\"3\" alt=\"−\" border=\"0\" style=\"vertical-align:middle;\">1</sub> + F<sub><i>n</i><img
8
+ src=\"%7B%7B%20images_dir%20%7D%7D/symbol_minus.gif\" width=\"9\" height=\"3\" alt=\"−\"
9
+ border=\"0\" style=\"vertical-align:middle;\">2</sub>, where F<sub>1</sub> = 1 and
10
+ F<sub>2</sub> = 1.\n\nHence the first 12 terms will be:\n\n> F<sub>1</sub> = 1 \n>
11
+ \rF<sub>2</sub> = 1 \n> \rF<sub>3</sub> = 2 \n> \rF<sub>4</sub> = 3 \n> \rF<sub>5</sub>
12
+ = 5 \n> \rF<sub>6</sub> = 8 \n> \rF<sub>7</sub> = 13 \n> \rF<sub>8</sub> = 21
13
+ \ \n> \rF<sub>9</sub> = 34 \n> \rF<sub>10</sub> = 55 \n> \rF<sub>11</sub> = 89
14
+ \ \n> \rF<sub>12</sub> = 144\n\nThe 12th term, F<sub>12</sub>, is the first term
15
+ to contain three digits.\n\nWhat is the first term in the Fibonacci sequence to
16
+ contain 1000 digits?\n\n"