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,16 +2,10 @@
2
2
  :id: 365
3
3
  :name: A huge binomial coefficient
4
4
  :url: http://projecteuler.net/problem=365
5
- :content: "\r\n<p>\r\nThe binomial coeffient C(10<sup>18</sup>,10<sup>9</sup>) is
6
- a number with more than 9 billion (9<img src=\"images/symbol_times.gif\" width=\"9\"
7
- height=\"9\" alt=\"×\" border=\"0\" style=\"vertical-align:middle;\">10<sup>9</sup>)
8
- digits.\r\n</p>\r\n<p>\r\nLet M(n,k,m) denote the binomial coefficient C(n,k) modulo
9
- m.\r\n</p>\r\n<p>\r\nCalculate <img src=\"images/symbol_sum.gif\" width=\"11\" height=\"14\"
10
- alt=\"∑\" border=\"0\" style=\"vertical-align:middle;\">M(10<sup>18</sup>,10<sup>9</sup>,p*q*r)
11
- for 1000<img src=\"images/symbol_lt.gif\" width=\"10\" height=\"10\" alt=\"&lt;\"
12
- border=\"0\" style=\"vertical-align:middle;\">p<img src=\"images/symbol_lt.gif\"
13
- width=\"10\" height=\"10\" alt=\"&lt;\" border=\"0\" style=\"vertical-align:middle;\">q<img
14
- src=\"images/symbol_lt.gif\" width=\"10\" height=\"10\" alt=\"&lt;\" border=\"0\"
15
- style=\"vertical-align:middle;\">r<img src=\"images/symbol_lt.gif\" width=\"10\"
16
- height=\"10\" alt=\"&lt;\" border=\"0\" style=\"vertical-align:middle;\">5000 and
17
- p,q,r prime.\r\n</p>\r\n\r\n\r\n\r\n\r\n"
5
+ :content: |+
6
+ The binomial coeffient C(10<sup>18</sup>,10<sup>9</sup>) is a number with more than 9 billion (9 ![×](/home/will/src/euler-manager/config/../data/images/symbol_times.gif)10<sup>9</sup>) digits.
7
+
8
+ Let M(n,k,m) denote the binomial coefficient C(n,k) modulo m.
9
+
10
+ Calculate ![∑](/home/will/src/euler-manager/config/../data/images/symbol_sum.gif)M(10<sup>18</sup>,10<sup>9</sup>,p\*q\*r) for 1000 ![<](/home/will/src/euler-manager/config/../data/images/symbol_lt.gif)p ![<](/home/will/src/euler-manager/config/../data/images/symbol_lt.gif)q ![<](/home/will/src/euler-manager/config/../data/images/symbol_lt.gif)r ![<](/home/will/src/euler-manager/config/../data/images/symbol_lt.gif)5000 and p,q,r prime.
11
+
@@ -2,25 +2,22 @@
2
2
  :id: 366
3
3
  :name: Stone Game III
4
4
  :url: http://projecteuler.net/problem=366
5
- :content: "\r\n<p>\r\nTwo players, Anton and Bernhard, are playing the following game.<br>\r\nThere
6
- is one pile of n stones.<br>\r\nThe first player may remove any positive number
7
- of stones, but not the whole pile.<br>\r\nThereafter, each player may remove at
8
- most twice the number of stones his opponent took on the previous move.<br>\r\nThe
9
- player who removes the last stone wins.\r\n</p>\r\n<p>\r\nE.g. n=5<br>\r\nIf the
10
- first player takes anything more than one stone the next player will be able to
11
- take all remaining stones.<br>\r\nIf the first player takes one stone, leaving four,
12
- his opponent will take also one stone, leaving three stones.<br>\r\nThe first player
13
- cannot take all three because he may take at most 2x1=2 stones. So let's say he
14
- takes also one stone, leaving 2. The second player can take the two remaining stones
15
- and wins.<br>\r\nSo 5 is a losing position for the first player.<br>\r\nFor some
16
- winning positions there is more than one possible move for the first player.<br>\r\nE.g.
17
- when n=17 the first player can remove one or four stones.\r\n</p>\r\n<p>\r\nLet
18
- M(n) be the maximum number of stones the first player can take from a winning position
19
- <i>at his first turn</i> and M(n)=0 for any other position.\r\n</p>\r\n<p>\r\n<img
20
- src=\"images/symbol_sum.gif\" width=\"11\" height=\"14\" alt=\"∑\" border=\"0\"
21
- style=\"vertical-align:middle;\">M(n) for n<img src=\"images/symbol_le.gif\" width=\"10\"
22
- height=\"12\" alt=\"≤\" border=\"0\" style=\"vertical-align:middle;\">100 is 728.\r\n</p>\r\n<p>\r\nFind
23
- \ <img src=\"images/symbol_sum.gif\" width=\"11\" height=\"14\" alt=\"∑\" border=\"0\"
24
- style=\"vertical-align:middle;\">M(n) for n<img src=\"images/symbol_le.gif\" width=\"10\"
25
- height=\"12\" alt=\"≤\" border=\"0\" style=\"vertical-align:middle;\">10<sup>18</sup>.\r\nGive
26
- your answer modulo 10<sup>8</sup>.\r\n</p>\r\n"
5
+ :content: "Two players, Anton and Bernhard, are playing the following game. \n\rThere
6
+ is one pile of n stones. \n\rThe first player may remove any positive number of
7
+ stones, but not the whole pile. \n\rThereafter, each player may remove at most
8
+ twice the number of stones his opponent took on the previous move. \n\rThe player
9
+ who removes the last stone wins.\n\nE.g. n=5 \n\rIf the first player takes anything
10
+ more than one stone the next player will be able to take all remaining stones. \n\rIf
11
+ the first player takes one stone, leaving four, his opponent will take also one
12
+ stone, leaving three stones. \n\rThe first player cannot take all three because
13
+ he may take at most 2x1=2 stones. So let's say he takes also one stone, leaving
14
+ 2. The second player can take the two remaining stones and wins. \n\rSo 5 is a
15
+ losing position for the first player. \n\rFor some winning positions there is more
16
+ than one possible move for the first player. \n\rE.g. when n=17 the first player
17
+ can remove one or four stones.\n\nLet M(n) be the maximum number of stones the first
18
+ player can take from a winning position _at his first turn_ and M(n)=0 for any other
19
+ position.\n\n![∑](/home/will/src/euler-manager/config/../data/images/symbol_sum.gif)M(n)
20
+ for n ![≤](/home/will/src/euler-manager/config/../data/images/symbol_le.gif)100
21
+ is 728.\n\nFind ![∑](/home/will/src/euler-manager/config/../data/images/symbol_sum.gif)M(n)
22
+ for n ![≤](/home/will/src/euler-manager/config/../data/images/symbol_le.gif)10<sup>18</sup>.\rGive
23
+ your answer modulo 10<sup>8</sup>.\n\n"
@@ -2,19 +2,18 @@
2
2
  :id: 367
3
3
  :name: Bozo sort
4
4
  :url: http://projecteuler.net/problem=367
5
- :content: "\r\n<p>\r\n<b>Bozo sort</b>, not to be confused with the slightly less
6
- efficient <b>bogo sort</b>, consists out of checking if the input sequence is sorted
7
- and if not swapping randomly two elements. This is repeated until eventually the
8
- sequence is sorted.\r\n</p>\r\n<p>\r\nIf we consider all permutations of the first
9
- 4 natural numbers as input the expectation value of the number of swaps, averaged
10
- over all 4! input sequences is 24.75.<br>\r\nThe already sorted sequence takes 0
11
- steps. \r\n</p>\r\n<p>\r\nIn this problem we consider the following variant on bozo
12
- sort.<br>\r\nIf the sequence is not in order we pick three elements at random and
13
- shuffle these three elements randomly.<br>\r\nAll 3!=6 permutations of those three
14
- elements are equally likely. <br>\r\nThe already sorted sequence will take 0 steps.<br>\r\nIf
5
+ :content: " **Bozo sort** , not to be confused with the slightly less efficient **bogo
6
+ sort** , consists out of checking if the input sequence is sorted and if not swapping
7
+ randomly two elements. This is repeated until eventually the sequence is sorted.\n\nIf
15
8
  we consider all permutations of the first 4 natural numbers as input the expectation
16
- value of the number of shuffles, averaged over all 4! input sequences is 27.5. <br>\r\nConsider
17
- as input sequences the permutations of the first 11 natural numbers.<br>\r\nAveraged
18
- over all 11! input sequences, what is the expected number of shuffles this sorting
19
- algorithm will perform?\r\n</p>\r\n<p>\r\nGive your answer rounded to the nearest
20
- integer.\r\n</p>\r\n"
9
+ value of the number of swaps, averaged over all 4! input sequences is 24.75. \n\rThe
10
+ already sorted sequence takes 0 steps.\n\nIn this problem we consider the following
11
+ variant on bozo sort. \n\rIf the sequence is not in order we pick three elements
12
+ at random and shuffle these three elements randomly. \n\rAll 3!=6 permutations
13
+ of those three elements are equally likely. \n\rThe already sorted sequence will
14
+ take 0 steps. \n\rIf we consider all permutations of the first 4 natural numbers
15
+ as input the expectation value of the number of shuffles, averaged over all 4! input
16
+ sequences is 27.5. \n\rConsider as input sequences the permutations of the first
17
+ 11 natural numbers. \n\rAveraged over all 11! input sequences, what is the expected
18
+ number of shuffles this sorting algorithm will perform?\n\nGive your answer rounded
19
+ to the nearest integer.\n\n"
@@ -2,38 +2,21 @@
2
2
  :id: 368
3
3
  :name: A Kempner-like series
4
4
  :url: http://projecteuler.net/problem=368
5
- :content: "\r\n<p>\r\n</p>\n<table><tr>\n<td>The <b> harmonic series </b> 1</td>\r\n
6
- \ <td>+</td>\n<td><table class=\"frac\">\n<tr><td>1</td></tr>\n<tr><td class=\"overline\">2</td></tr>\n</table></td>\r\n
7
- \ <td>+</td>\r\n <td><table class=\"frac\">\n<tr><td>1</td></tr>\n<tr><td class=\"overline\">3</td></tr>\n</table></td>\r\n
8
- \ <td>+</td>\r\n <td><table class=\"frac\">\n<tr><td>1</td></tr>\n<tr><td class=\"overline\">4</td></tr>\n</table></td>\r\n
9
- \ <td>+ ... is well known to be divergent. </td>\r\n</tr></table>\n<p>\r\nIf we
10
- however omit from this series every term where the denominator has a 9 in it, the
11
- series remarkably enough converges to approximately 22.9206766193.<br>\r\nThis modified
12
- harmonic series is called the <b>Kempner</b> series.\r\n</p>\r\n<p>\r\nLet us now
13
- consider another modified harmonic series by omitting from the harmonic series every
14
- term where the denominator has 3 or more equal consecutive digits.\r\nOne can verify
15
- that out of the first 1200 terms of the harmonic series, only 20 terms will be omitted.<br>\r\nThese
16
- 20 omitted terms are:\r\n</p>\r\n<table>\n<td><table class=\"frac\" style=\"text-align:center;\">\n<tr><td>1</td></tr>\n<tr><td
17
- class=\"overline\">111</td></tr>\n</table></td>\r\n<td>,</td>\r\n<td><table class=\"frac\"
18
- style=\"text-align:center;\">\n<tr><td>1</td></tr>\n<tr><td class=\"overline\">222</td></tr>\n</table></td>\r\n<td>,</td>\r\n<td><table
19
- class=\"frac\" style=\"text-align:center;\">\n<tr><td>1</td></tr>\n<tr><td class=\"overline\">333</td></tr>\n</table></td>\r\n<td>,</td>\r\n<td><table
20
- class=\"frac\" style=\"text-align:center;\">\n<tr><td>1</td></tr>\n<tr><td class=\"overline\">444</td></tr>\n</table></td>\r\n<td>,</td>\r\n<td><table
21
- class=\"frac\" style=\"text-align:center;\">\n<tr><td>1</td></tr>\n<tr><td class=\"overline\">555</td></tr>\n</table></td>\r\n<td>,</td>\r\n<td><table
22
- class=\"frac\" style=\"text-align:center;\">\n<tr><td>1</td></tr>\n<tr><td class=\"overline\">666</td></tr>\n</table></td>\r\n<td>,</td>\r\n<td><table
23
- class=\"frac\" style=\"text-align:center;\">\n<tr><td>1</td></tr>\n<tr><td class=\"overline\">777</td></tr>\n</table></td>\r\n<td>,</td>\r\n<td><table
24
- class=\"frac\" style=\"text-align:center;\">\n<tr><td>1</td></tr>\n<tr><td class=\"overline\">888</td></tr>\n</table></td>\r\n<td>,</td>\r\n<td><table
25
- class=\"frac\" style=\"text-align:center;\">\n<tr><td>1</td></tr>\n<tr><td class=\"overline\">999</td></tr>\n</table></td>\r\n<td>,</td>\r\n<td><table
26
- class=\"frac\" style=\"text-align:center;\">\n<tr><td>1</td></tr>\n<tr><td class=\"overline\">1000</td></tr>\n</table></td>\r\n<td>,</td>\r\n<td><table
27
- class=\"frac\" style=\"text-align:center;\">\n<tr><td>1</td></tr>\n<tr><td class=\"overline\">1110</td></tr>\n</table></td>\r\n<td>,</td>\r\n</table>\n<table>\n<td><table
28
- class=\"frac\" style=\"text-align:center;\">\n<tr><td>1</td></tr>\n<tr><td class=\"overline\">1111</td></tr>\n</table></td>\r\n<td>,</td>\r\n<td><table
29
- class=\"frac\" style=\"text-align:center;\">\n<tr><td>1</td></tr>\n<tr><td class=\"overline\">1112</td></tr>\n</table></td>\r\n<td>,</td>\r\n<td><table
30
- class=\"frac\" style=\"text-align:center;\">\n<tr><td>1</td></tr>\n<tr><td class=\"overline\">1113</td></tr>\n</table></td>\r\n<td>,</td>\r\n<td><table
31
- class=\"frac\" style=\"text-align:center;\">\n<tr><td>1</td></tr>\n<tr><td class=\"overline\">1114</td></tr>\n</table></td>\r\n<td>,</td>\r\n<td><table
32
- class=\"frac\" style=\"text-align:center;\">\n<tr><td>1</td></tr>\n<tr><td class=\"overline\">1115</td></tr>\n</table></td>\r\n<td>,</td>\r\n<td><table
33
- class=\"frac\" style=\"text-align:center;\">\n<tr><td>1</td></tr>\n<tr><td class=\"overline\">1116</td></tr>\n</table></td>\r\n<td>,</td>\r\n<td><table
34
- class=\"frac\" style=\"text-align:center;\">\n<tr><td>1</td></tr>\n<tr><td class=\"overline\">1117</td></tr>\n</table></td>\r\n<td>,</td>\r\n<td><table
35
- class=\"frac\" style=\"text-align:center;\">\n<tr><td>1</td></tr>\n<tr><td class=\"overline\">1118</td></tr>\n</table></td>\r\n<td>
36
- and </td>\r\n<td><table class=\"frac\" style=\"text-align:center;\">\n<tr><td>1</td></tr>\n<tr><td
37
- class=\"overline\">1119</td></tr>\n</table></td>\r\n<td>.</td>\r\n\r\n</table>\n<p>\r\nThis
38
- series converges as well.\r\n</p>\r\n<p> \r\nFind the value the series converges
39
- to.<br>\r\nGive your answer rounded to 10 digits behind the decimal point.\r\n</p>\r\n\r\n\r\n"
5
+ :content: "| The **harmonic series** 1 | + | \n\n| 1 |\n| 2 |\n\n | + | \n\n| 1 |\n|
6
+ 3 |\n\n | + | \n\n| 1 |\n| 4 |\n\n | + ... is well known to be divergent. |\n\nIf
7
+ we however omit from this series every term where the denominator has a 9 in it,
8
+ the series remarkably enough converges to approximately 22.9206766193. \n\rThis
9
+ modified harmonic series is called the **Kempner** series.\n\nLet us now consider
10
+ another modified harmonic series by omitting from the harmonic series every term
11
+ where the denominator has 3 or more equal consecutive digits.\rOne can verify that
12
+ out of the first 1200 terms of the harmonic series, only 20 terms will be omitted.
13
+ \ \n\rThese 20 omitted terms are:\n\n \n \n\n| 1 |\n| 111 |\n\n | , | \n\n| 1 |\n|
14
+ 222 |\n\n | , | \n\n| 1 |\n| 333 |\n\n | , | \n\n| 1 |\n| 444 |\n\n | , | \n\n|
15
+ 1 |\n| 555 |\n\n | , | \n\n| 1 |\n| 666 |\n\n | , | \n\n| 1 |\n| 777 |\n\n | , |
16
+ \n\n| 1 |\n| 888 |\n\n | , | \n\n| 1 |\n| 999 |\n\n | , | \n\n| 1 |\n| 1000 |\n\n
17
+ | , | \n\n| 1 |\n| 1110 |\n\n | , |\n\n \n \n\n| 1 |\n| 1111 |\n\n | , | \n\n| 1
18
+ |\n| 1112 |\n\n | , | \n\n| 1 |\n| 1113 |\n\n | , | \n\n| 1 |\n| 1114 |\n\n | ,
19
+ | \n\n| 1 |\n| 1115 |\n\n | , | \n\n| 1 |\n| 1116 |\n\n | , | \n\n| 1 |\n| 1117
20
+ |\n\n | , | \n\n| 1 |\n| 1118 |\n\n | and | \n\n| 1 |\n| 1119 |\n\n | . |\n\nThis
21
+ series converges as well.\n\nFind the value the series converges to. \n\rGive your
22
+ answer rounded to 10 digits behind the decimal point.\n\n"
@@ -2,14 +2,10 @@
2
2
  :id: 369
3
3
  :name: Badugi
4
4
  :url: http://projecteuler.net/problem=369
5
- :content: "\r\n<p>In a standard 52 card deck of playing cards, a set of 4 cards is
6
- a <b>Badugi</b> if it contains 4 cards with no pairs and no two cards of the same
7
- suit.</p>\r\n\r\n<p>Let f(<var>n</var>) be the number of ways to choose <var>n</var>
8
- cards with a 4 card subset that is a Badugi. For example, there are 2598960 ways
9
- to choose five cards from a standard 52 card deck, of which 514800 contain a 4 card
10
- subset that is a Badugi, so f(5) = 514800.</p>\r\n\r\n<p>Find <img src=\"images/symbol_sum.gif\"
11
- width=\"11\" height=\"14\" alt=\"∑\" border=\"0\" style=\"vertical-align:middle;\">f(<var>n</var>)
12
- \ for 4 <img src=\"images/symbol_le.gif\" width=\"10\" height=\"12\" alt=\"≤\" border=\"0\"
13
- style=\"vertical-align:middle;\"><var>n</var> <img src=\"images/symbol_le.gif\"
14
- width=\"10\" height=\"12\" alt=\"≤\" border=\"0\" style=\"vertical-align:middle;\">
15
- 13.</p>\r\n\r\n"
5
+ :content: |+
6
+ In a standard 52 card deck of playing cards, a set of 4 cards is a **Badugi** if it contains 4 cards with no pairs and no two cards of the same suit.
7
+
8
+ Let f(<var>n</var>) be the number of ways to choose <var>n</var> cards with a 4 card subset that is a Badugi. For example, there are 2598960 ways to choose five cards from a standard 52 card deck, of which 514800 contain a 4 card subset that is a Badugi, so f(5) = 514800.
9
+
10
+ Find ![∑](/home/will/src/euler-manager/config/../data/images/symbol_sum.gif)f(<var>n</var>) for 4 ![≤](/home/will/src/euler-manager/config/../data/images/symbol_le.gif) <var>n</var> ![≤](/home/will/src/euler-manager/config/../data/images/symbol_le.gif) 13.
11
+
data/data/problems/37.yml CHANGED
@@ -2,9 +2,10 @@
2
2
  :id: 37
3
3
  :name: Truncatable primes
4
4
  :url: http://projecteuler.net/problem=37
5
- :content: "\r\n\n<p>The number 3797 has an interesting property. Being prime itself,
6
- it is possible to continuously remove digits from left to right, and remain prime
7
- at each stage: 3797, 797, 97, and 7. Similarly we can work from right to left: 3797,
8
- 379, 37, and 3.</p>\n<p>Find the sum of the only eleven primes that are both truncatable
9
- from left to right and right to left.</p>\n<p class=\"info\">NOTE: 2, 3, 5, and
10
- 7 are not considered to be truncatable primes.</p>\n\r\n"
5
+ :content: |+
6
+ The number 3797 has an interesting property. Being prime itself, it is possible to continuously remove digits from left to right, and remain prime at each stage: 3797, 797, 97, and 7. Similarly we can work from right to left: 3797, 379, 37, and 3.
7
+
8
+ Find the sum of the only eleven primes that are both truncatable from left to right and right to left.
9
+
10
+ NOTE: 2, 3, 5, and 7 are not considered to be truncatable primes.
11
+
@@ -1,16 +1,13 @@
1
1
  ---
2
2
  :id: 370
3
- :name: "Geometric triangles\r\n"
3
+ :name: Geometric triangles
4
4
  :url: http://projecteuler.net/problem=370
5
- :content: "\r\n<p>Let us define a <i>geometric triangle</i> as an integer sided triangle
6
- with sides <var>a</var> <img src=\"images/symbol_le.gif\" width=\"10\" height=\"12\"
7
- alt=\"≤\" border=\"0\" style=\"vertical-align:middle;\"><var>b</var> <img src=\"images/symbol_le.gif\"
8
- width=\"10\" height=\"12\" alt=\"≤\" border=\"0\" style=\"vertical-align:middle;\"><var>c</var>
9
- so that its sides form a <b>geometric progression</b>, i.e. <var>b<sup>2</sup></var> = <var>a</var> · <var>c</var> . </p>
10
- \r\n\r\n<p>An example of such a geometric triangle is the triangle with sides <var>a</var>
11
- = 144, <var>b</var> = 156 and <var>c</var> = 169.</p>\r\n\r\n<p>There are 861805
12
- geometric triangles with perimeter <img src=\"images/symbol_le.gif\" width=\"10\"
13
- height=\"12\" alt=\"≤\" border=\"0\" style=\"vertical-align:middle;\"> 10<sup>6</sup>
14
- .</p>\r\n\r\n<p>How many geometric triangles exist with perimeter <img src=\"images/symbol_le.gif\"
15
- width=\"10\" height=\"12\" alt=\"≤\" border=\"0\" style=\"vertical-align:middle;\">
16
- 2.5·10<sup>13</sup> ?</p>\r\n\r\n"
5
+ :content: |+
6
+ Let us define a _geometric triangle_ as an integer sided triangle with sides <var>a</var> ![≤](/home/will/src/euler-manager/config/../data/images/symbol_le.gif) <var>b</var> ![≤](/home/will/src/euler-manager/config/../data/images/symbol_le.gif) <var>c</var> so that its sides form a **geometric progression** , i.e. <var>b<sup>2</sup></var> = <var>a</var> · <var>c</var> . 
7
+
8
+ An example of such a geometric triangle is the triangle with sides <var>a</var> = 144, <var>b</var> = 156 and <var>c</var> = 169.
9
+
10
+ There are 861805 geometric triangles with perimeter ![≤](/home/will/src/euler-manager/config/../data/images/symbol_le.gif) 10<sup>6</sup> .
11
+
12
+ How many geometric triangles exist with perimeter ![≤](/home/will/src/euler-manager/config/../data/images/symbol_le.gif) 2.5·10<sup>13</sup> ?
13
+
@@ -2,12 +2,11 @@
2
2
  :id: 371
3
3
  :name: Licence plates
4
4
  :url: http://projecteuler.net/problem=371
5
- :content: "\r\n<p>\r\nOregon licence plates consist of three letters followed by a
6
- three digit number (each digit can be from [0..9]).<br>\r\nWhile driving to work
7
- Seth plays the following game:<br>\r\nWhenever the numbers of two licence plates
8
- seen on his trip add to 1000 that's a win.\r\n</p>\r\n<p>\r\nE.g. MIC-012 and HAN-988
9
- is a win and RYU-500 and SET-500 too. (as long as he sees them in the same trip).
10
- \r\n</p>\n<p>\r\n</p>\n<p>\r\nFind the expected number of plates he needs to see
11
- for a win.<br>\r\nGive your answer rounded to 8 decimal places behind the decimal
12
- point.\r\n</p>\r\n<p style=\"font-size:88%\">\r\n<b>Note:</b> We assume that each
13
- licence plate seen is equally likely to have any three digit number on it.\r\n</p>\r\n\r\n\r\n\r\n\r\n"
5
+ :content: "Oregon licence plates consist of three letters followed by a three digit
6
+ number (each digit can be from [0..9]). \n\rWhile driving to work Seth plays the
7
+ following game: \n\rWhenever the numbers of two licence plates seen on his trip
8
+ add to 1000 that's a win.\n\nE.g. MIC-012 and HAN-988 is a win and RYU-500 and SET-500
9
+ too. (as long as he sees them in the same trip).\n\nFind the expected number of
10
+ plates he needs to see for a win. \n\rGive your answer rounded to 8 decimal places
11
+ behind the decimal point.\n\n**Note:** We assume that each licence plate seen is
12
+ equally likely to have any three digit number on it.\n\n"
@@ -2,15 +2,12 @@
2
2
  :id: 372
3
3
  :name: Pencils of rays
4
4
  :url: http://projecteuler.net/problem=372
5
- :content: "\r\n<p>\r\nLet R(<var>M</var>, <var>N</var>) be the number of lattice points
6
- (<var>x</var>, <var>y</var>) which satisfy <var>M</var><img src=\"images/symbol_lt.gif\"
7
- width=\"10\" height=\"10\" alt=\"&lt;\" border=\"0\" style=\"vertical-align:middle;\"><var>x</var><img
8
- src=\"images/symbol_le.gif\" width=\"10\" height=\"12\" alt=\"≤\" border=\"0\" style=\"vertical-align:middle;\"><var>N</var>,
9
- <var>M</var><img src=\"images/symbol_lt.gif\" width=\"10\" height=\"10\" alt=\"&lt;\"
10
- border=\"0\" style=\"vertical-align:middle;\"><var>y</var><img src=\"images/symbol_le.gif\"
11
- width=\"10\" height=\"12\" alt=\"≤\" border=\"0\" style=\"vertical-align:middle;\"><var>N</var>
12
- and <img style=\"vertical-align:middle\" src=\"project/images/p_372_pencilray1.jpg\">
13
- is odd.<br>\r\nWe can verify that R(0, 100) = 3019 and R(100, 10000) = 29750422.<br>\r\nFind
14
- R(2·10<sup>6</sup>, 10<sup>9</sup>).\r\n</p>\r\n\r\n<p>\r\n<u><i>Note</i></u>: <img
15
- style=\"vertical-align:middle\" src=\"project/images/p_372_pencilray2.gif\"> represents
16
- the floor function.</p>\r\n\r\n"
5
+ :content: "Let R(<var>M</var>, <var>N</var>) be the number of lattice points (<var>x</var>,
6
+ <var>y</var>) which satisfy <var>M</var> ![<](/home/will/src/euler-manager/config/../data/images/symbol_lt.gif)<var>x</var>
7
+ ![≤](/home/will/src/euler-manager/config/../data/images/symbol_le.gif)<var>N</var>,
8
+ <var>M</var> ![<](/home/will/src/euler-manager/config/../data/images/symbol_lt.gif)<var>y</var>
9
+ ![≤](/home/will/src/euler-manager/config/../data/images/symbol_le.gif)<var>N</var>
10
+ and ![](/home/will/src/euler-manager/config/../data/images/p_372_pencilray1.jpg)
11
+ is odd. \n\rWe can verify that R(0, 100) = 3019 and R(100, 10000) = 29750422. \n\rFind
12
+ R(2·10<sup>6</sup>, 10<sup>9</sup>).\n\n<u><i>Note</i></u>: ![](/home/will/src/euler-manager/config/../data/images/p_372_pencilray2.gif)
13
+ represents the floor function.\n\n"
@@ -2,9 +2,8 @@
2
2
  :id: 373
