euler-manager 0.1.1 → 0.2.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (618) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +3 -0
  3. data/.travis.yml +2 -1
  4. data/README.md +27 -21
  5. data/Rakefile +3 -2
  6. data/config/config.rb +6 -2
  7. data/data/answers.yml +431 -430
  8. data/data/images/{p_015.gif → p015.gif} +0 -0
  9. data/data/images/{p_068_1.gif → p068_1.gif} +0 -0
  10. data/data/images/{p_068_2.gif → p068_2.gif} +0 -0
  11. data/data/images/{p_085.gif → p085.gif} +0 -0
  12. data/data/images/{p_086.gif → p086.gif} +0 -0
  13. data/data/images/{p_090.gif → p090.gif} +0 -0
  14. data/data/images/{p_091_1.gif → p091_1.gif} +0 -0
  15. data/data/images/{p_091_2.gif → p091_2.gif} +0 -0
  16. data/data/images/{p_107_1.gif → p107_1.gif} +0 -0
  17. data/data/images/{p_107_2.gif → p107_2.gif} +0 -0
  18. data/data/images/{p_109.gif → p109.gif} +0 -0
  19. data/data/images/{p_126.gif → p126.gif} +0 -0
  20. data/data/images/{p_128.gif → p128.gif} +0 -0
  21. data/data/images/{p_138.gif → p138.gif} +0 -0
  22. data/data/images/{p_139.gif → p139.gif} +0 -0
  23. data/data/images/{p_143_torricelli.gif → p143_torricelli.gif} +0 -0
  24. data/data/images/{p_144_1.gif → p144_1.gif} +0 -0
  25. data/data/images/{p_144_2.gif → p144_2.gif} +0 -0
  26. data/data/images/{p_147.gif → p147.gif} +0 -0
  27. data/data/images/{p_150.gif → p150.gif} +0 -0
  28. data/data/images/{p_151.gif → p151.gif} +0 -0
  29. data/data/images/{p_152_sum.gif → p152_sum.gif} +0 -0
  30. data/data/images/{p_153_formule1.gif → p153_formule1.gif} +0 -0
  31. data/data/images/{p_153_formule2.gif → p153_formule2.gif} +0 -0
  32. data/data/images/{p_153_formule5.gif → p153_formule5.gif} +0 -0
  33. data/data/images/{p_153_formule6.gif → p153_formule6.gif} +0 -0
  34. data/data/images/{p_154_pyramid.gif → p154_pyramid.gif} +0 -0
  35. data/data/images/{p_155_capacitors1.gif → p155_capacitors1.gif} +0 -0
  36. data/data/images/{p_155_capsform.gif → p155_capsform.gif} +0 -0
  37. data/data/images/{p_155_capsmu.gif → p155_capsmu.gif} +0 -0
  38. data/data/images/{p_161_k9.gif → p161_k9.gif} +0 -0
  39. data/data/images/{p_161_trio1.gif → p161_trio1.gif} +0 -0
  40. data/data/images/{p_161_trio3.gif → p161_trio3.gif} +0 -0
  41. data/data/images/{p_163.gif → p163.gif} +0 -0
  42. data/data/images/{p_173_square_laminas.gif → p173_square_laminas.gif} +0 -0
  43. data/data/images/{p_177_quad.gif → p177_quad.gif} +0 -0
  44. data/data/images/{p_184.gif → p184.gif} +0 -0
  45. data/data/images/{p_189_colours.gif → p189_colours.gif} +0 -0
  46. data/data/images/{p_189_grid.gif → p189_grid.gif} +0 -0
  47. data/data/images/{p_194_Fig.png → p194_Fig.png} +0 -0
  48. data/data/images/{p_194_GraphA.png → p194_GraphA.png} +0 -0
  49. data/data/images/{p_194_GraphB.png → p194_GraphB.png} +0 -0
  50. data/data/images/{p_199_circles_in_circles.gif → p199_circles_in_circles.gif} +0 -0
  51. data/data/images/{p_201_laserbeam.gif → p201_laserbeam.gif} +0 -0
  52. data/data/images/{p_208_robotwalk.gif → p208_robotwalk.gif} +0 -0
  53. data/data/images/{p_215_crackfree.gif → p215_crackfree.gif} +0 -0
  54. data/data/images/{p_220.gif → p220.gif} +0 -0
  55. data/data/images/{p_226_formula.gif → p226_formula.gif} +0 -0
  56. data/data/images/{p_226_scoop2.gif → p226_scoop2.gif} +0 -0
  57. data/data/images/{p_228.png → p228.png} +0 -0
  58. data/data/images/{p_237.gif → p237.gif} +0 -0
  59. data/data/images/{p_244_example.gif → p244_example.gif} +0 -0
  60. data/data/images/{p_244_start.gif → p244_start.gif} +0 -0
  61. data/data/images/{p_244_target.gif → p244_target.gif} +0 -0
  62. data/data/images/{p_246_anim.gif → p246_anim.gif} +0 -0
  63. data/data/images/{p_246_ellipse.gif → p246_ellipse.gif} +0 -0
  64. data/data/images/{p_247_hypersquares.gif → p247_hypersquares.gif} +0 -0
  65. data/data/images/{p_251_cardano.gif → p251_cardano.gif} +0 -0
  66. data/data/images/{p_252_convexhole.gif → p252_convexhole.gif} +0 -0
  67. data/data/images/{p_255_Example.gif → p255_Example.gif} +0 -0
  68. data/data/images/{p_255_Heron.gif → p255_Heron.gif} +0 -0
  69. data/data/images/{p_256_tatami3.gif → p256_tatami3.gif} +0 -0
  70. data/data/images/{p_257_bisector.gif → p257_bisector.gif} +0 -0
  71. data/data/images/{p_262_formula1.gif → p262_formula1.gif} +0 -0
  72. data/data/images/{p_264_TriangleCentres.gif → p264_TriangleCentres.gif} +0 -0
  73. data/data/images/{p_265_BinaryCircles.gif → p265_BinaryCircles.gif} +0 -0
  74. data/data/images/{p_270_CutSquare.gif → p270_CutSquare.gif} +0 -0
  75. data/data/images/{p_275_sculptures2.gif → p275_sculptures2.gif} +0 -0
  76. data/data/images/{p_281_pizza.gif → p281_pizza.gif} +0 -0
  77. data/data/images/{p_282_formula.gif → p282_formula.gif} +0 -0
  78. data/data/images/{p_282formula3.gif → p282formula3.gif} +0 -0
  79. data/data/images/{p_287_quadtree.gif → p287_quadtree.gif} +0 -0
  80. data/data/images/{p_289_euler.gif → p289_euler.gif} +0 -0
  81. data/data/images/{p_291_formula.gif → p291_formula.gif} +0 -0
  82. data/data/images/{p_299_ThreeSimTri.gif → p299_ThreeSimTri.gif} +0 -0
  83. data/data/images/{p_300_protein.gif → p300_protein.gif} +0 -0
  84. data/data/images/{p_306_pstrip.gif → p306_pstrip.gif} +0 -0
  85. data/data/images/{p_309_ladders.gif → p309_ladders.gif} +0 -0
  86. data/data/images/{p_311_biclinic.gif → p311_biclinic.gif} +0 -0
  87. data/data/images/{p_312_sierpinsky8t.gif → p312_sierpinsky8t.gif} +0 -0
  88. data/data/images/{p_312_sierpinskyAt.gif → p312_sierpinskyAt.gif} +0 -0
  89. data/data/images/{p_313_sliding_game_1.gif → p313_sliding_game_1.gif} +0 -0
  90. data/data/images/{p_313_sliding_game_2.gif → p313_sliding_game_2.gif} +0 -0
  91. data/data/images/{p_314_landgrab.gif → p314_landgrab.gif} +0 -0
  92. data/data/images/{p_315_clocks.gif → p315_clocks.gif} +0 -0
  93. data/data/images/{p_316_decexp1.gif → p316_decexp1.gif} +0 -0
  94. data/data/images/{p_316_decexp2.gif → p316_decexp2.gif} +0 -0
  95. data/data/images/{p_316_decexp3.gif → p316_decexp3.gif} +0 -0
  96. data/data/images/{p_321_swapping_counters_1.gif → p321_swapping_counters_1.gif} +0 -0
  97. data/data/images/{p_321_swapping_counters_2.gif → p321_swapping_counters_2.gif} +0 -0
  98. data/data/images/{p_326_formula1.gif → p326_formula1.gif} +0 -0
  99. data/data/images/{p_326_formula2.gif → p326_formula2.gif} +0 -0
  100. data/data/images/{p_327_rooms_of_doom.gif → p327_rooms_of_doom.gif} +0 -0
  101. data/data/images/{p_328_sum1.gif → p328_sum1.gif} +0 -0
  102. data/data/images/{p_328_sum2.gif → p328_sum2.gif} +0 -0
  103. data/data/images/{p_330_formula.gif → p330_formula.gif} +0 -0
  104. data/data/images/{p_331_crossflips1.gif → p331_crossflips1.gif} +0 -0
  105. data/data/images/{p_331_crossflips2.gif → p331_crossflips2.gif} +0 -0
  106. data/data/images/{p_331_crossflips3.gif → p331_crossflips3.gif} +0 -0
  107. data/data/images/{p_332_spherical.jpg → p332_spherical.jpg} +0 -0
  108. data/data/images/{p_332_sum.gif → p332_sum.gif} +0 -0
  109. data/data/images/{p_334_beans.gif → p334_beans.gif} +0 -0
  110. data/data/images/{p_334_cases.gif → p334_cases.gif} +0 -0
  111. data/data/images/{p_334_lfloor.gif → p334_lfloor.gif} +0 -0
  112. data/data/images/{p_334_oplus.gif → p334_oplus.gif} +0 -0
  113. data/data/images/{p_334_rfloor.gif → p334_rfloor.gif} +0 -0
  114. data/data/images/{p_335_mancala.gif → p335_mancala.gif} +0 -0
  115. data/data/images/{p_335_sum.gif → p335_sum.gif} +0 -0
  116. data/data/images/{p_336_maximix.gif → p336_maximix.gif} +0 -0
  117. data/data/images/{p_338_gridpaper.gif → p338_gridpaper.gif} +0 -0
  118. data/data/images/{p_340_formula.gif → p340_formula.gif} +0 -0
  119. data/data/images/{p_344_silverdollar.gif → p344_silverdollar.gif} +0 -0
  120. data/data/images/{p_351_hexorchard.png → p351_hexorchard.png} +0 -0
  121. data/data/images/{p_354_bee_honeycomb.png → p354_bee_honeycomb.png} +0 -0
  122. data/data/images/{p_356_cubicpoly1.gif → p356_cubicpoly1.gif} +0 -0
  123. data/data/images/{p_356_cubicpoly2.gif → p356_cubicpoly2.gif} +0 -0
  124. data/data/images/{p_361_Thue-Morse1.gif → p361_Thue-Morse1.gif} +0 -0
  125. data/data/images/p363_bezier.png +0 -0
  126. data/data/images/{p_364_comf_dist.gif → p364_comf_dist.gif} +0 -0
  127. data/data/images/{p_372_pencilray1.jpg → p372_pencilray1.jpg} +0 -0
  128. data/data/images/{p_372_pencilray2.gif → p372_pencilray2.gif} +0 -0
  129. data/data/images/{p_380_mazes.gif → p380_mazes.gif} +0 -0
  130. data/data/images/{p_384_formula.gif → p384_formula.gif} +0 -0
  131. data/data/images/{p_385_ellipsetriangle.png → p385_ellipsetriangle.png} +0 -0
  132. data/data/images/{p_394_eatpie.gif → p394_eatpie.gif} +0 -0
  133. data/data/images/{p_395_pythagorean.gif → p395_pythagorean.gif} +0 -0
  134. data/data/images/{p_404_c_ellipse.gif → p404_c_ellipse.gif} +0 -0
  135. data/data/images/{p_405_tile1.png → p405_tile1.png} +0 -0
  136. data/data/images/{p_405_tile2.gif → p405_tile2.gif} +0 -0
  137. data/data/images/{p_420_matrix.gif → p420_matrix.gif} +0 -0
  138. data/data/images/{p_424_kakuro1.gif → p424_kakuro1.gif} +0 -0
  139. data/data/images/{p_426_baxball1.gif → p426_baxball1.gif} +0 -0
  140. data/data/images/{p_426_baxball2.gif → p426_baxball2.gif} +0 -0
  141. data/data/images/{p_430_flips.gif → p430_flips.gif} +0 -0
  142. data/data/problems/1.yml +1 -1
  143. data/data/problems/10.yml +6 -4
  144. data/data/problems/100.yml +2 -2
  145. data/data/problems/101.yml +15 -19
  146. data/data/problems/102.yml +9 -10
  147. data/data/problems/103.yml +7 -8
  148. data/data/problems/104.yml +2 -2
  149. data/data/problems/105.yml +4 -4
  150. data/data/problems/106.yml +3 -3
  151. data/data/problems/107.yml +12 -12
  152. data/data/problems/108.yml +8 -14
  153. data/data/problems/109.yml +12 -11
  154. data/data/problems/11.yml +21 -24
  155. data/data/problems/110.yml +9 -10
  156. data/data/problems/111.yml +1 -1
  157. data/data/problems/112.yml +1 -1
  158. data/data/problems/113.yml +1 -1
  159. data/data/problems/114.yml +2 -2
  160. data/data/problems/115.yml +1 -1
  161. data/data/problems/116.yml +11 -11
  162. data/data/problems/117.yml +3 -3
  163. data/data/problems/118.yml +1 -1
  164. data/data/problems/119.yml +1 -1
  165. data/data/problems/12.yml +6 -6
  166. data/data/problems/120.yml +4 -4
  167. data/data/problems/121.yml +1 -1
  168. data/data/problems/122.yml +10 -18
  169. data/data/problems/123.yml +3 -3
  170. data/data/problems/124.yml +17 -19
  171. data/data/problems/125.yml +1 -1
  172. data/data/problems/126.yml +12 -11
  173. data/data/problems/127.yml +8 -8
  174. data/data/problems/128.yml +3 -3
  175. data/data/problems/129.yml +1 -1
  176. data/data/problems/13.yml +1 -1
  177. data/data/problems/130.yml +6 -7
  178. data/data/problems/131.yml +2 -2
  179. data/data/problems/132.yml +2 -2
  180. data/data/problems/133.yml +2 -2
  181. data/data/problems/134.yml +3 -3
  182. data/data/problems/135.yml +3 -3
  183. data/data/problems/136.yml +3 -3
  184. data/data/problems/137.yml +9 -9
  185. data/data/problems/138.yml +5 -5
  186. data/data/problems/139.yml +2 -2
  187. data/data/problems/14.yml +8 -13
  188. data/data/problems/140.yml +5 -5
  189. data/data/problems/141.yml +2 -2
  190. data/data/problems/142.yml +3 -4
  191. data/data/problems/143.yml +3 -3
  192. data/data/problems/144.yml +4 -4
  193. data/data/problems/145.yml +1 -1
  194. data/data/problems/146.yml +1 -1
  195. data/data/problems/147.yml +6 -6
  196. data/data/problems/148.yml +8 -8
  197. data/data/problems/149.yml +12 -25
  198. data/data/problems/15.yml +4 -4
  199. data/data/problems/150.yml +16 -17
  200. data/data/problems/151.yml +3 -3
  201. data/data/problems/152.yml +2 -2
  202. data/data/problems/153.yml +30 -35
  203. data/data/problems/154.yml +16 -12
  204. data/data/problems/155.yml +7 -6
  205. data/data/problems/156.yml +8 -9
  206. data/data/problems/157.yml +4 -6
  207. data/data/problems/158.yml +12 -12
  208. data/data/problems/159.yml +14 -16
  209. data/data/problems/16.yml +1 -1
  210. data/data/problems/160.yml +3 -3
  211. data/data/problems/161.yml +6 -6
  212. data/data/problems/162.yml +3 -3
  213. data/data/problems/163.yml +3 -3
  214. data/data/problems/164.yml +3 -4
  215. data/data/problems/165.yml +12 -12
  216. data/data/problems/166.yml +6 -8
  217. data/data/problems/167.yml +6 -7
  218. data/data/problems/168.yml +5 -7
  219. data/data/problems/169.yml +2 -2
  220. data/data/problems/17.yml +5 -5
  221. data/data/problems/170.yml +9 -10
  222. data/data/problems/171.yml +4 -5
  223. data/data/problems/172.yml +3 -4
  224. data/data/problems/173.yml +2 -2
  225. data/data/problems/174.yml +4 -4
  226. data/data/problems/175.yml +12 -13
  227. data/data/problems/176.yml +1 -1
  228. data/data/problems/177.yml +2 -2
  229. data/data/problems/178.yml +6 -6
  230. data/data/problems/179.yml +4 -4
  231. data/data/problems/18.yml +11 -12
  232. data/data/problems/180.yml +9 -12
  233. data/data/problems/181.yml +1 -1
  234. data/data/problems/182.yml +14 -16
  235. data/data/problems/183.yml +12 -15
  236. data/data/problems/184.yml +3 -3
  237. data/data/problems/185.yml +11 -11
  238. data/data/problems/186.yml +10 -11
  239. data/data/problems/187.yml +8 -8
  240. data/data/problems/188.yml +4 -4
  241. data/data/problems/189.yml +4 -4
  242. data/data/problems/19.yml +1 -1
  243. data/data/problems/190.yml +2 -2
  244. data/data/problems/191.yml +5 -5
  245. data/data/problems/192.yml +10 -14
  246. data/data/problems/193.yml +1 -1
  247. data/data/problems/194.yml +10 -10
  248. data/data/problems/195.yml +5 -6
  249. data/data/problems/196.yml +15 -14
  250. data/data/problems/197.yml +7 -8
  251. data/data/problems/198.yml +8 -14
  252. data/data/problems/199.yml +3 -3
  253. data/data/problems/2.yml +8 -7
  254. data/data/problems/20.yml +4 -9
  255. data/data/problems/200.yml +7 -8
  256. data/data/problems/201.yml +14 -14
  257. data/data/problems/202.yml +2 -2
  258. data/data/problems/203.yml +21 -13
  259. data/data/problems/204.yml +7 -7
  260. data/data/problems/205.yml +6 -6
  261. data/data/problems/206.yml +1 -1
  262. data/data/problems/207.yml +10 -10
  263. data/data/problems/208.yml +4 -5
  264. data/data/problems/209.yml +6 -6
  265. data/data/problems/21.yml +7 -7
  266. data/data/problems/210.yml +6 -6
  267. data/data/problems/211.yml +2 -2
  268. data/data/problems/212.yml +16 -20
  269. data/data/problems/213.yml +6 -6
  270. data/data/problems/214.yml +9 -10
  271. data/data/problems/215.yml +5 -5
  272. data/data/problems/216.yml +5 -6
  273. data/data/problems/217.yml +7 -12
  274. data/data/problems/218.yml +9 -10
  275. data/data/problems/219.yml +5 -5
  276. data/data/problems/22.yml +3 -3
  277. data/data/problems/220.yml +15 -16
  278. data/data/problems/221.yml +8 -8
  279. data/data/problems/222.yml +1 -1
  280. data/data/problems/223.yml +5 -6
  281. data/data/problems/224.yml +5 -6
  282. data/data/problems/225.yml +2 -2
  283. data/data/problems/226.yml +8 -9
  284. data/data/problems/227.yml +3 -3
  285. data/data/problems/228.yml +17 -16
  286. data/data/problems/229.yml +16 -19
  287. data/data/problems/23.yml +1 -3
  288. data/data/problems/230.yml +9 -11
  289. data/data/problems/231.yml +5 -8
  290. data/data/problems/232.yml +1 -1
  291. data/data/problems/233.yml +2 -2
  292. data/data/problems/234.yml +11 -13
  293. data/data/problems/235.yml +2 -2
  294. data/data/problems/236.yml +13 -19
  295. data/data/problems/237.yml +4 -4
  296. data/data/problems/238.yml +16 -19
  297. data/data/problems/239.yml +2 -2
  298. data/data/problems/24.yml +2 -2
  299. data/data/problems/240.yml +7 -7
  300. data/data/problems/241.yml +4 -7
  301. data/data/problems/242.yml +5 -6
  302. data/data/problems/243.yml +13 -13
  303. data/data/problems/244.yml +15 -15
  304. data/data/problems/245.yml +8 -20
  305. data/data/problems/246.yml +11 -12
  306. data/data/problems/247.yml +11 -12
  307. data/data/problems/248.yml +1 -1
  308. data/data/problems/249.yml +2 -2
  309. data/data/problems/25.yml +8 -12
  310. data/data/problems/250.yml +4 -4
  311. data/data/problems/251.yml +4 -4
  312. data/data/problems/252.yml +13 -20
  313. data/data/problems/253.yml +9 -8
  314. data/data/problems/254.yml +3 -3
  315. data/data/problems/255.yml +15 -37
  316. data/data/problems/256.yml +19 -24
  317. data/data/problems/257.yml +8 -10
  318. data/data/problems/258.yml +9 -7
  319. data/data/problems/259.yml +1 -1
  320. data/data/problems/26.yml +11 -11
  321. data/data/problems/260.yml +15 -18
  322. data/data/problems/261.yml +15 -13
  323. data/data/problems/262.yml +15 -14
  324. data/data/problems/263.yml +13 -13
  325. data/data/problems/264.yml +10 -11
  326. data/data/problems/265.yml +2 -2
  327. data/data/problems/266.yml +7 -7
  328. data/data/problems/267.yml +1 -1
  329. data/data/problems/268.yml +1 -1
  330. data/data/problems/269.yml +3 -3
  331. data/data/problems/27.yml +12 -15
  332. data/data/problems/270.yml +4 -4
  333. data/data/problems/271.yml +5 -6
  334. data/data/problems/272.yml +5 -7
  335. data/data/problems/273.yml +4 -4
  336. data/data/problems/274.yml +4 -5
  337. data/data/problems/275.yml +4 -4
  338. data/data/problems/276.yml +5 -6
  339. data/data/problems/277.yml +7 -8
  340. data/data/problems/278.yml +16 -19
  341. data/data/problems/279.yml +3 -4
  342. data/data/problems/28.yml +6 -6
  343. data/data/problems/280.yml +2 -2
  344. data/data/problems/281.yml +4 -6
  345. data/data/problems/282.yml +3 -3
  346. data/data/problems/283.yml +6 -7
  347. data/data/problems/284.yml +7 -8
  348. data/data/problems/285.yml +4 -4
  349. data/data/problems/286.yml +2 -2
  350. data/data/problems/287.yml +19 -24
  351. data/data/problems/288.yml +7 -8
  352. data/data/problems/289.yml +11 -11
  353. data/data/problems/29.yml +10 -13
  354. data/data/problems/290.yml +3 -4
  355. data/data/problems/291.yml +4 -4
  356. data/data/problems/292.yml +5 -6
  357. data/data/problems/293.yml +9 -10
  358. data/data/problems/294.yml +12 -7
  359. data/data/problems/295.yml +11 -13
  360. data/data/problems/296.yml +9 -9
  361. data/data/problems/297.yml +7 -9
  362. data/data/problems/298.yml +32 -40
  363. data/data/problems/299.yml +17 -19
  364. data/data/problems/3.yml +6 -4
  365. data/data/problems/30.yml +1 -1
  366. data/data/problems/300.yml +14 -14
  367. data/data/problems/301.yml +9 -10
  368. data/data/problems/302.yml +5 -5
  369. data/data/problems/303.yml +4 -4
  370. data/data/problems/304.yml +7 -9
  371. data/data/problems/305.yml +4 -5
  372. data/data/problems/306.yml +10 -12
  373. data/data/problems/307.yml +4 -4
  374. data/data/problems/308.yml +4 -4
  375. data/data/problems/309.yml +11 -9
  376. data/data/problems/31.yml +2 -2
  377. data/data/problems/310.yml +6 -9
  378. data/data/problems/311.yml +10 -12
  379. data/data/problems/312.yml +10 -9
  380. data/data/problems/313.yml +5 -5
  381. data/data/problems/314.yml +8 -9
  382. data/data/problems/315.yml +35 -38
  383. data/data/problems/316.yml +17 -16
  384. data/data/problems/317.yml +8 -7
  385. data/data/problems/318.yml +14 -29
  386. data/data/problems/319.yml +10 -12
  387. data/data/problems/32.yml +2 -2
  388. data/data/problems/320.yml +2 -2
  389. data/data/problems/321.yml +12 -11
  390. data/data/problems/322.yml +4 -5
  391. data/data/problems/323.yml +7 -9
  392. data/data/problems/324.yml +7 -9
  393. data/data/problems/325.yml +2 -2
  394. data/data/problems/326.yml +3 -3
  395. data/data/problems/327.yml +19 -22
  396. data/data/problems/328.yml +23 -23
  397. data/data/problems/329.yml +6 -6
  398. data/data/problems/33.yml +2 -2
  399. data/data/problems/330.yml +12 -16
  400. data/data/problems/331.yml +16 -18
  401. data/data/problems/332.yml +10 -10
  402. data/data/problems/333.yml +15 -16
  403. data/data/problems/334.yml +17 -19
  404. data/data/problems/335.yml +3 -3
  405. data/data/problems/336.yml +5 -5
  406. data/data/problems/337.yml +7 -8
  407. data/data/problems/338.yml +18 -24
  408. data/data/problems/339.yml +3 -3
  409. data/data/problems/34.yml +1 -1
  410. data/data/problems/340.yml +7 -7
  411. data/data/problems/341.yml +4 -5
  412. data/data/problems/342.yml +6 -9
  413. data/data/problems/343.yml +8 -13
  414. data/data/problems/344.yml +8 -8
  415. data/data/problems/345.yml +17 -16
  416. data/data/problems/346.yml +6 -6
  417. data/data/problems/347.yml +8 -10
  418. data/data/problems/348.yml +5 -5
  419. data/data/problems/349.yml +4 -4
  420. data/data/problems/35.yml +1 -1
  421. data/data/problems/350.yml +5 -6
  422. data/data/problems/351.yml +7 -7
  423. data/data/problems/352.yml +13 -14
  424. data/data/problems/353.yml +2 -2
  425. data/data/problems/354.yml +6 -8
  426. data/data/problems/355.yml +4 -4
  427. data/data/problems/356.yml +5 -4
  428. data/data/problems/357.yml +3 -3
  429. data/data/problems/358.yml +11 -16
  430. data/data/problems/359.yml +12 -12
  431. data/data/problems/36.yml +1 -1
  432. data/data/problems/360.yml +4 -4
  433. data/data/problems/361.yml +9 -9
  434. data/data/problems/362.yml +8 -15
  435. data/data/problems/363.yml +29 -29
  436. data/data/problems/364.yml +4 -4
  437. data/data/problems/365.yml +3 -3
  438. data/data/problems/366.yml +16 -19
  439. data/data/problems/367.yml +11 -11
  440. data/data/problems/368.yml +14 -18
  441. data/data/problems/369.yml +2 -2
  442. data/data/problems/37.yml +1 -1
  443. data/data/problems/370.yml +4 -4
  444. data/data/problems/371.yml +5 -5
  445. data/data/problems/372.yml +6 -7
  446. data/data/problems/373.yml +10 -6
  447. data/data/problems/374.yml +11 -13
  448. data/data/problems/375.yml +11 -14
  449. data/data/problems/376.yml +19 -19
  450. data/data/problems/377.yml +5 -5
  451. data/data/problems/378.yml +8 -9
  452. data/data/problems/379.yml +10 -9
  453. data/data/problems/38.yml +9 -11
  454. data/data/problems/380.yml +8 -10
  455. data/data/problems/381.yml +6 -10
  456. data/data/problems/382.yml +12 -13
  457. data/data/problems/383.yml +5 -6
  458. data/data/problems/384.yml +14 -18
  459. data/data/problems/385.yml +12 -14
  460. data/data/problems/386.yml +4 -5
  461. data/data/problems/387.yml +13 -14
  462. data/data/problems/388.yml +6 -6
  463. data/data/problems/389.yml +3 -3
  464. data/data/problems/39.yml +2 -2
  465. data/data/problems/390.yml +12 -8
  466. data/data/problems/391.yml +18 -20
  467. data/data/problems/392.yml +9 -9
  468. data/data/problems/393.yml +8 -8
  469. data/data/problems/394.yml +14 -15
  470. data/data/problems/395.yml +16 -15
  471. data/data/problems/396.yml +13 -16
  472. data/data/problems/397.yml +4 -6
  473. data/data/problems/398.yml +8 -9
  474. data/data/problems/399.yml +18 -19
  475. data/data/problems/4.yml +2 -2
  476. data/data/problems/40.yml +2 -2
  477. data/data/problems/400.yml +10 -9
  478. data/data/problems/401.yml +6 -7
  479. data/data/problems/402.yml +7 -9
  480. data/data/problems/403.yml +9 -10
  481. data/data/problems/404.yml +8 -10
  482. data/data/problems/405.yml +10 -10
  483. data/data/problems/406.yml +24 -30
  484. data/data/problems/407.yml +6 -10
  485. data/data/problems/408.yml +10 -10
  486. data/data/problems/409.yml +12 -7
  487. data/data/problems/41.yml +1 -1
  488. data/data/problems/410.yml +5 -6
  489. data/data/problems/411.yml +10 -13
  490. data/data/problems/412.yml +10 -10
  491. data/data/problems/413.yml +6 -7
  492. data/data/problems/414.yml +26 -28
  493. data/data/problems/415.yml +12 -13
  494. data/data/problems/416.yml +4 -4
  495. data/data/problems/417.yml +12 -14
  496. data/data/problems/418.yml +13 -10
  497. data/data/problems/419.yml +11 -13
  498. data/data/problems/42.yml +2 -2
  499. data/data/problems/420.yml +8 -8
  500. data/data/problems/421.yml +8 -13
  501. data/data/problems/422.yml +8 -8
  502. data/data/problems/423.yml +11 -12
  503. data/data/problems/424.yml +10 -10
  504. data/data/problems/425.yml +7 -7
  505. data/data/problems/426.yml +9 -9
  506. data/data/problems/427.yml +12 -13
  507. data/data/problems/428.yml +17 -20
  508. data/data/problems/429.yml +5 -5
  509. data/data/problems/43.yml +1 -1
  510. data/data/problems/430.yml +6 -7
  511. data/data/problems/44.yml +4 -4
  512. data/data/problems/45.yml +4 -4
  513. data/data/problems/46.yml +6 -9
  514. data/data/problems/47.yml +5 -8
  515. data/data/problems/48.yml +1 -1
  516. data/data/problems/49.yml +1 -1
  517. data/data/problems/5.yml +1 -1
  518. data/data/problems/50.yml +1 -1
  519. data/data/problems/51.yml +1 -3
  520. data/data/problems/52.yml +1 -1
  521. data/data/problems/53.yml +6 -12
  522. data/data/problems/54.yml +17 -16
  523. data/data/problems/55.yml +3 -3
  524. data/data/problems/56.yml +2 -2
  525. data/data/problems/57.yml +9 -10
  526. data/data/problems/58.yml +11 -11
  527. data/data/problems/59.yml +2 -2
  528. data/data/problems/6.yml +2 -2
  529. data/data/problems/60.yml +1 -1
  530. data/data/problems/61.yml +7 -7
  531. data/data/problems/62.yml +1 -1
  532. data/data/problems/63.yml +1 -1
  533. data/data/problems/64.yml +30 -44
  534. data/data/problems/65.yml +19 -19
  535. data/data/problems/66.yml +9 -12
  536. data/data/problems/67.yml +9 -9
  537. data/data/problems/68.yml +3 -3
  538. data/data/problems/69.yml +3 -3
  539. data/data/problems/7.yml +1 -1
  540. data/data/problems/70.yml +4 -4
  541. data/data/problems/71.yml +4 -4
  542. data/data/problems/72.yml +4 -4
  543. data/data/problems/73.yml +4 -4
  544. data/data/problems/74.yml +9 -16
  545. data/data/problems/75.yml +3 -3
  546. data/data/problems/76.yml +1 -1
  547. data/data/problems/77.yml +1 -1
  548. data/data/problems/78.yml +8 -8
  549. data/data/problems/79.yml +2 -2
  550. data/data/problems/8.yml +12 -13
  551. data/data/problems/80.yml +1 -1
  552. data/data/problems/81.yml +8 -10
  553. data/data/problems/82.yml +10 -11
  554. data/data/problems/83.yml +10 -11
  555. data/data/problems/84.yml +45 -37
  556. data/data/problems/85.yml +2 -2
  557. data/data/problems/86.yml +8 -8
  558. data/data/problems/87.yml +1 -1
  559. data/data/problems/88.yml +11 -22
  560. data/data/problems/89.yml +14 -14
  561. data/data/problems/9.yml +6 -7
  562. data/data/problems/90.yml +7 -7
  563. data/data/problems/91.yml +6 -8
  564. data/data/problems/92.yml +6 -11
  565. data/data/problems/93.yml +11 -12
  566. data/data/problems/94.yml +1 -1
  567. data/data/problems/95.yml +2 -2
  568. data/data/problems/96.yml +7 -9
  569. data/data/problems/97.yml +3 -3
  570. data/data/problems/98.yml +2 -2
  571. data/data/problems/99.yml +4 -4
  572. data/euler-manager.gemspec +2 -2
  573. data/example/1/README.md +1 -1
  574. data/example/1/ruby/1.rb +7 -1
  575. data/example/1/scala/1.scala +1 -1
  576. data/example/15/README.md +4 -4
  577. data/example/2/README.md +1 -4
  578. data/languages/c.rb +22 -0
  579. data/languages/elixir.rb +25 -0
  580. data/languages/java.rb +3 -2
  581. data/languages/perl.rb +25 -0
  582. data/languages/php.rb +25 -0
  583. data/lib/euler/version.rb +1 -1
  584. data/rake/clean.rake +0 -2
  585. data/rake/sha_answers.rake +20 -0
  586. data/rake/update.rake +5 -2
  587. data/spec/euler_spec.rb +5 -0
  588. data/templates/c.c +11 -0
  589. data/templates/elixir.ex +1 -0
  590. data/templates/perl.pl +3 -0
  591. data/templates/php.php +5 -0
  592. metadata +148 -164
  593. data/data/images/blackdot.gif +0 -0
  594. data/data/images/bracket_left.gif +0 -0
  595. data/data/images/bracket_right.gif +0 -0
  596. data/data/images/sod_13.gif +0 -119
  597. data/data/images/symbol_asymp.gif +0 -0
  598. data/data/images/symbol_cong.gif +0 -0
  599. data/data/images/symbol_ge.gif +0 -0
  600. data/data/images/symbol_gt.gif +0 -0
  601. data/data/images/symbol_implies.gif +0 -0
  602. data/data/images/symbol_lceil.gif +0 -0
  603. data/data/images/symbol_le.gif +0 -0
  604. data/data/images/symbol_lfloor.gif +0 -0
  605. data/data/images/symbol_lt.gif +0 -0
  606. data/data/images/symbol_maps.gif +0 -0
  607. data/data/images/symbol_minus.gif +0 -0
  608. data/data/images/symbol_ne.gif +0 -0
  609. data/data/images/symbol_plusmn.gif +0 -0
  610. data/data/images/symbol_radic.gif +0 -0
  611. data/data/images/symbol_rceil.gif +0 -0
  612. data/data/images/symbol_rfloor.gif +0 -0
  613. data/data/images/symbol_sum.gif +0 -0
  614. data/data/images/symbol_times.gif +0 -0
  615. data/example/1/haskell/1.hs +0 -3
  616. data/example/12/README.md +0 -20
  617. data/example/12/haskell/12.hs +0 -3
  618. data/example/lib/Euler.hs +0 -1