3
3
  :name: Circumscribed Circles
4
4
  :url: http://projecteuler.net/problem=373
5
- :content: "\r\n<p>\r\nEvery triangle has a circumscribed circle that goes through
6
- the three vertices.\r\nConsider all integer sided triangles for which the radius
7
- of the circumscribed circle is integral as well.\r\n</p>\r\n<p>\r\nLet S(<var>n</var>)
8
- be the sum of the radii of the circumscribed circles of all such triangles for which
9
- the radius does not exceed <var>n</var>.\r\n</p>\r\n<p>S(100)=4950 and S(1200)=1653605.\r\n</p>\r\n<p>\r\nFind
10
- S(10<sup>7</sup>).\r\n</p>\r\n\r\n"
5
+ :content: "Every triangle has a circumscribed circle that goes through the three vertices.\rConsider
6
+ all integer sided triangles for which the radius of the circumscribed circle is
7
+ integral as well.\n\nLet S(<var>n</var>) be the sum of the radii of the circumscribed
8
+ circles of all such triangles for which the radius does not exceed <var>n</var>.\n\nS(100)=4950
9
+ and S(1200)=1653605.\n\nFind S(10<sup>7</sup>).\n\n"
@@ -2,24 +2,20 @@
2
2
  :id: 374
3
3
  :name: Maximum Integer Partition Product