@@ -1,15 +1,15 @@
1
1
  ---
2
2
  :id: 285
3
3
  :name: Pythagorean odds
4
- :url: http://projecteuler.net/problem=285
4
+ :url: https://projecteuler.net/problem=285
5
5
  :content: "Albert chooses a positive integer <var>k</var>, then two real numbers <var>a</var>,
6
6
  <var>b</var> are randomly chosen in the interval [0,1] with uniform distribution.
7
- \ \n\rThe square root of the sum (<var>k</var>·<var>a</var>+1)<sup>2</sup> + (<var>k</var>·<var>b</var>+1)<sup>2</sup>
7
+ \ \nThe square root of the sum (<var>k</var>·<var>a</var>+1)<sup>2</sup> + (<var>k</var>·<var>b</var>+1)<sup>2</sup>
8
8
  is then computed and rounded to the nearest integer. If the result is equal to <var>k</var>,
9
9
  he scores <var>k</var> points; otherwise he scores nothing.\n\nFor example, if <var>k</var> = 6,
10
10
  <var>a</var> = 0.2 and <var>b</var> = 0.85, then (<var>k</var>·<var>a</var>+1)<sup>2</sup> + (<var>k</var>·<var>b</var>+1)<sup>2</sup> = 42.05.
11
- \ \n\rThe square root of 42.05 is 6.484... and when rounded to the nearest integer,
12
- it becomes 6. \n\rThis is equal to <var>k</var>, so he scores 6 points.\n\nIt can
11
+ \ \nThe square root of 42.05 is 6.484... and when rounded to the nearest integer,
12
+ it becomes 6. \nThis is equal to <var>k</var>, so he scores 6 points.\n\nIt can
13
13
  be shown that if he plays 10 turns with <var>k</var> = 1, <var>k</var> = 2, ...,
14
14
  <var>k</var> = 10, the expected value of his total score, rounded to five decimal
15
15
  places, is 10.20914.\n\nIf he plays 10<sup>5</sup> turns with <var>k</var> = 1,
@@ -1,9 +1,9 @@
1
1
  ---
2
2
  :id: 286
3
3
  :name: Scoring probabilities
4
- :url: http://projecteuler.net/problem=286
4
+ :url: https://projecteuler.net/problem=286
5
5
  :content: |+
6
- Barbara is a mathematician and a basketball player. She has found that the probability of scoring a point when shooting from a distance <var>x</var> is exactly (1 - <sup><var>x</var></sup>/<sub><var>q</var></sub>), where <var>q</var> is a real constant greater than 50.
6
+ Barbara is a mathematician and a basketball player. She has found that the probability of scoring a point when shooting from a distance <var>x</var> is exactly (1 -&nbsp;<sup><var>x</var></sup>/<sub><var>q</var></sub>), where <var>q</var> is a real constant greater than 50.
7
7
 
8
8
  During each practice run, she takes shots from distances <var>x</var> = 1, <var>x</var> = 2, ..., <var>x</var> = 50 and, according to her records, she has precisely a 2 % chance to score a total of exactly 20 points.
9
9
 
@@ -1,27 +1,22 @@
1
1
  ---