4
4
  :url: http://projecteuler.net/problem=374
5
- :content: "\r\n<p>An integer partition of a number <var>n</var> is a way of writing
6
- <var>n</var> as a sum of positive integers.</p>\r\n\r\n<p>Partitions that differ
7
- only in the order of their summands are considered the same.\r\nA partition of <var>n</var>
8
- into <b>distinct parts</b> is a partition of <var>n</var> in which every part occurs
9
- at most once.</p>\r\n\r\n<p>The partitions of 5 into distinct parts are:\r\n<br>5,
10
- 4+1 and 3+2.</p>\r\n\r\n<p>Let f(<var>n</var>) be the maximum product of the parts
11
- of any such partition of <var>n</var> into distinct parts and let m(<var>n</var>)
12
- be the number of elements of any such partition of <var>n</var> with that product.</p>\r\n\r\n<p>So
13
- f(5)=6 and m(5)=2.</p>\r\n\r\n<p>For <var>n</var>=10 the partition with the largest
14
- product is 10=2+3+5, which gives f(10)=30 and m(10)=3.\r\n<br>And their product,
15
- f(10)·m(10) = 30·3 = 90</p>\r\n\r\n<p>It can be verified that\r\n<br><img src=\"images/symbol_sum.gif\"
16
- width=\"11\" height=\"14\" alt=\"∑\" border=\"0\" style=\"vertical-align:middle;\">f(<var>n</var>)·m(<var>n</var>)
17
- for 1 <img src=\"images/symbol_le.gif\" width=\"10\" height=\"12\" alt=\"≤\" border=\"0\"
18
- style=\"vertical-align:middle;\"><var>n</var> <img src=\"images/symbol_le.gif\"
19
- width=\"10\" height=\"12\" alt=\"≤\" border=\"0\" style=\"vertical-align:middle;\">
20
- 100 = 1683550844462.</p>\r\n\r\n<p>Find <img src=\"images/symbol_sum.gif\" width=\"11\"
21
- height=\"14\" alt=\"∑\" border=\"0\" style=\"vertical-align:middle;\">f(<var>n</var>)·m(<var>n</var>)
22
- for 1 <img src=\"images/symbol_le.gif\" width=\"10\" height=\"12\" alt=\"≤\" border=\"0\"
23
- style=\"vertical-align:middle;\"><var>n</var> <img src=\"images/symbol_le.gif\"
24
- width=\"10\" height=\"12\" alt=\"≤\" border=\"0\" style=\"vertical-align:middle;\">
25
- 10<sup>14</sup>.\r\n<br>Give your answer modulo 982451653, the 50 millionth prime.</p>\r\n\r\n"
5
+ :content: "An integer partition of a number <var>n</var> is a way of writing <var>n</var>
6
+ as a sum of positive integers.\n\nPartitions that differ only in the order of their
7
+ summands are considered the same.\rA partition of <var>n</var> into **distinct parts**
8
+ is a partition of <var>n</var> in which every part occurs at most once.\n\nThe partitions
9
+ of 5 into distinct parts are:\r \n5, 4+1 and 3+2.\n\nLet f(<var>n</var>) be the
10
+ maximum product of the parts of any such partition of <var>n</var> into distinct
11
+ parts and let m(<var>n</var>) be the number of elements of any such partition of
12
+ <var>n</var> with that product.\n\nSo f(5)=6 and m(5)=2.\n\nFor <var>n</var>=10
13
+ the partition with the largest product is 10=2+3+5, which gives f(10)=30 and m(10)=3.\r
14
+ \ \nAnd their product, f(10)·m(10) = 30·3 = 90\n\nIt can be verified that\r \n
15
+ ![∑](/home/will/src/euler-manager/config/../data/images/symbol_sum.gif)f(<var>n</var>)·m(<var>n</var>)
16
+ for 1 ![≤](/home/will/src/euler-manager/config/../data/images/symbol_le.gif) <var>n</var>
17
+ ![≤](/home/will/src/euler-manager/config/../data/images/symbol_le.gif) 100 = 1683550844462.\n\nFind
18
+ ![∑](/home/will/src/euler-manager/config/../data/images/symbol_sum.gif)f(<var>n</var>)·m(<var>n</var>)
19
+ for 1 ![≤](/home/will/src/euler-manager/config/../data/images/symbol_le.gif) <var>n</var>
20
+ ![≤](/home/will/src/euler-manager/config/../data/images/symbol_le.gif) 10<sup>14</sup>.\r
21
+ \ \nGive your answer modulo 982451653, the 50 millionth prime.\n\n"
@@ -2,22 +2,18 @@
2
2
  :id: 375