2
2
  :id: 287
3
3
  :name: Quadtree encoding (a simple compression algorithm)
4
- :url: http://projecteuler.net/problem=287
5
- :content: "The quadtree encoding allows us to describe a 2<sup><var>N</var></sup>
6
- ![×]({{ images_dir }}/symbol_times.gif)2<sup><var>N</var></sup> black and white
7
- image as a sequence of bits (0 and 1). Those sequences are to be read from left
8
- to right like this:\n\n- the first bit deals with the complete 2<sup><var>N</var></sup>
9
- ![×]({{ images_dir }}/symbol_times.gif)2<sup><var>N</var></sup> region;\n- \"0\"
10
- denotes a split:\r \nthe current 2<sup><var>n</var></sup> ![×]({{ images_dir }}/symbol_times.gif)2<sup><var>n</var></sup>
11
- region is divided into 4 sub-regions of dimension 2<sup><var>n</var>-1</sup> ![×]({{
12
- images_dir }}/symbol_times.gif)2<sup><var>n</var>-1</sup>, \n\rthe next bits contains
13
- the description of the top left, top right, bottom left and bottom right sub-regions
14
- - in that order;\n- \"10\" indicates that the current region contains only black
15
- pixels;\n- \"11\" indicates that the current region contains only white pixels.\n\nConsider
16
- the following 4 ![×]({{ images_dir }}/symbol_times.gif)4 image (colored marks denote
17
- places where a split can occur):\n\n ![]({{ images_dir }}/p_287_quadtree.gif)\n\nThis
18
- image can be described by several sequences, for example :<bp></bp>\r\" **0****
19
- 0 **10101010** 0 **1011111011** 0**10101010\", of length 30, or \n\r\" **0** 10
20
- **0** 101111101110\", of length 16, which is the minimal sequence for this image.\n\nFor
21
- a positive integer <var>N</var>, define <var>D<sub>N</sub></var> as the 2<sup><var>N</var></sup>
22
- ![×]({{ images_dir }}/symbol_times.gif)2<sup><var>N</var></sup> image with the following
23
- coloring scheme:\n\n- the pixel with coordinates <var>x</var> = 0, <var>y</var> = 0
24
- corresponds to the bottom left pixel,\n- if (<var>x</var> - 2<sup><var>N</var>-1</sup>)<sup>2</sup> + (<var>y</var> - 2<sup><var>N</var>-1</sup>)<sup>2</sup> 
25
- ![≤]({{ images_dir }}/symbol_le.gif) 2<sup>2<var>N</var>-2</sup> then the pixel
26
- is black,\n- otherwise the pixel is white.\n\nWhat is the length of the minimal
27
- sequence describing <var>D</var><sub>24</sub> ?\n\n"
4
+ :url: https://projecteuler.net/problem=287
5
+ :content: "The quadtree encoding allows us to describe a 2<sup><var>N</var></sup>×2<sup><var>N</var></sup>
6
+ black and white image as a sequence of bits (0 and 1). Those sequences are to be
7
+ read from left to right like this:\n\n- the first bit deals with the complete 2<sup><var>N</var></sup>×2<sup><var>N</var></sup>
8
+ region;\n- \"0\" denotes a split: \nthe current 2<sup><var>n</var></sup>×2<sup><var>n</var></sup>
9
+ region is divided into 4 sub-regions of dimension 2<sup><var>n</var>-1</sup>×2<sup><var>n</var>-1</sup>,
10
+ \ \nthe next bits contains the description of the top left, top right, bottom left
11
+ and bottom right sub-regions - in that order;\n- \"10\" indicates that the current
12
+ region contains only black pixels;\n- \"11\" indicates that the current region contains
13
+ only white pixels.\n\nConsider the following 4×4 image (colored marks denote places
14
+ where a split can occur):\n\n ![p287_quadtree.gif]({{ images_dir }}/p287_quadtree.gif)\n\nThis
15
+ image can be described by several sequences, for example : \" **0**** 0 **10101010**
16
+ 0 **1011111011** 0**10101010\", of length 30, or \n\" **0** 10 **0** 101111101110\",
17
+ of length 16, which is the minimal sequence for this image.\n\nFor a positive integer
18
+ <var>N</var>, define <var>D<sub>N</sub></var> as the 2<sup><var>N</var></sup>×2<sup><var>N</var></sup>
19
+ image with the following coloring scheme:\n\n- the pixel with coordinates <var>x</var> = 0,
20
+ <var>y</var> = 0 corresponds to the bottom left pixel,\n- if (<var>x</var> - 2<sup><var>N</var>-1</sup>)<sup>2</sup> + (<var>y</var> - 2<sup><var>N</var>-1</sup>)<sup>2</sup> ≤ 2<sup>2<var>N</var>-2</sup>
21
+ then the pixel is black,\n- otherwise the pixel is white.\n\nWhat is the length
22
+ of the minimal sequence describing <var>D</var><sub>24</sub> ?\n\n"
@@ -1,14 +1,13 @@
1
1
  ---
2
2
  :id: 288
3
3
  :name: An enormous factorial
4
- :url: http://projecteuler.net/problem=288
4
+ :url: https://projecteuler.net/problem=288
5
5
  :content: "For any prime <var>p</var> the number N(<var>p</var>,<var>q</var>) is defined
6
- by\rN(<var>p</var>,<var>q</var>) = ![∑]({{ images_dir }}/symbol_sum.gif)<sub><var>n</var>=0
7
- to <var>q</var></sub> T<sub><var>n</var></sub>\\*<var>p</var><sup><var>n</var></sup>
6
+ by N(<var>p</var>,<var>q</var>) = ∑<sub><var>n</var>=0 to <var>q</var></sub> T<sub><var>n</var></sub>\\*<var>p</var><sup><var>n</var></sup>
8
7
  \ \n with T<sub><var>n</var></sub> generated by the following random number generator:\n\nS<sub>0</sub>
9
- = 290797 \n\rS<sub><var>n</var>+1</sub> = S<sub><var>n</var></sub><sup>2</sup>
10
- mod 50515093 \n\rT<sub><var>n</var></sub> = S<sub><var>n</var></sub> mod <var>p</var>\n\nLet
8
+ = 290797 \nS<sub><var>n</var>+1</sub> = S<sub><var>n</var></sub><sup>2</sup> mod
9
+ 50515093 \nT<sub><var>n</var></sub> = S<sub><var>n</var></sub> mod <var>p</var>\n\nLet
11
10
  Nfac(<var>p</var>,<var>q</var>) be the factorial of N(<var>p</var>,<var>q</var>).
12
- \ \n\rLet NF(<var>p</var>,<var>q</var>) be the number of factors <var>p</var> in
13
- Nfac(<var>p</var>,<var>q</var>).\n\nYou are given that NF(3,10000) mod 3<sup>20</sup>=624955285.\n\nFind
14
- NF(61,10<sup>7</sup>) mod 61<sup>10</sup>\n\n"
11
+ \ \nLet NF(<var>p</var>,<var>q</var>) be the number of factors <var>p</var> in Nfac(<var>p</var>,<var>q</var>).\n\nYou
12
+ are given that NF(3,10000) mod 3<sup>20</sup>=624955285.\n\nFind NF(61,10<sup>7</sup>)
13
+ mod 61<sup>10</sup>\n\n"
@@ -1,18 +1,18 @@
1
1
  ---
2
2
  :id: 289
3
3
  :name: Eulerian Cycles
4
- :url: http://projecteuler.net/problem=289
4
+ :url: https://projecteuler.net/problem=289
5
5
  :content: "Let C(<var>x</var>,<var>y</var>) be a circle passing through the points
6
6
  (<var>x</var>, <var>y</var>), (<var>x</var>, <var>y</var>+1), (<var>x</var>+1, <var>y</var>)
7
7
  and (<var>x</var>+1, <var>y</var>+1).\n\nFor positive integers m and n, let E(<var>m</var>,<var>n</var>)
8
- be a configuration which consists of the <var>m</var>·<var>n</var> circles: \n\r{
9
- C(<var>x</var>,<var>y</var>): 0 ≤ <var>x</var> m, 0 ≤ <var>y</var> n, <var>x</var>
10
- and <var>y</var> are integers }\n\nAn Eulerian cycle on E(<var>m</var>,<var>n</var>)
11
- is a closed path that passes through each arc exactly once. \n\rMany such paths
12
- are possible on E(<var>m</var>,<var>n</var>), but we are only interested in those
13
- which are not self-crossing: \rA non-crossing path just touches itself at lattice
14
- points, but it never crosses itself.\n\nThe image below shows E(3,3) and an example
15
- of an Eulerian non-crossing path.\n\n ![]({{ images_dir }}/p_289_euler.gif)\n\nLet
8
+ be a configuration which consists of the <var>m</var>·<var>n</var> circles: \n{
9
+ C(<var>x</var>,<var>y</var>): 0 ≤ <var>x</var> \\< <var>m</var>, 0 ≤ <var>y</var> \\< <var>n</var>,
10
+ <var>x</var> and <var>y</var> are integers }\n\nAn Eulerian cycle on E(<var>m</var>,<var>n</var>)
11
+ is a closed path that passes through each arc exactly once. \nMany such paths are
12
+ possible on E(<var>m</var>,<var>n</var>), but we are only interested in those which
13
+ are not self-crossing: A non-crossing path just touches itself at lattice points,
14
+ but it never crosses itself.\n\nThe image below shows E(3,3) and an example of an
15
+ Eulerian non-crossing path.\n\n ![p289_euler.gif]({{ images_dir }}/p289_euler.gif)\n\nLet
16
16
  L(<var>m</var>,<var>n</var>) be the number of Eulerian non-crossing paths on E(<var>m</var>,<var>n</var>).
17
- \ \n\rFor example, L(1,2) = 2, L(2,2) = 37 and L(3,3) = 104290.\n\nFind L(6,10)
18
- mod 10<sup>10</sup>.\n\n"
17
+ \ \nFor example, L(1,2) = 2, L(2,2) = 37 and L(3,3) = 104290.\n\nFind L(6,10) mod
18
+ 10<sup>10</sup>.\n\n"
data/data/problems/29.yml CHANGED
@@ -1,16 +1,13 @@
1
1
  ---
2
2
  :id: 29
3
3
  :name: Distinct powers