3
3
  :name: Minimum of subsequences
4
4
  :url: http://projecteuler.net/problem=375
5
- :content: "\r\n<style type=\"text/css\">\r\ntable.p375 td {\r\n padding: 0px 3px
6
- 0px 3px;\r\n vertical-align: bottom;\r\n text-align: left;\r\n}\r\n</style>\n<p>Let
5
+ :content: "<style type=\"text/css\"><![CDATA[\r\ntable.p375 td {\r\n padding: 0px
6
+ 3px 0px 3px;\r\n vertical-align: bottom;\r\n text-align: left;\r\n}\r\n]]></style>\n\nLet
7
7
  <var>S</var><sub><var>n</var></sub> be an integer sequence produced with the following
8
- pseudo-random number generator:</p>\r\n<center><table class=\"p375\">\n<tr>\n<td
9
- style=\"text-align:right\">\n<var>S</var><sub>0</sub>\n</td>\r\n <td>=<sub> </sub>\n</td>\r\n
10
- \ <td>290797<sub> </sub>\n</td>\r\n </tr>\n<tr>\n<td>\n<var>S</var><sub><var>n</var>+1</sub>\n</td>\r\n
8
+ pseudo-random number generator:\n\n<center><table class=\"p375\">\r\n <tr>\r\n
9
+ \ <td style=\"text-align:right\">\n<var>S</var><sub>0</sub>\n</td>\r\n <td>=<sub> </sub>\n</td>\r\n
10
+ \ <td>290797<sub> </sub>\n</td>\r\n </tr>\n<tr>\r\n <td>\n<var>S</var><sub><var>n</var>+1</sub>\n</td>\r\n
11
11
  \ <td>=<sub> </sub>\n</td>\r\n <td>\n<var>S</var><sub><var>n</var></sub><sup>2</sup>
12
- mod 50515093</td>\r\n </tr>\n</table></center>\r\n\r\n<p>\r\nLet A(<var>i</var>,
13
- <var>j</var>) be the minimum of the numbers <var>S</var><sub><var>i</var></sub>,
14
- <var>S</var><sub><var>i</var>+1</sub>, ... , <var>S</var><sub><var>j</var></sub>
15
- for <var>i</var> <img src=\"images/symbol_le.gif\" width=\"10\" height=\"12\" alt=\"≤\"
16
- border=\"0\" style=\"vertical-align:middle;\"><var>j</var>.<br>\r\nLet M(<var>N</var>)
17
- = ΣA(<var>i</var>, <var>j</var>) for 1 <img src=\"images/symbol_le.gif\" width=\"10\"
18
- height=\"12\" alt=\"≤\" border=\"0\" style=\"vertical-align:middle;\"><var>i</var>
19
- <img src=\"images/symbol_le.gif\" width=\"10\" height=\"12\" alt=\"≤\" border=\"0\"
20
- style=\"vertical-align:middle;\"><var>j</var> <img src=\"images/symbol_le.gif\"
21
- width=\"10\" height=\"12\" alt=\"≤\" border=\"0\" style=\"vertical-align:middle;\"><var>N</var>.<br>\r\nWe
22
- can verify that M(10) = 432256955 and M(10 000) = 3264567774119.</p>\r\n\r\n<p>\r\nFind
23
- M(2 000 000 000).\r\n</p>\r\n"
12
+ mod 50515093</td>\r\n </tr>\r\n</table></center>\n\nLet A(<var>i</var>, <var>j</var>)
13
+ be the minimum of the numbers <var>S</var><sub><var>i</var></sub>, <var>S</var><sub><var>i</var>+1</sub>,
14
+ ... , <var>S</var><sub><var>j</var></sub> for <var>i</var> ![≤](/home/will/src/euler-manager/config/../data/images/symbol_le.gif)
15
+ <var>j</var>. \n\rLet M(<var>N</var>) = ΣA(<var>i</var>, <var>j</var>) for 1 ![≤](/home/will/src/euler-manager/config/../data/images/symbol_le.gif)
16
+ <var>i</var> ![≤](/home/will/src/euler-manager/config/../data/images/symbol_le.gif)
17
+ <var>j</var> ![≤](/home/will/src/euler-manager/config/../data/images/symbol_le.gif)
18
+ <var>N</var>. \n\rWe can verify that M(10) = 432256955 and M(10 000) = 3264567774119.\n\nFind
19
+ M(2 000 000 000).\n\n"
@@ -2,24 +2,22 @@
2
2
  :id: 376