4
- :url: http://projecteuler.net/problem=29
5
- :content: "Consider all integer combinations of _a_<sup><i>b</i></sup> for 2 ![]({{
6
- images_dir }}/symbol_le.gif) _a_ ![]({{ images_dir }}/symbol_le.gif) 5 and 2 ![≤]({{
7
- images_dir }}/symbol_le.gif) _b_ ![≤]({{ images_dir }}/symbol_le.gif) 5:\n\n> 2<sup>2</sup>=4,
8
- 2<sup>3</sup>=8, 2<sup>4</sup>=16, 2<sup>5</sup>=32 \n> 3<sup>2</sup>=9, 3<sup>3</sup>=27,
9
- 3<sup>4</sup>=81, 3<sup>5</sup>=243 \n> 4<sup>2</sup>=16, 4<sup>3</sup>=64, 4<sup>4</sup>=256,
10
- 4<sup>5</sup>=1024 \n> 5<sup>2</sup>=25, 5<sup>3</sup>=125, 5<sup>4</sup>=625,
11
- 5<sup>5</sup>=3125\n\nIf they are then placed in numerical order, with any repeats
12
- removed, we get the following sequence of 15 distinct terms:\n\n4, 8, 9, 16, 25,
13
- 27, 32, 64, 81, 125, 243, 256, 625, 1024, 3125\n\nHow many distinct terms are in
14
- the sequence generated by _a_<sup><i>b</i></sup> for 2 ![≤]({{ images_dir }}/symbol_le.gif)
15
- _a_ ![≤]({{ images_dir }}/symbol_le.gif) 100 and 2 ![≤]({{ images_dir }}/symbol_le.gif)
16
- _b_ ![≤]({{ images_dir }}/symbol_le.gif) 100?\n\n"
4
+ :url: https://projecteuler.net/problem=29
5
+ :content: "Consider all integer combinations of _a_<sup><i>b</i></sup> for 2 ≤ _a_
6
+ 5 and 2 _b_ 5:\n\n> 2<sup>2</sup>=4, 2<sup>3</sup>=8, 2<sup>4</sup>=16, 2<sup>5</sup>=32
7
+ \ \n> 3<sup>2</sup>=9, 3<sup>3</sup>=27, 3<sup>4</sup>=81, 3<sup>5</sup>=243 \n>
8
+ 4<sup>2</sup>=16, 4<sup>3</sup>=64, 4<sup>4</sup>=256, 4<sup>5</sup>=1024 \n> 5<sup>2</sup>=25,
9
+ 5<sup>3</sup>=125, 5<sup>4</sup>=625, 5<sup>5</sup>=3125\n\nIf they are then placed
10
+ in numerical order, with any repeats removed, we get the following sequence of 15
11
+ distinct terms:\n\n4, 8, 9, 16, 25, 27, 32, 64, 81, 125, 243, 256, 625, 1024, 3125\n\nHow
12
+ many distinct terms are in the sequence generated by _a_<sup><i>b</i></sup> for
13
+ 2 _a_ 100 and 2 _b_ ≤ 100?\n\n"
@@ -1,7 +1,6 @@
1
1
  ---
2
2
  :id: 290
3
3
  :name: Digital Signature
4
- :url: http://projecteuler.net/problem=290
5
- :content: |+
6
- How many integers 0 ![≤]({{ images_dir }}/symbol_le.gif) <var>n</var> &lt 10<sup>18</sup> have the property that the sum of the digits of <var>n</var> equals the sum of digits of 137<var>n</var>?
7
-
4
+ :url: https://projecteuler.net/problem=290
5
+ :content: "How many integers 0 ≤ <var>n</var> \\< 10<sup>18</sup> have the property
6
+ that the sum of the digits of <var>n</var> equals the sum of digits of 137<var>n</var>?\n\n"
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  :id: 291
3
3
  :name: Panaitopol Primes
4
- :url: http://projecteuler.net/problem=291
5
- :content: "A prime number <var>p</var> is called a Panaitopol prime if ![]({{ images_dir
6
- }}/p_291_formula.gif) for some positive integers \n <var>x</var> and <var>y</var>.\n\nFind
7
- how many Panaitopol primes are less than 5 ![×]({{ images_dir }}/symbol_times.gif)10<sup>15</sup>.\n\n"
4
+ :url: https://projecteuler.net/problem=291
5
+ :content: "A prime number <var>p</var> is called a Panaitopol prime if ![p291_formula.gif]({{
6
+ images_dir }}/p291_formula.gif) for some positive integers \n<var>x</var> and <var>y</var>.\n\nFind
7
+ how many Panaitopol primes are less than 5×10<sup>15</sup>.\n\n"
@@ -1,12 +1,11 @@
1
1
  ---
2
2
  :id: 292
3
3
  :name: Pythagorean Polygons
4
- :url: http://projecteuler.net/problem=292
4
+ :url: https://projecteuler.net/problem=292
5
5
  :content: "We shall define a _pythagorean polygon_ to be a **convex polygon** with
6
6
  the following properties:\n\n- there are at least three vertices,\n- no three vertices
7
7
  are aligned,\n- each vertex has **integer coordinates** ,\n- each edge has **integer
8
- length** .\n\nFor a given integer <var>n</var>, define P(<var>n</var>) as the number
9
- of distinct pythagorean polygons for which the perimeter is ![]({{ images_dir }}/symbol_le.gif) <var>n</var>.
10
- \ \n\rPythagorean polygons should be considered distinct as long as none is a translation
11
- of another.\n\nYou are given that P(4) = 1, P(30) = 3655 and P(60) = 891045. \n\rFind
12
- P(120).\n\n"
8
+ length**.\n\nFor a given integer <var>n</var>, define P(<var>n</var>) as the number
9
+ of distinct pythagorean polygons for which the perimeter is ≤ <var>n</var>. \nPythagorean
10
+ polygons should be considered distinct as long as none is a translation of another.\n\nYou
11
+ are given that P(4) = 1, P(30) = 3655 and P(60) = 891045. \nFind P(120).\n\n"
@@ -1,14 +1,13 @@
1
1
  ---
2
2
  :id: 293
3
3
  :name: Pseudo-Fortunate Numbers
4
- :url: http://projecteuler.net/problem=293
4
+ :url: https://projecteuler.net/problem=293
5
5
  :content: "An even positive integer N will be called admissible, if it is a power
6
- of 2 or its distinct prime factors are consecutive primes. \n\rThe first twelve
7
- admissible numbers are 2,4,6,8,12,16,18,24,30,32,36,48.\n\nIf N is admissible, the
8
- smallest integer M ![>]({{ images_dir }}/symbol_gt.gif) 1 such that N+M is prime,
9
- will be called the pseudo-Fortunate number for N.\n\nFor example, N=630 is admissible
10
- since it is even and its distinct prime factors are the consecutive primes 2,3,5
11
- and 7. \n \rThe next prime number after 631 is 641; hence, the pseudo-Fortunate
12
- number for 630 is M=11. \n\rIt can also be seen that the pseudo-Fortunate number
13
- for 16 is 3.\n\nFind the sum of all distinct pseudo-Fortunate numbers for admissible
14
- numbers N less than 10<sup>9</sup>.\n\n"
6
+ of 2 or its distinct prime factors are consecutive primes. \nThe first twelve admissible
7
+ numbers are 2,4,6,8,12,16,18,24,30,32,36,48.\n\nIf N is admissible, the smallest
8
+ integer M \\> 1 such that N+M is prime, will be called the pseudo-Fortunate number
9
+ for N.\n\nFor example, N=630 is admissible since it is even and its distinct prime
10
+ factors are the consecutive primes 2,3,5 and 7. \n The next prime number after
11
+ 631 is 641; hence, the pseudo-Fortunate number for 630 is M=11. \nIt can also be
12
+ seen that the pseudo-Fortunate number for 16 is 3.\n\nFind the sum of all distinct
13
+ pseudo-Fortunate numbers for admissible numbers N less than 10<sup>9</sup>.\n\n"
@@ -1,10 +1,15 @@
1
1
  ---
2
2
  :id: 294
3
3
  :name: 'Sum of digits - experience #23'
4
- :url: http://projecteuler.net/problem=294
5
- :content: "For a positive integer k, define d(k) as the sum of the digits of k in
6
- its usual decimal representation.\rThus d(42) = 4+2 = 6.\n\nFor a positive integer
7
- n, define S(n) as the number of positive integers k n with the following properties
8
- :\n\n- k is divisible by 23 and\r\n- d(k) = 23.\r\n\r\rYou are given that S(9) =
9
- 263626 and S(42) = 6377168878570056.\r\r\n\nFind S(11<sup>12</sup>) and give your
10
- answer mod 10<sup>9</sup>.\n\n"
4
+ :url: https://projecteuler.net/problem=294
5
+ :content: |+
6
+ For a positive integer k, define d(k) as the sum of the digits of k in its usual decimal representation. Thus d(42) = 4+2 = 6.
7
+
8
+ For a positive integer n, define S(n) as the number of positive integers k \< 10<sup>n</sup> with the following properties :
9
+
10
+ - k is divisible by 23 and
11
+ - d(k) = 23.
12
+ You are given that S(9) = 263626 and S(42) = 6377168878570056.
13
+
14
+ Find S(11<sup>12</sup>) and give your answer mod 10<sup>9</sup>.
15
+
@@ -1,21 +1,19 @@
1
1
  ---
2
2
  :id: 295
3
3
  :name: Lenticular holes
4
- :url: http://projecteuler.net/problem=295
4
+ :url: https://projecteuler.net/problem=295
5
5
  :content: "We call the convex area enclosed by two circles a _lenticular hole_ if:\n\n-
6
6
  The centres of both circles are on lattice points.\n- The two circles intersect
7
7
  at two distinct lattice points.\n- The interior of the convex area enclosed by both
8
- circles does not contain any lattice points.\r\n\nConsider the circles: \n\rC<sub>0</sub>:
9
- <var>x</var><sup>2</sup>+<var>y</var><sup>2</sup>=25 \n\rC<sub>1</sub>: (<var>x</var>+4)<sup>2</sup>+(<var>y</var>-4)<sup>2</sup>=1
10
- \ \n\rC<sub>2</sub>: (<var>x</var>-12)<sup>2</sup>+(<var>y</var>-4)<sup>2</sup>=65\n\nThe
8
+ circles does not contain any lattice points.\n\nConsider the circles: \nC<sub>0</sub>:
9
+ <var>x</var><sup>2</sup>+<var>y</var><sup>2</sup>=25 \nC<sub>1</sub>: (<var>x</var>+4)<sup>2</sup>+(<var>y</var>-4)<sup>2</sup>=1
10
+ \ \nC<sub>2</sub>: (<var>x</var>-12)<sup>2</sup>+(<var>y</var>-4)<sup>2</sup>=65\n\nThe
11
11
  circles C<sub>0</sub>, C<sub>1</sub> and C<sub>2</sub> are drawn in the picture