3
3
  :name: Nontransitive sets of dice
4
4
  :url: http://projecteuler.net/problem=376
5
- :content: "\r\n<p>\r\nConsider the following set of dice with nonstandard pips:\r\n</p>\r\n\r\n<p>\r\nDie
6
- A: 1 4 4 4 4 4<br>\r\nDie B: 2 2 2 5 5 5<br>\r\nDie C: 3 3 3 3 3 6<br></p>\r\n\r\n<p>\r\nA
7
- game is played by two players picking a die in turn and rolling it. The player who
8
- rolls the highest value wins.\r\n</p>\r\n\r\n<p>\r\nIf the first player picks die
9
- A and the second player picks die B we get<br>\r\nP(second player wins) = <sup>7</sup>/<sub>12</sub>
10
- &gt; <sup>1</sup>/<sub>2</sub></p>\r\n\r\n<p>\r\nIf the first player picks die B
11
- and the second player picks die C we get<br>\r\nP(second player wins) = <sup>7</sup>/<sub>12</sub>
12
- &gt; <sup>1</sup>/<sub>2</sub></p>\r\n\r\n<p>\r\nIf the first player picks die C
13
- and the second player picks die A we get<br>\r\nP(second player wins) = <sup>25</sup>/<sub>36</sub>
14
- &gt; <sup>1</sup>/<sub>2</sub></p>\r\n\r\n<p>\r\nSo whatever die the first player
15
- picks, the second player can pick another die and have a larger than 50% chance
16
- of winning.<br>\r\nA set of dice having this property is called a <b>nontransitive
17
- set of dice</b>.\r\n</p>\r\n\r\n<p>\r\nWe wish to investigate how many sets of nontransitive
18
- dice exist. We will assume the following conditions:</p>\n<ul>\n<li>There are three
19
- six-sided dice with each side having between 1 and <var>N</var> pips, inclusive.</li>\r\n<li>Dice
20
- with the same set of pips are equal, regardless of which side on the die the pips
21
- are located.</li>\r\n<li>The same pip value may appear on multiple dice; if both
22
- players roll the same value neither player wins.</li>\r\n<li>The sets of dice {A,B,C},
23
- {B,C,A} and {C,A,B} are the same set.</li>\r\n</ul>\n<p>\r\nFor <var>N</var> = 7
24
- we find there are 9780 such sets.<br>\r\nHow many are there for <var>N</var> = 30
25
- ?\r\n</p>\r\n"
5
+ :content: "Consider the following set of dice with nonstandard pips:\n\nDie A: 1 4
6
+ 4 4 4 4 \n\rDie B: 2 2 2 5 5 5 \n\rDie C: 3 3 3 3 3 6\n\nA game is played by two
7
+ players picking a die in turn and rolling it. The player who rolls the highest value
8
+ wins.\n\nIf the first player picks die A and the second player picks die B we get
9
+ \ \n\rP(second player wins) = <sup>7</sup>/<sub>12</sub> > <sup>1</sup>/<sub>2</sub>\n\nIf
10
+ the first player picks die B and the second player picks die C we get \n\rP(second
11
+ player wins) = <sup>7</sup>/<sub>12</sub> > <sup>1</sup>/<sub>2</sub>\n\nIf the
12
+ first player picks die C and the second player picks die A we get \n\rP(second
13
+ player wins) = <sup>25</sup>/<sub>36</sub> > <sup>1</sup>/<sub>2</sub>\n\nSo whatever
14
+ die the first player picks, the second player can pick another die and have a larger
15
+ than 50% chance of winning. \n\rA set of dice having this property is called a
16
+ **nontransitive set of dice** .\n\nWe wish to investigate how many sets of nontransitive
17
+ dice exist. We will assume the following conditions:\n\n- There are three six-sided
18
+ dice with each side having between 1 and <var>N</var> pips, inclusive.\n- Dice with
19
+ the same set of pips are equal, regardless of which side on the die the pips are
20
+ located.\n- The same pip value may appear on multiple dice; if both players roll
21
+ the same value neither player wins.\n- The sets of dice {A,B,C}, {B,C,A} and {C,A,B}
22
+ are the same set.\n\nFor <var>N</var> = 7 we find there are 9780 such sets. \n\rHow
23
+ many are there for <var>N</var> = 30 ?\n\n"
@@ -2,10 +2,9 @@
2
2
  :id: 377
3
3
  :name: Sum of digits, experience 13
4
4
  :url: http://projecteuler.net/problem=377
5
- :content: "\r\n<p>\r\nThere are 16 positive integers that do not have a zero in their
6
- digits and that have a digital sum equal to 5, namely: <br>\r\n5, 14, 23, 32, 41,
7
- 113, 122, 131, 212, 221, 311, 1112, 1121, 1211, 2111 and 11111.<br>\r\nTheir sum
8
- is 17891.\r\n</p>\r\n<p>\r\nLet <var>f</var>(<var>n</var>) be the sum of all positive
9
- integers that do not have a zero in their digits and have a digital sum equal to
10
- <var>n</var>.\r\n</p>\r\n<p>\r\nFind <img src=\"project/images/sod_13.gif\" style=\"margin-top:-8px;\">.<br>\r\nGive
11
- the last 9 digits as your answer.\r\n</p>\r\n\r\n"
5
+ :content: "There are 16 positive integers that do not have a zero in their digits
6
+ and that have a digital sum equal to 5, namely: \n\r5, 14, 23, 32, 41, 113, 122,
7
+ 131, 212, 221, 311, 1112, 1121, 1211, 2111 and 11111. \n\rTheir sum is 17891.\n\nLet
8
+ <var>f</var>(<var>n</var>) be the sum of all positive integers that do not have
9
+ a zero in their digits and have a digital sum equal to <var>n</var>.\n\nFind ![](/home/will/src/euler-manager/config/../data/images/sod_13.gif).
10
+ \ \n\rGive the last 9 digits as your answer.\n\n"
@@ -2,14 +2,11 @@
2
2
  :id: 378
3
3
  :name: Triangle Triples
4
4
  :url: http://projecteuler.net/problem=378
5
- :content: "\r\n<p>\r\n</p>\n<table class=\"formula\"><tr>\n<td>\r\nLet T(<var>n</var>)
6
- be the <var>n</var><sup>th</sup> triangle number, so T(<var>n</var>) =\r\n</td>\r\n<td>\r\n<table
7
- class=\"frac\" style=\"font-size: smaller\">\n<tr><td>\n<var>n</var>(<var>n</var>+1)</td></tr>\n<tr><td
8
- class=\"overline\" text-align:center>2</td></tr>\n</table>\n</td>\r\n<td>\r\n.\r\n</td>\r\n</tr></table>\n<p>\r\nLet
9
- dT(<var>n</var>) be the number of divisors of T(<var>n</var>).<br>\r\nE.g.:\r\nT(7)
10
- = 28 and dT(7) = 6.\r\n</p>\r\n<p>\r\nLet Tr(<var>n</var>) be the number of triples
11
- (<var>i</var>, <var>j</var>, <var>k</var>) such that 1 <img src=\"images/symbol_le.gif\"
12
- width=\"10\" height=\"12\" alt=\"≤\" border=\"0\" style=\"vertical-align:middle;\"><var>i
13
- \ n</var> and dT(<var>i</var>) &gt; dT(<var>j</var>) &gt; dT(<var>k</var>).<br>\r\nTr(20)
14
- = 14, Tr(100) = 5772 and Tr(1000) = 11174776.\r\n</p>\r\n<p>\r\nFind Tr(60 000 000).
15
- <br>\r\nGive the last 18 digits of your answer.\r\n</p>\r\n\r\n"
5
+ :content: "| \rLet T(<var>n</var>) be the <var>n</var><sup>th</sup> triangle number,
6
+ so T(<var>n</var>) =\r | \n\n| <var>n</var> (<var>n</var>+1) |\n| 2 |\n\n | \r.\r
7
+ |\n\nLet dT(<var>n</var>) be the number of divisors of T(<var>n</var>). \n\rE.g.:\rT(7)
8
+ = 28 and dT(7) = 6.\n\nLet Tr(<var>n</var>) be the number of triples (<var>i</var>,
9
+ <var>j</var>, <var>k</var>) such that 1 ![≤](/home/will/src/euler-manager/config/../data/images/symbol_le.gif)
10
+ <var>i n</var> and dT(<var>i</var>) > dT(<var>j</var>) > dT(<var>k</var>). \n\rTr(20)
11
+ = 14, Tr(100) = 5772 and Tr(1000) = 11174776.\n\nFind Tr(60 000 000). \n\rGive
12
+ the last 18 digits of your answer.\n\n"
@@ -2,14 +2,12 @@
2
2
  :id: 379