12
- below.\n\n ![]({{ images_dir }}/p295_lenticular.gif)\n\nC<sub>0</sub> and C<sub>1</sub>
13
- form a lenticular hole, as well as C<sub>0</sub> and C<sub>2</sub>.\n\nWe call an
14
- ordered pair of positive real numbers (r<sub>1</sub>, r<sub>2</sub>) a _lenticular
12
+ below.\n\n ![p295_lenticular.gif]({{ images_dir }}/p295_lenticular.gif)\n\nC<sub>0</sub>
13
+ and C<sub>1</sub> form a lenticular hole, as well as C<sub>0</sub> and C<sub>2</sub>.\n\nWe
14
+ call an ordered pair of positive real numbers (r<sub>1</sub>, r<sub>2</sub>) a _lenticular
15
15
  pair_ if there exist two circles with radii r<sub>1</sub> and r<sub>2</sub> that
16
- form a lenticular hole.\rWe can verify that (1, 5) and (5, ![]({{ images_dir }}/symbol_radic.gif)65)
17
- are the lenticular pairs of the example above.\n\nLet L(N) be the number of **distinct**
18
- lenticular pairs (r<sub>1</sub>, r<sub>2</sub>) for which 0 ![<]({{ images_dir }}/symbol_lt.gif)
19
- r<sub>1</sub> ![≤]({{ images_dir }}/symbol_le.gif) r<sub>2</sub> ![≤]({{ images_dir
20
- }}/symbol_le.gif) N. \n\rWe can verify that L(10) = 30 and L(100) = 3442.\n\nFind
21
- L(100 000).\n\n"
16
+ form a lenticular hole. We can verify that (1, 5) and (5, √65) are the lenticular
17
+ pairs of the example above.\n\nLet L(N) be the number of **distinct** lenticular
18
+ pairs (r<sub>1</sub>, r<sub>2</sub>) for which 0 \\< r<sub>1</sub> r<sub>2</sub>
19
+ N. \nWe can verify that L(10) = 30 and L(100) = 3442.\n\nFind L(100 000).\n\n"
@@ -1,12 +1,12 @@
1
1
  ---
2
2
  :id: 296
3
3
  :name: Angular Bisector and Tangent
4
- :url: http://projecteuler.net/problem=296
5
- :content: "Given is an integer sided triangle <var>ABC</var> with <var>BC</var> ![]({{
6
- images_dir }}/symbol_le.gif) <var>AC</var> ![]({{ images_dir }}/symbol_le.gif)
7
- <var>AB</var>. \n<var>k</var> is the angular bisector of angle <var>ACB</var>.
8
- \ \n <var>m</var> is the tangent at <var>C</var> to the circumscribed circle of
9
- <var>ABC</var>. \n <var>n</var> is a line parallel to <var>m</var> through <var>B</var>.
10
- \ \n\rThe intersection of <var>n</var> and <var>k</var> is called <var>E</var>.\n\n
11
- ![]({{ images_dir }}/p296_bisector.gif)\n\nHow many triangles <var>ABC</var> with
12
- a perimeter not exceeding 100 000 exist such that <var>BE</var> has integral length?\n\n"
4
+ :url: https://projecteuler.net/problem=296
5
+ :content: "Given is an integer sided triangle <var>ABC</var> with <var>BC</var> ≤
6
+ <var>AC</var> ≤ <var>AB</var>. \n<var>k</var> is the angular bisector of angle
7
+ <var>ACB</var>. \n<var>m</var> is the tangent at <var>C</var> to the circumscribed
8
+ circle of <var>ABC</var>. \n<var>n</var> is a line parallel to <var>m</var> through
9
+ <var>B</var>. \nThe intersection of <var>n</var> and <var>k</var> is called <var>E</var>.\n\n
10
+ ![p296_bisector.gif]({{ images_dir }}/p296_bisector.gif)\n\nHow many triangles <var>ABC</var>
11
+ with a perimeter not exceeding 100 000 exist such that <var>BE</var> has integral
12
+ length?\n\n"
@@ -1,15 +1,13 @@
1
1
  ---
2
2
  :id: 297
3
3
  :name: Zeckendorf Representation
4
- :url: http://projecteuler.net/problem=297
4
+ :url: https://projecteuler.net/problem=297
5
5
  :content: "Each new term in the Fibonacci sequence is generated by adding the previous
6
- two terms. \n\rStarting with 1 and 2, the first 10 terms will be: 1, 2, 3, 5, 8,
6
+ two terms. \nStarting with 1 and 2, the first 10 terms will be: 1, 2, 3, 5, 8,
7
7
  13, 21, 34, 55, 89.\n\nEvery positive integer can be uniquely written as a sum of
8
- nonconsecutive terms of the Fibonacci sequence. For example, 100 = 3 + 8 + 89. \n\rSuch
8
+ nonconsecutive terms of the Fibonacci sequence. For example, 100 = 3 + 8 + 89. \nSuch
9
9
  a sum is called the **Zeckendorf representation** of the number.\n\nFor any integer
10
- <var>n</var>>0, let <var>z</var>(<var>n</var>) be the number of terms in the Zeckendorf
11
- representation of <var>n</var>. \n\rThus, <var>z</var>(5) = 1, <var>z</var>(14) = 2,
12
- <var>z</var>(100) = 3 etc. \n\rAlso, for 0 ![<]({{ images_dir }}/symbol_lt.gif)<var>n</var>
13
- ![<]({{ images_dir }}/symbol_lt.gif)10<sup>6</sup>, ∑ <var>z</var>(<var>n</var>) = 7894453.\n\nFind
14
- ∑ <var>z</var>(<var>n</var>) for 0 ![<]({{ images_dir }}/symbol_lt.gif)<var>n</var>
15
- ![<]({{ images_dir }}/symbol_lt.gif)10<sup>17</sup>.\n\n"
10
+ <var>n</var>\\>0, let <var>z</var>(<var>n</var>) be the number of terms in the Zeckendorf
11
+ representation of <var>n</var>. \nThus, <var>z</var>(5) = 1, <var>z</var>(14) = 2,
12
+ <var>z</var>(100) = 3 etc. \nAlso, for 0\\<<var>n</var>\\<10<sup>6</sup>, ∑ <var>z</var>(<var>n</var>) = 7894453.\n\nFind
13
+ ∑ <var>z</var>(<var>n</var>) for 0\\<<var>n</var>\\<10<sup>17</sup>.\n\n"
@@ -1,46 +1,38 @@
1
1
  ---
2
2
  :id: 298
3
3
  :name: Selective Amnesia
4
- :url: http://projecteuler.net/problem=298
5
- :content: "<style type=\"text/css\"><![CDATA[\r\ntable.p298, table.p298 th, table.p298
6
- td {\r\n border-width: 1px 1px 1px 1px;\r\n border-style: solid solid solid solid;\r\n
7
- \ border-color: black black black black;\r\n text-align:center;\r\n -moz-border-radius:
8
- 0px 0px 0px 0px;\r\n}\r\ntable.p298 {\r\n border-spacing: 1px;\r\n border-collapse:
9
- separate;\r\n background-color: rgb(255,255,255);\r\n}\r\ntable.p298 th, table.p298
10
- td {\r\n padding: 1px 6px 1px 6px;\r\n}\r\ntable.p298 th { background-color: rgb(200,220,250);
11
- }\r\ntable.p298 td { background-color: rgb(255,255,255); }\r\n]]></style>\n\nLarry
12
- and Robin play a memory game involving of a sequence of random numbers between 1
13
- and 10, inclusive, that are called out one at a time. Each player can remember up
14
- to 5 previous numbers. When the called number is in a player's memory, that player
15
- is awarded a point. If it's not, the player adds the called number to his memory,
16
- removing another number if his memory is full.\n\nBoth players start with empty
17
- memories. Both players always add new missed numbers to their memory but use a different
18
- strategy in deciding which number to remove: \n\rLarry's strategy is to remove
19
- the number that hasn't been called in the longest time. \n\rRobin's strategy is
20
- to remove the number that's been in the memory the longest time.\n\nExample game:\n\n<center><table
21
- class=\"p298\">\r\n<tr>\r\n <th>Turn</th>\r\n <th>Called<br>number</th>\r\n <th
22
- style=\"text-align:right\">Larry's<br>memory</th>\r\n <th>Larry's<br>score</th>\r\n
23
- \ <th style=\"text-align:right\">Robin's<br>memory</th>\r\n <th>Robin's<br>score</th>\r\n</tr>\r\n<tr>\r\n
24
- \ <td>1</td>\r\n <td>1</td>\r\n <td style=\"text-align:right\">1</td>\r\n <td>0</td>\r\n
25
- \ <td style=\"text-align:right\">1</td>\r\n <td>0</td>\r\n</tr>\r\n<tr>\r\n <td>2</td>\r\n
26
- \ <td>2</td>\r\n <td style=\"text-align:right\">1,2</td>\r\n <td>0</td>\r\n <td
27
- style=\"text-align:right\">1,2</td>\r\n <td>0</td>\r\n</tr>\r\n<tr>\r\n <td>3</td>\r\n
28
- \ <td>4</td>\r\n <td style=\"text-align:right\">1,2,4</td>\r\n <td>0</td>\r\n
29
- \ <td style=\"text-align:right\">1,2,4</td>\r\n <td>0</td>\r\n</tr>\r\n<tr>\r\n
30
- \ <td>4</td>\r\n <td>6</td>\r\n <td style=\"text-align:right\">1,2,4,6</td>\r\n
31
- \ <td>0</td>\r\n <td style=\"text-align:right\">1,2,4,6</td>\r\n <td>0</td>\r\n</tr>\r\n<tr>\r\n
32
- \ <td>5</td>\r\n <td>1</td>\r\n <td style=\"text-align:right\">1,2,4,6</td>\r\n
33
- \ <td>1</td>\r\n <td style=\"text-align:right\">1,2,4,6</td>\r\n <td>1</td>\r\n</tr>\r\n<tr>\r\n
34
- \ <td>6</td>\r\n <td>8</td>\r\n <td style=\"text-align:right\">1,2,4,6,8</td>\r\n
35
- \ <td>1</td>\r\n <td style=\"text-align:right\">1,2,4,6,8</td>\r\n <td>1</td>\r\n</tr>\r\n<tr>\r\n
36
- \ <td>7</td>\r\n <td>10</td>\r\n <td style=\"text-align:right\">1,4,6,8,10</td>\r\n
37
- \ <td>1</td>\r\n <td style=\"text-align:right\">2,4,6,8,10</td>\r\n <td>1</td>\r\n</tr>\r\n<tr>\r\n
38
- \ <td>8</td>\r\n <td>2</td>\r\n <td style=\"text-align:right\">1,2,6,8,10</td>\r\n
39
- \ <td>1</td>\r\n <td style=\"text-align:right\">2,4,6,8,10</td>\r\n <td>2</td>\r\n</tr>\r\n<tr>\r\n
40
- \ <td>9</td>\r\n <td>4</td>\r\n <td style=\"text-align:right\">1,2,4,8,10</td>\r\n
41
- \ <td>1</td>\r\n <td style=\"text-align:right\">2,4,6,8,10</td>\r\n <td>3</td>\r\n</tr>\r\n<tr>\r\n
42
- \ <td>10</td>\r\n <td>1</td>\r\n <td style=\"text-align:right\">1,2,4,8,10</td>\r\n
43
- \ <td>2</td>\r\n <td style=\"text-align:right\">1,4,6,8,10</td>\r\n <td>3</td>\r\n</tr>\n</table></center>\n\nDenoting
4
+ :url: https://projecteuler.net/problem=298
5
+ :content: "Larry and Robin play a memory game involving of a sequence of random numbers
6
+ between 1 and 10, inclusive, that are called out one at a time. Each player can
7
+ remember up to 5 previous numbers. When the called number is in a player's memory,
8
+ that player is awarded a point. If it's not, the player adds the called number to
9
+ his memory, removing another number if his memory is full.\n\nBoth players start
10
+ with empty memories. Both players always add new missed numbers to their memory
11
+ but use a different strategy in deciding which number to remove: \nLarry's strategy
12
+ is to remove the number that hasn't been called in the longest time. \nRobin's
13
+ strategy is to remove the number that's been in the memory the longest time.\n\nExample
14
+ game:\n\n<center><table class=\"p298\">\n<tr>\n<th>Turn</th>\n <th>Called<br>number</th>\n
15
+ \ <th style=\"text-align:right;\">Larry's<br>memory</th>\n <th>Larry's<br>score</th>\n
16
+ \ <th style=\"text-align:right;\">Robin's<br>memory</th>\n <th>Robin's<br>score</th>\n</tr>\n<tr>\n<td>1</td>\n
17
+ \ <td>1</td>\n <td style=\"text-align:right;\">1</td>\n <td>0</td>\n <td style=\"text-align:right;\">1</td>\n
18
+ \ <td>0</td>\n</tr>\n<tr>\n<td>2</td>\n <td>2</td>\n <td style=\"text-align:right;\">1,2</td>\n
19
+ \ <td>0</td>\n <td style=\"text-align:right;\">1,2</td>\n <td>0</td>\n</tr>\n<tr>\n<td>3</td>\n
20
+ \ <td>4</td>\n <td style=\"text-align:right;\">1,2,4</td>\n <td>0</td>\n <td
21
+ style=\"text-align:right;\">1,2,4</td>\n <td>0</td>\n</tr>\n<tr>\n<td>4</td>\n
22
+ \ <td>6</td>\n <td style=\"text-align:right;\">1,2,4,6</td>\n <td>0</td>\n <td
23
+ style=\"text-align:right;\">1,2,4,6</td>\n <td>0</td>\n</tr>\n<tr>\n<td>5</td>\n
24
+ \ <td>1</td>\n <td style=\"text-align:right;\">1,2,4,6</td>\n <td>1</td>\n <td
25
+ style=\"text-align:right;\">1,2,4,6</td>\n <td>1</td>\n</tr>\n<tr>\n<td>6</td>\n
26
+ \ <td>8</td>\n <td style=\"text-align:right;\">1,2,4,6,8</td>\n <td>1</td>\n <td
27
+ style=\"text-align:right;\">1,2,4,6,8</td>\n <td>1</td>\n</tr>\n<tr>\n<td>7</td>\n
28
+ \ <td>10</td>\n <td style=\"text-align:right;\">1,4,6,8,10</td>\n <td>1</td>\n
29
+ \ <td style=\"text-align:right;\">2,4,6,8,10</td>\n <td>1</td>\n</tr>\n<tr>\n<td>8</td>\n
30
+ \ <td>2</td>\n <td style=\"text-align:right;\">1,2,6,8,10</td>\n <td>1</td>\n
31
+ \ <td style=\"text-align:right;\">2,4,6,8,10</td>\n <td>2</td>\n</tr>\n<tr>\n<td>9</td>\n
32
+ \ <td>4</td>\n <td style=\"text-align:right;\">1,2,4,8,10</td>\n <td>1</td>\n
33
+ \ <td style=\"text-align:right;\">2,4,6,8,10</td>\n <td>3</td>\n</tr>\n<tr>\n<td>10</td>\n
34
+ \ <td>1</td>\n <td style=\"text-align:right;\">1,2,4,8,10</td>\n <td>2</td>\n
35
+ \ <td style=\"text-align:right;\">1,4,6,8,10</td>\n <td>3</td>\n</tr>\n</table></center>\n\nDenoting
44
36
  Larry's score by <var>L</var> and Robin's score by <var>R</var>, what is the expected
45
37
  value of |<var>L</var>-<var>R</var>| after 50 turns? Give your answer rounded to
46
38
  eight decimal places using the format x.xxxxxxxx .\n\n"
@@ -1,24 +1,22 @@
1
1
  ---
2
2
  :id: 299
3
3
  :name: Three similar triangles
4
- :url: http://projecteuler.net/problem=299
5
- :content: "Four points with integer coordinates are selected: \nA(<var>a</var>, 0),
6
- B(<var>b</var>, 0), C(0, <var>c</var>) and D(0, <var>d</var>), \rwith 0  ![<]({{
7
- images_dir }}/symbol_lt.gif) <var>a</var>  ![<]({{ images_dir }}/symbol_lt.gif) <var>b</var>
8
- and 0  ![<]({{ images_dir }}/symbol_lt.gif) <var>c</var>  ![<]({{ images_dir }}/symbol_lt.gif) <var>d</var>.
9
- \ \n\rPoint P, also with integer coordinates, is chosen on the line AC so that the
4
+ :url: https://projecteuler.net/problem=299
5
+ :content: "Four points with integer coordinates are selected: \nA(<var>a</var>,&nbsp;0),
6
+ B(<var>b</var>,&nbsp;0), C(0,&nbsp;<var>c</var>) and D(0,&nbsp;<var>d</var>), with
7
+ 0&nbsp;\\<&nbsp;<var>a</var>&nbsp;\\<&nbsp;<var>b</var> and 0&nbsp;\\<&nbsp;<var>c</var>&nbsp;\\<&nbsp;<var>d</var>.
8
+ \ \nPoint P, also with integer coordinates, is chosen on the line AC so that the
10
9
  three triangles ABP, CDP and BDP are all <dfn title=\"Have equal angles\">similar</dfn>.\n\n
11
- ![]({{ images_dir }}/p_299_ThreeSimTri.gif)\n\nIt is easy to prove that the three
12
- triangles can be similar, only if <var>a</var>=<var>c</var>.\n\nSo, given that <var>a</var>=<var>c</var>,
13
- we are looking for triplets (<var>a</var>,<var>b</var>,<var>d</var>) such that at
14
- least one point P (with integer coordinates) exists on AC, making the three triangles
15
- ABP, CDP and BDP all similar.\n\nFor example, if (<var>a</var>,<var>b</var>,<var>d</var>)=(2,3,4),
16
- it can be easily verified that point P(1,1) satisfies the above condition. \rNote
10
+ ![p299_ThreeSimTri.gif]({{ images_dir }}/p299_ThreeSimTri.gif)\n\nIt is easy to
11
+ prove that the three triangles can be similar, only if <var>a</var>=<var>c</var>.\n\nSo,
12
+ given that <var>a</var>=<var>c</var>, we are looking for triplets (<var>a</var>,<var>b</var>,<var>d</var>)
13
+ such that at least one point P (with integer coordinates) exists on AC, making the
14
+ three triangles ABP, CDP and BDP all similar.\n\nFor example, if (<var>a</var>,<var>b</var>,<var>d</var>)=(2,3,4),
15
+ it can be easily verified that point P(1,1) satisfies the above condition. Note
17
16
  that the triplets (2,3,4) and (2,4,3) are considered as distinct, although point
18
- P(1,1) is common for both.\n\nIf <var>b</var>+<var>d</var>  ![<]({{ images_dir }}/symbol_lt.gif) 100,
19
- there are 92 distinct triplets (<var>a</var>,<var>b</var>,<var>d</var>) such that
20
- point P exists. \n\rIf <var>b</var>+<var>d</var>  ![<]({{ images_dir }}/symbol_lt.gif) 100
21
- 000, there are 320471 distinct triplets (<var>a</var>,<var>b</var>,<var>d</var>)
22
- such that point P exists.\n\nIf <var>b</var>+<var>d</var>  ![<]({{ images_dir }}/symbol_lt.gif) 100
23
- 000 000, how many distinct triplets (<var>a</var>,<var>b</var>,<var>d</var>) are
24
- there such that point P exists?\n\n"
17
+ P(1,1) is common for both.\n\nIf <var>b</var>+<var>d</var>&nbsp;\\<&nbsp;100, there
18
+ are 92 distinct triplets (<var>a</var>,<var>b</var>,<var>d</var>) such that point
19
+ P exists. \nIf <var>b</var>+<var>d</var>&nbsp;\\<&nbsp;100 000, there are 320471
20
+ distinct triplets (<var>a</var>,<var>b</var>,<var>d</var>) such that point P exists.\n\nIf
21
+ <var>b</var>+<var>d</var>&nbsp;\\<&nbsp;100 000 000, how many distinct triplets
22
+ (<var>a</var>,<var>b</var>,<var>d</var>) are there such that point P exists?\n\n"