3
3
  :name: Least common multiple count
4
4
  :url: http://projecteuler.net/problem=379
5
- :content: "\r\n<p>\r\nLet <var>f</var>(<var>n</var>) be the number of couples (<var>x</var>,<var>y</var>)
6
- with <var>x</var> and <var>y</var> positive integers, <var>x</var> <img src=\"images/symbol_le.gif\"
7
- width=\"10\" height=\"12\" alt=\"≤\" border=\"0\" style=\"vertical-align:middle;\"><var>y</var>
8
- and the least common multiple of <var>x</var> and <var>y</var> equal to <var>n</var>.\r\n</p>\r\n<p>\r\nLet
9
- <var>g</var> be the <b>summatory function</b> of <var>f</var>, i.e.: \r\n<var>g</var>(<var>n</var>)
10
- = <img src=\"images/symbol_sum.gif\" width=\"11\" height=\"14\" alt=\"∑\" border=\"0\"
11
- style=\"vertical-align:middle;\"><var>f</var>(<var>i</var>) for 1 <img src=\"images/symbol_le.gif\"
12
- width=\"10\" height=\"12\" alt=\"≤\" border=\"0\" style=\"vertical-align:middle;\"><var>i</var>
13
- <img src=\"images/symbol_le.gif\" width=\"10\" height=\"12\" alt=\"≤\" border=\"0\"
14
- style=\"vertical-align:middle;\"><var>n</var>.\r\n</p>\n<p>\r\n</p>\n<p>\r\nYou
15
- are given that <var>g</var>(10<sup>6</sup>) = 37429395.\r\n</p>\r\n<p>\r\nFind <var>g</var>(10<sup>12</sup>).\r\n</p>\r\n\r\n\r\n\r\n\r\n\r\n\r\n"
5
+ :content: "Let <var>f</var>(<var>n</var>) be the number of couples (<var>x</var>,<var>y</var>)
6
+ with <var>x</var> and <var>y</var> positive integers, <var>x</var> ![≤](/home/will/src/euler-manager/config/../data/images/symbol_le.gif)
7
+ <var>y</var> and the least common multiple of <var>x</var> and <var>y</var> equal
8
+ to <var>n</var>.\n\nLet <var>g</var> be the **summatory function** of <var>f</var>,
9
+ i.e.: \r<var>g</var>(<var>n</var>) = ![∑](/home/will/src/euler-manager/config/../data/images/symbol_sum.gif)
10
+ <var>f</var>(<var>i</var>) for 1 ![≤](/home/will/src/euler-manager/config/../data/images/symbol_le.gif)
11
+ <var>i</var> ![≤](/home/will/src/euler-manager/config/../data/images/symbol_le.gif)
12
+ <var>n</var>.\n\nYou are given that <var>g</var>(10<sup>6</sup>) = 37429395.\n\nFind
13
+ <var>g</var>(10<sup>12</sup>).\n\n"
data/data/problems/38.yml CHANGED
@@ -2,17 +2,13 @@
2
2
  :id: 38
3
3
  :name: Pandigital multiples
4
4
  :url: http://projecteuler.net/problem=38
5
- :content: "\r\n<p>Take the number 192 and multiply it by each of 1, 2, and 3:</p>\r\n<blockquote>192
6
- <img src=\"images/symbol_times.gif\" width=\"9\" height=\"9\" alt=\"×\" border=\"0\"
7
- style=\"vertical-align:middle;\"> 1 = 192<br>\r\n192 <img src=\"images/symbol_times.gif\"
8
- width=\"9\" height=\"9\" alt=\"×\" border=\"0\" style=\"vertical-align:middle;\">
9
- 2 = 384<br>\r\n192 <img src=\"images/symbol_times.gif\" width=\"9\" height=\"9\"
10
- alt=\"×\" border=\"0\" style=\"vertical-align:middle;\"> 3 = 576</blockquote>\r\n<p>By
11
- concatenating each product we get the 1 to 9 pandigital, 192384576. We will call
12
- 192384576 the concatenated product of 192 and (1,2,3)</p>\r\n<p>The same can be
13
- achieved by starting with 9 and multiplying by 1, 2, 3, 4, and 5, giving the pandigital,
14
- 918273645, which is the concatenated product of 9 and (1,2,3,4,5).</p>\r\n<p>What
5
+ :content: "Take the number 192 and multiply it by each of 1, 2, and 3:\n\n> 192 ![×](/home/will/src/euler-manager/config/../data/images/symbol_times.gif)
6
+ 1 = 192 \n> \r192 ![×](/home/will/src/euler-manager/config/../data/images/symbol_times.gif)
7
+ 2 = 384 \n> \r192 ![×](/home/will/src/euler-manager/config/../data/images/symbol_times.gif)
8
+ 3 = 576\n\nBy concatenating each product we get the 1 to 9 pandigital, 192384576.
9
+ We will call 192384576 the concatenated product of 192 and (1,2,3)\n\nThe same can
10
+ be achieved by starting with 9 and multiplying by 1, 2, 3, 4, and 5, giving the
11
+ pandigital, 918273645, which is the concatenated product of 9 and (1,2,3,4,5).\n\nWhat
15
12
  is the largest 1 to 9 pandigital 9-digit number that can be formed as the concatenated
16
- product of an integer with (1,2, ... , <var>n</var>) where <var>n</var> <img src=\"images/symbol_gt.gif\"
17
- width=\"10\" height=\"10\" alt=\"&gt;\" border=\"0\" style=\"vertical-align:middle;\">
18
- 1?</p>\r\n\r\n"
13
+ product of an integer with (1,2, ... , <var>n</var>) where <var>n</var> ![>](/home/will/src/euler-manager/config/../data/images/symbol_gt.gif)
14
+ 1?\n\n"