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,12 +1,13 @@
1
1
  ---
2
2
  :id: 379
3
3
  :name: Least common multiple count
4
- :url: http://projecteuler.net/problem=379
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> ![]({{ images_dir
7
- }}/symbol_le.gif) <var>y</var> and the least common multiple of <var>x</var> and
8
- <var>y</var> equal to <var>n</var>.\n\nLet <var>g</var> be the **summatory function**
9
- of <var>f</var>, i.e.: \r<var>g</var>(<var>n</var>) = ![∑]({{ images_dir }}/symbol_sum.gif)
10
- <var>f</var>(<var>i</var>) for 1 ![≤]({{ images_dir }}/symbol_le.gif) <var>i</var>
11
- ![≤]({{ images_dir }}/symbol_le.gif) <var>n</var>.\n\nYou are given that <var>g</var>(10<sup>6</sup>)
12
- = 37429395.\n\nFind <var>g</var>(10<sup>12</sup>).\n\n"
4
+ :url: https://projecteuler.net/problem=379
5
+ :content: |+
6
+ Let <var>f</var>(<var>n</var>) be the number of couples (<var>x</var>,<var>y</var>) with <var>x</var> and <var>y</var> positive integers, <var>x</var> ≤ <var>y</var> and the least common multiple of <var>x</var> and <var>y</var> equal to <var>n</var>.
7
+
8
+ Let <var>g</var> be the **summatory function** of <var>f</var>, i.e.: <var>g</var>(<var>n</var>) = <var>f</var>(<var>i</var>) for 1 ≤ <var>i</var> ≤ <var>n</var>.
9
+
10
+ You are given that <var>g</var>(10<sup>6</sup>) = 37429395.
11
+
12
+ Find <var>g</var>(10<sup>12</sup>).
13
+
data/data/problems/38.yml CHANGED
@@ -1,14 +1,12 @@
1
1
  ---
2
2
  :id: 38
3
3
  :name: Pandigital multiples
4
- :url: http://projecteuler.net/problem=38
5
- :content: "Take the number 192 and multiply it by each of 1, 2, and 3:\n\n> 192 ![×]({{
6
- images_dir }}/symbol_times.gif) 1 = 192 \n> \r192 ![×]({{ images_dir }}/symbol_times.gif)
7
- 2 = 384 \n> \r192 ![×]({{ images_dir }}/symbol_times.gif) 3 = 576\n\nBy concatenating
8
- each product we get the 1 to 9 pandigital, 192384576. We will call 192384576 the
9
- concatenated product of 192 and (1,2,3)\n\nThe same can be achieved by starting
10
- with 9 and multiplying by 1, 2, 3, 4, and 5, giving the pandigital, 918273645, which
11
- is the concatenated product of 9 and (1,2,3,4,5).\n\nWhat is the largest 1 to 9
12
- pandigital 9-digit number that can be formed as the concatenated product of an integer
13
- with (1,2, ... , <var>n</var>) where <var>n</var> ![>]({{ images_dir }}/symbol_gt.gif)
14
- 1?\n\n"
4
+ :url: https://projecteuler.net/problem=38
5
+ :content: "Take the number 192 and multiply it by each of 1, 2, and 3:\n\n> 192 ×
6
+ 1 = 192 \n> 192 × 2 = 384 \n> 192 × 3 = 576\n\nBy concatenating each product we
7
+ get the 1 to 9 pandigital, 192384576. We will call 192384576 the concatenated product
8
+ of 192 and (1,2,3)\n\nThe same can be achieved by starting with 9 and multiplying
9
+ by 1, 2, 3, 4, and 5, giving the pandigital, 918273645, which is the concatenated
10
+ product of 9 and (1,2,3,4,5).\n\nWhat is the largest 1 to 9 pandigital 9-digit number
11
+ that can be formed as the concatenated product of an integer with (1,2, ... , <var>n</var>)
12
+ where <var>n</var> \\> 1?\n\n"
@@ -1,16 +1,14 @@
1
1
  ---
2
2
  :id: 380
3
3
  :name: Amazing Mazes!
4
- :url: http://projecteuler.net/problem=380
5
- :content: "An m ![×]({{ images_dir }}/symbol_times.gif)n maze is an m ![×]({{ images_dir
6
- }}/symbol_times.gif)n rectangular grid with walls placed between grid cells such
7
- that there is exactly one path from the top-left square to any other square. \nThe
8
- following are examples of a 9 ![×]({{ images_dir }}/symbol_times.gif)12 maze and
9
- a 15 ![×]({{ images_dir }}/symbol_times.gif)20 maze:\n\n![]({{ images_dir }}/p_380_mazes.gif)\n\nLet
10
- C(m,n) be the number of distinct m ![×]({{ images_dir }}/symbol_times.gif)n mazes.
4
+ :url: https://projecteuler.net/problem=380
5
+ :content: "An m×n maze is an m×n rectangular grid with walls placed between grid cells
6
+ such that there is exactly one path from the top-left square to any other square.
7
+ \ \nThe following are examples of a 9×12 maze and a 15×20 maze:\n\n![p380_mazes.gif]({{
8
+ images_dir }}/p380_mazes.gif)\n\nLet C(m,n) be the number of distinct m×n mazes.
11
9
  Mazes which can be formed by rotation and reflection from another maze are considered
12
10
  distinct.\n\nIt can be verified that C(1,1) = 1, C(2,2) = 4, C(3,4) = 2415, and
13
- C(9,12) = 2.5720e46 (in scientific notation rounded to 5 significant digits). \n\rFind
11
+ C(9,12) = 2.5720e46 (in scientific notation rounded to 5 significant digits). \nFind
14
12
  C(100,500) and write your answer in scientific notation rounded to 5 significant
15
- digits.\n\nWhen giving your answer, use a lowercase e to separate mantissa and exponent.\rE.g.
16
- if the answer is 1234567891011 then the answer format would be 1.2346e12.\n\n"
13
+ digits.\n\nWhen giving your answer, use a lowercase e to separate mantissa and exponent.
14
+ E.g. if the answer is 1234567891011 then the answer format would be 1.2346e12.\n\n"
@@ -1,12 +1,8 @@
1
1
  ---
2
2
  :id: 381
3
- :name: (prime-k) factorial
4
- :url: http://projecteuler.net/problem=381
5
- :content: "For a prime p let S(p) = ( ![]({{ images_dir }}/symbol_sum.gif)(p-k)!)
6
- mod(p) for 1 ![≤]({{ images_dir }}/symbol_le.gif) k ![≤]({{ images_dir }}/symbol_le.gif)
7
- 5.\n\nFor example, if p=7, \n\r(7-1)! + (7-2)! + (7-3)! + (7-4)! + (7-5)! = 6!
8
- + 5! + 4! + 3! + 2! = 720+120+24+6+2 = 872. \n \rAs 872 mod(7) = 4, S(7) = 4.\n\nIt
9
- can be verified that ![∑]({{ images_dir }}/symbol_sum.gif)S(p) = 480 for 5 ![≤]({{
10
- images_dir }}/symbol_le.gif) p ![<]({{ images_dir }}/symbol_lt.gif) 100.\n\nFind
11
- ![∑]({{ images_dir }}/symbol_sum.gif)S(p) for 5 ![≤]({{ images_dir }}/symbol_le.gif)
12
- p ![<]({{ images_dir }}/symbol_lt.gif) 10<sup>8</sup>.\n\n"
3
+ :name: "(prime-k) factorial"
4
+ :url: https://projecteuler.net/problem=381
5
+ :content: "For a prime p let S(p) = (∑(p-k)!) mod(p) for 1 ≤ k ≤ 5.\n\nFor example,
6
+ if p=7, \n(7-1)! + (7-2)! + (7-3)! + (7-4)! + (7-5)! = 6! + 5! + 4! + 3! + 2! =
7
+ 720+120+24+6+2 = 872. \n As 872 mod(7) = 4, S(7) = 4.\n\nIt can be verified that
8
+ ∑S(p) = 480 for 5 p \\< 100.\n\nFind ∑S(p) for 5 p \\< 10<sup>8</sup>.\n\n"
@@ -1,20 +1,19 @@
1
1
  ---
2
2
  :id: 382
3
3
  :name: Generating polygons
4
- :url: http://projecteuler.net/problem=382
4
+ :url: https://projecteuler.net/problem=382
5
5
  :content: "A **polygon** is a flat shape consisting of straight line segments that
6
6
  are joined to form a closed chain or circuit. A polygon consists of at least three
7
7
  sides and does not self-intersect.\n\nA set S of positive numbers is said to _generate
8
- a polygon_ P if:\n\n- no two sides of P are the same length,\r\n- the length of
9
- every side of P is in S, and\r\n- S contains no other value.\r\n\nFor example: \n\rThe
10
- set {3, 4, 5} generates a polygon with sides 3, 4, and 5 (a triangle). \n\rThe
11
- set {6, 9, 11, 24} generates a polygon with sides 6, 9, 11, and 24 (a quadrilateral).
12
- \ \n\rThe sets {1, 2, 3} and {2, 3, 4, 9} do not generate any polygon at all.\n\nConsider
8
+ a polygon_ P if:\n\n- no two sides of P are the same length,\n- the length of every
9
+ side of P is in S, and\n- S contains no other value.\n\nFor example: \nThe set
10
+ {3, 4, 5} generates a polygon with sides 3, 4, and 5 (a triangle). \nThe set {6,
11
+ 9, 11, 24} generates a polygon with sides 6, 9, 11, and 24 (a quadrilateral). \nThe
12
+ sets {1, 2, 3} and {2, 3, 4, 9} do not generate any polygon at all.\n\nConsider
13
13
  the sequence s, defined as follows:\n\n- s<sub>1</sub> = 1, s<sub>2</sub> = 2, s<sub>3</sub>
14
- = 3\r\n- s<sub><var>n</var></sub> = s<sub><var>n</var>-1</sub> + s<sub><var>n</var>-3</sub>
15
- for <var>n</var> ![>]({{ images_dir }}/symbol_gt.gif) 3.\r\n\nLet U<sub><var>n</var></sub>
16
- be the set {s<sub>1</sub>, s<sub>2</sub>, ..., s<sub><var>n</var></sub>}. For example,
17
- U<sub>10</sub> = {1, 2, 3, 4, 6, 9, 13, 19, 28, 41}. \n\rLet f(<var>n</var>) be
18
- the number of subsets of U<sub><var>n</var></sub> which generate at least one polygon.
19
- \ \n\rFor example, f(5) = 7, f(10) = 501 and f(25) = 18635853.\n\nFind the last
20
- 9 digits of f(10<sup>18</sup>).\n\n"
14
+ = 3\n- s<sub><var>n</var></sub> = s<sub><var>n</var>-1</sub> + s<sub><var>n</var>-3</sub>
15
+ for <var>n</var> \\> 3.\n\nLet U<sub><var>n</var></sub> be the set {s<sub>1</sub>,
16
+ s<sub>2</sub>, ..., s<sub><var>n</var></sub>}. For example, U<sub>10</sub> = {1,
17
+ 2, 3, 4, 6, 9, 13, 19, 28, 41}. \nLet f(<var>n</var>) be the number of subsets
18
+ of U<sub><var>n</var></sub> which generate at least one polygon. \nFor example,
19
+ f(5) = 7, f(10) = 501 and f(25) = 18635853.\n\nFind the last 9 digits of f(10<sup>18</sup>).\n\n"
@@ -1,11 +1,10 @@
1
1
  ---
2
2
  :id: 383
3
3
  :name: Divisibility comparison between factorials
4
- :url: http://projecteuler.net/problem=383
4
+ :url: https://projecteuler.net/problem=383
5
5
  :content: "Let f<sub>5</sub>(<var>n</var>) be the largest integer <var>x</var> for
6
- which 5<sup><var>x</var></sup> divides <var>n</var>. \n\rFor example, f<sub>5</sub>(625000)
6
+ which 5<sup><var>x</var></sup> divides <var>n</var>. \nFor example, f<sub>5</sub>(625000)
7
7
  = 7.\n\nLet T<sub>5</sub>(<var>n</var>) be the number of integers <var>i</var> which
8
- satisfy f<sub>5</sub>((2·<var>i</var>-1)!) 5(<var>i</var>!) and 1 ![≤]({{ images_dir
9
- }}/symbol_le.gif) <var>i</var> ![]({{ images_dir }}/symbol_le.gif) <var>n</var>.
10
- \ \n\rIt can be verified that T<sub>5</sub>(10<sup>3</sup>) = 68 and T<sub>5</sub>(10<sup>9</sup>)
11
- = 2408210.\n\nFind T<sub>5</sub>(10<sup>18</sup>).\n\n"
8
+ satisfy f<sub>5</sub>((2·<var>i</var>-1)!) \\< 2·f<sub>5</sub>(<var>i</var>!) and
9
+ 1 <var>i</var> ≤ <var>n</var>. \nIt can be verified that T<sub>5</sub>(10<sup>3</sup>)
10
+ = 68 and T<sub>5</sub>(10<sup>9</sup>) = 2408210.\n\nFind T<sub>5</sub>(10<sup>18</sup>).\n\n"
@@ -1,23 +1,19 @@
1
1
  ---
2
2
  :id: 384
3
3
  :name: Rudin-Shapiro sequence
4
- :url: http://projecteuler.net/problem=384
4
+ :url: https://projecteuler.net/problem=384
5
5
  :content: "Define the sequence a(n) as the number of adjacent pairs of ones in the
6
- binary expansion of n (possibly overlapping).\r \nE.g.: a(5) = a(101<sub>2</sub>)
6
+ binary expansion of n (possibly overlapping). \nE.g.: a(5) = a(101<sub>2</sub>)
7
7
  = 0, a(6) = a(110<sub>2</sub>) = 1, a(7) = a(111<sub>2</sub>) = 2\n\nDefine the
8
- sequence b(n) = (-1)<sup>a(n)</sup>.\r \nThis sequence is called the **Rudin-Shapiro**
9
- sequence.\n\nAlso consider the summatory sequence of b(n): ![]({{ images_dir }}/p_384_formula.gif).\n\nThe
10
- first couple of values of these sequences are:\r \n<tt>n    &amp;nbsp   0 &amp;nbsp
11
-   1 &amp;nbsp   2 &amp;nbsp   3 &amp;nbsp   4 &amp;nbsp   5 &amp;nbsp   6 &amp;nbsp
12
-   7\r\n<br>a(n) &amp;nbsp   0 &amp;nbsp   0 &amp;nbsp   0 &amp;nbsp   1 &amp;nbsp
13
-   0 &amp;nbsp   0 &amp;nbsp   1 &amp;nbsp   2\r\n<br>b(n) &amp;nbsp   1 &amp;nbsp
14
-   1 &amp;nbsp   1 &amp;nbsp  -1 &amp;nbsp   1 &amp;nbsp   1 &amp;nbsp  -1 &amp;nbsp
15
-   1\r\n<br>s(n) &amp;nbsp   1 &amp;nbsp   2 &amp;nbsp   3 &amp;nbsp   2 &amp;nbsp
16
-   3 &amp;nbsp   4 &amp;nbsp   3 &amp;nbsp   4</tt>\n\nThe sequence s(n) has the
17
- remarkable property that all elements are positive and every positive integer k
18
- occurs exactly k times.\n\nDefine g(t,c), with 1 ![≤]({{ images_dir }}/symbol_le.gif)
19
- c ![≤]({{ images_dir }}/symbol_le.gif) t, as the index in s(n) for which t occurs
20
- for the c'th time in s(n).\r \nE.g.: g(3,3) = 6, g(4,2) = 7 and g(54321,12345)
21
- = 1220847710.\n\nLet F(n) be the fibonacci sequence defined by:\r \nF(0)=F(1)=1
22
- and\r \nF(n)=F(n-1)+F(n-2) for n>1.\n\nDefine GF(t)=g(F(t),F(t-1)).\n\nFind ΣGF(t)
23
- for 2 ![≤]({{ images_dir }}/symbol_le.gif)t ![≤]({{ images_dir }}/symbol_le.gif)45.\n\n"
8
+ sequence b(n) = (-1)<sup>a(n)</sup>. \nThis sequence is called the **Rudin-Shapiro**
9
+ sequence.\n\nAlso consider the summatory sequence of b(n): ![p384_formula.gif]({{
10
+ images_dir }}/p384_formula.gif).\n\nThe first couple of values of these sequences
11
+ are: \n<tt>n        0     1     2     3     4     5     6     7\n<br>a(n)     0
12
+     0     0     1     0     0     1     2\n<br>b(n)     1     1     1    -1    
13
+ 1     1    -1     1\n<br>s(n)     1     2     3     2     3     4     3     4</tt>\n\nThe
14
+ sequence s(n) has the remarkable property that all elements are positive and every
15
+ positive integer k occurs exactly k times.\n\nDefine g(t,c), with 1 c t, as
16
+ the index in s(n) for which t occurs for the c'th time in s(n). \nE.g.: g(3,3)
17
+ = 6, g(4,2) = 7 and g(54321,12345) = 1220847710.\n\nLet F(n) be the fibonacci sequence
18
+ defined by: \nF(0)=F(1)=1 and \nF(n)=F(n-1)+F(n-2) for n\\>1.\n\nDefine GF(t)=g(F(t),F(t-1)).\n\nFind
19
+ ΣGF(t) for 2≤t≤45.\n\n"
@@ -1,18 +1,16 @@
1
1
  ---
2
2
  :id: 385
3
3
  :name: Ellipses inside triangles
4
- :url: http://projecteuler.net/problem=385
4
+ :url: https://projecteuler.net/problem=385
5
5
  :content: "For any triangle <var>T</var> in the plane, it can be shown that there
6
- is a unique ellipse with largest area that is completely inside <var>T</var>.\n\n![]({{
7
- images_dir }}/p_385_ellipsetriangle.png)\n\nFor a given <var>n</var>, consider triangles
8
- <var>T</var> such that: \n\r- the vertices of <var>T</var> have integer coordinates
9
- with absolute value ![]({{ images_dir }}/symbol_le.gif) n, and \n\r- the **foci**
10
- <sup>1</sup> of the largest-area ellipse inside <var>T</var> are ( ![√]({{ images_dir
11
- }}/symbol_radic.gif)13,0) and (- ![√]({{ images_dir }}/symbol_radic.gif)13,0). \n\rLet
12
- A(<var>n</var>) be the sum of the areas of all such triangles.\n\nFor example, if
13
- <var>n</var> = 8, there are two such triangles. Their vertices are (-4,-3),(-4,3),(8,0)
14
- and (4,3),(4,-3),(-8,0), and the area of each triangle is 36. Thus A(8) = 36 + 36
15
- = 72.\n\nIt can be verified that A(10) = 252, A(100) = 34632 and A(1000) = 3529008.\n\nFind
16
- A(1 000 000 000).\n\n<sup>1</sup>The **foci** (plural of **focus** ) of an ellipse
17
- are two points A and B such that for every point P on the boundary of the ellipse,
18
- <var>AP</var> + <var>PB</var> is constant.\n\n"
6
+ is a unique ellipse with largest area that is completely inside <var>T</var>.\n\n![p385_ellipsetriangle.png]({{
7
+ images_dir }}/p385_ellipsetriangle.png)\n\nFor a given <var>n</var>, consider triangles
8
+ <var>T</var> such that: \n- the vertices of <var>T</var> have integer coordinates
9
+ with absolute value ≤ n, and \n- the **foci** <sup>1</sup> of the largest-area
10
+ ellipse inside <var>T</var> are (√13,0) and (-√13,0). \nLet A(<var>n</var>) be
11
+ the sum of the areas of all such triangles.\n\nFor example, if <var>n</var> = 8,
12
+ there are two such triangles. Their vertices are (-4,-3),(-4,3),(8,0) and (4,3),(4,-3),(-8,0),
13
+ and the area of each triangle is 36. Thus A(8) = 36 + 36 = 72.\n\nIt can be verified
14
+ that A(10) = 252, A(100) = 34632 and A(1000) = 3529008.\n\nFind A(1 000 000 000).\n\n<sup>1</sup>The
15
+ **foci** (plural of **focus** ) of an ellipse are two points A and B such that for
16
+ every point P on the boundary of the ellipse, <var>AP</var> + <var>PB</var> is constant.\n\n"
@@ -1,14 +1,13 @@
1
1
  ---
2
2
  :id: 386
3
3
  :name: Maximum length of an antichain
4
- :url: http://projecteuler.net/problem=386
4
+ :url: https://projecteuler.net/problem=386
5
5
  :content: "Let <var>n</var> be an integer and <var>S</var>(<var>n</var>) be the set
6
6
  of factors of <var>n</var>.\n\nA subset <var>A</var> of <var>S</var>(<var>n</var>)
7
7
  is called an **antichain** of <var>S</var>(<var>n</var>) if <var>A</var> contains
8
8
  only one element or if none of the elements of <var>A</var> divides any of the other
9
9
  elements of <var>A</var>.\n\nFor example: <var>S</var>(30) = {1, 2, 3, 5, 6, 10,
10
- 15, 30}\r \n{2, 5, 6} is not an antichain of <var>S</var>(30).\r \n{2, 3, 5} is
11
- an antichain of <var>S</var>(30).\n\nLet <var>N</var>(<var>n</var>) be the maximum
10
+ 15, 30} \n{2, 5, 6} is not an antichain of <var>S</var>(30). \n{2, 3, 5} is an
11
+ antichain of <var>S</var>(30).\n\nLet <var>N</var>(<var>n</var>) be the maximum
12
12
  length of an antichain of <var>S</var>(<var>n</var>).\n\nFind Σ<var>N</var>(<var>n</var>)
13
- for 1 ![]({{ images_dir }}/symbol_le.gif) <var>n</var> ![]({{ images_dir }}/symbol_le.gif)
14
- 10<sup>8</sup>\n\n"
13
+ for 1 ≤ <var>n</var> ≤ 10<sup>8</sup>\n\n"
@@ -1,18 +1,17 @@
1
1
  ---
2
2
  :id: 387
3
3
  :name: Harshad Numbers
4
- :url: http://projecteuler.net/problem=387
4
+ :url: https://projecteuler.net/problem=387
5
5
  :content: "A **Harshad or Niven number** is a number that is divisible by the sum
6
- of its digits.\r \n201 is a Harshad number because it is divisible by 3 (the sum
7
- of its digits.)\r \nWhen we truncate the last digit from 201, we get 20, which
8
- is a Harshad number.\r \nWhen we truncate the last digit from 20, we get 2, which
9
- is also a Harshad number.\r \nLet's call a Harshad number that, while recursively
10
- truncating the last digit, always results in a Harshad number a _right truncatable
11
- Harshad number._\n\nAlso:\r \n201/3=67 which is prime.\r \nLet's call a Harshad
12
- number that, when divided by the sum of its digits, results in a prime a _strong
13
- Harshad number_.\n\nNow take the number 2011 which is prime.\r \nWhen we truncate
14
- the last digit from it we get 201, a strong Harshad number that is also right truncatable.\r
15
- \ \nLet's call such primes _strong, right truncatable Harshad primes_.\n\nYou are
16
- given that the sum of the strong, right truncatable Harshad primes less than 10000
17
- is 90619.\n\nFind the sum of the strong, right truncatable Harshad primes less than
18
- 10<sup>14</sup>.\n\n"
6
+ of its digits. \n201 is a Harshad number because it is divisible by 3 (the sum
7
+ of its digits.) \nWhen we truncate the last digit from 201, we get 20, which is
8
+ a Harshad number. \nWhen we truncate the last digit from 20, we get 2, which is
9
+ also a Harshad number. \nLet's call a Harshad number that, while recursively truncating
10
+ the last digit, always results in a Harshad number a _right truncatable Harshad
11
+ number._\n\nAlso: \n201/3=67 which is prime. \nLet's call a Harshad number that,
12
+ when divided by the sum of its digits, results in a prime a _strong Harshad number_.\n\nNow
13
+ take the number 2011 which is prime. \nWhen we truncate the last digit from it
14
+ we get 201, a strong Harshad number that is also right truncatable. \nLet's call
15
+ such primes _strong, right truncatable Harshad primes_.\n\nYou are given that the
16
+ sum of the strong, right truncatable Harshad primes less than 10000 is 90619.\n\nFind
17
+ the sum of the strong, right truncatable Harshad primes less than 10<sup>14</sup>.\n\n"
@@ -1,9 +1,9 @@
1
1
  ---
2
2
  :id: 388
3
3
  :name: Distinct Lines
4
- :url: http://projecteuler.net/problem=388
5
- :content: "Consider all lattice points (a,b,c) with 0 ![]({{ images_dir }}/symbol_le.gif)
6
- a,b,c ![≤]({{ images_dir }}/symbol_le.gif) N.\n\nFrom the origin O(0,0,0) all lines
7
- are drawn to the other lattice points. \n\rLet D(N) be the number of _distinct_
8
- such lines.\n\nYou are given that D(1 000 000) = 831909254469114121.\n\nFind D(10<sup>10</sup>).
9
- Give as your answer the first nine digits followed by the last nine digits.\n\n"
4
+ :url: https://projecteuler.net/problem=388
5
+ :content: "Consider all lattice points (a,b,c) with 0 ≤ a,b,c ≤ N.\n\nFrom the origin
6
+ O(0,0,0) all lines are drawn to the other lattice points. \nLet D(N) be the number
7
+ of _distinct_ such lines.\n\nYou are given that D(1 000 000) = 831909254469114121.\n\nFind
8
+ D(10<sup>10</sup>). Give as your answer the first nine digits followed by the last
9
+ nine digits.\n\n"
@@ -1,12 +1,12 @@
1
1
  ---
2
2
  :id: 389
3
3
  :name: Platonic Dice
4
- :url: http://projecteuler.net/problem=389
4
+ :url: https://projecteuler.net/problem=389
5
5
  :content: "An unbiased single 4-sided die is thrown and its value, <var>T</var>, is
6
6
  noted. \n<var>T</var> unbiased 6-sided dice are thrown and their scores are added
7
7
  together. The sum, <var>C</var>, is noted. \n<var>C</var> unbiased 8-sided dice
8
8
  are thrown and their scores are added together. The sum, <var>O</var>, is noted.
9
9
  \ \n<var>O</var> unbiased 12-sided dice are thrown and their scores are added together.
10
10
  The sum, <var>D</var>, is noted. \n<var>D</var> unbiased 20-sided dice are thrown
11
- and their scores are added together. The sum, <var>I</var>, is noted. \n\rFind
12
- the variance of <var>I</var>, and give your answer rounded to 4 decimal places.\n\n"
11
+ and their scores are added together. The sum, <var>I</var>, is noted. \nFind the
12
+ variance of <var>I</var>, and give your answer rounded to 4 decimal places.\n\n"
data/data/problems/39.yml CHANGED
@@ -1,11 +1,11 @@
1
1
  ---
2
2
  :id: 39
3
3
  :name: Integer right triangles
4
- :url: http://projecteuler.net/problem=39
4
+ :url: https://projecteuler.net/problem=39
5
5
  :content: |+
6
6
  If _p_ is the perimeter of a right angle triangle with integral length sides, {_a_,_b_,_c_}, there are exactly three solutions for _p_ = 120.
7
7
 
8
8
  {20,48,52}, {24,45,51}, {30,40,50}
9
9
 
10
- For which value of _p_ ![]({{ images_dir }}/symbol_le.gif) 1000, is the number of solutions maximised?
10
+ For which value of _p_ ≤ 1000, is the number of solutions maximised?
11
11
 
@@ -1,11 +1,15 @@
1
1
  ---
2
2
  :id: 390
3
3
  :name: Triangles with non rational sides and integral area
4
- :url: http://projecteuler.net/problem=390
5
- :content: "Consider the triangle with sides ![√]({{ images_dir }}/symbol_radic.gif)5,
6
- ![]({{ images_dir }}/symbol_radic.gif)65 and ![]({{ images_dir }}/symbol_radic.gif)68.\rIt
7
- can be shown that this triangle has area 9.\n\nS(n) is the sum of the areas of all
8
- triangles with sides ![]({{ images_dir }}/symbol_radic.gif)(1+b<sup>2</sup>), ![]({{
9
- images_dir }}/symbol_radic.gif)(1+c<sup>2</sup>) and ![√]({{ images_dir }}/symbol_radic.gif)(b<sup>2</sup>+c<sup>2</sup>)
10
- (for positive integers b and c ) that have an integral area not exceeding n.\n\nThe
11
- example triangle has b=2 and c=8.\n\nS(10<sup>6</sup>)=18018206.\n\nFind S(10<sup>10</sup>).\n\n"
4
+ :url: https://projecteuler.net/problem=390
5
+ :content: |+
6
+ Consider the triangle with sides 5, 65 and √68. It can be shown that this triangle has area 9.
7
+
8
+ S(n) is the sum of the areas of all triangles with sides √(1+b<sup>2</sup>), √(1+c<sup>2</sup>) and √(b<sup>2</sup>+c<sup>2</sup>) (for positive integers b and c ) that have an integral area not exceeding n.
9
+
10
+ The example triangle has b=2 and c=8.
11
+
12
+ S(10<sup>6</sup>)=18018206.
13
+
14
+ Find S(10<sup>10</sup>).
15
+
@@ -1,24 +1,22 @@
1
1
  ---
2
2
  :id: 391
3
3
  :name: Hopping Game
4
- :url: http://projecteuler.net/problem=391
4
+ :url: https://projecteuler.net/problem=391
5
5
  :content: "Let <var>s<sub>k</sub></var> be the number of 1’s when writing the numbers
6
- from 0 to <var>k</var> in binary. \n\rFor example, writing 0 to 5 in binary, we
7
- have 0, 1, 10, 11, 100, 101. There are seven 1’s, so <var>s</var><sub>5</sub> =
8
- 7. \n\rThe sequence S = {<var>s<sub>k</sub></var> : <var>k</var> ![]({{ images_dir
9
- }}/symbol_ge.gif) 0} starts {0, 1, 2, 4, 5, 7, 9, 12, ...}.\n\nA game is played
10
- by two players. Before the game starts, a number <var>n</var> is chosen. A counter
11
- <var>c</var> starts at 0. At each turn, the player chooses a number from 1 to <var>n</var>
12
- (inclusive) and increases <var>c</var> by that number. The resulting value of <var>c</var>
13
- must be a member of S. If there are no more valid moves, the player loses.\n\nFor
14
- example: \n\rLet <var>n</var> = 5. <var>c</var> starts at 0. \n\rPlayer 1 chooses
15
- 4, so <var>c</var> becomes 0 + 4 = 4. \n\rPlayer 2 chooses 5, so <var>c</var> becomes
16
- 4 + 5 = 9. \n\rPlayer 1 chooses 3, so <var>c</var> becomes 9 + 3 = 12. \n\retc.
17
- \ \n\rNote that <var>c</var> must always belong to S, and each player can increase
18
- <var>c</var> by at most <var>n</var>.\n\nLet M(<var>n</var>) be the highest number
19
- the first player can choose at her first turn to force a win, and M(<var>n</var>)
20
- = 0 if there is no such move. For example, M(2) = 2, M(7) = 1 and M(20) = 4.\n\nGiven
21
- Σ(M(<var>n</var>))<sup>3</sup> = 8150 for 1 ![]({{ images_dir }}/symbol_le.gif)
22
- <var>n</var> ![]({{ images_dir }}/symbol_le.gif) 20.\n\nFind Σ(M(<var>n</var>))<sup>3</sup>
23
- for 1 ![≤]({{ images_dir }}/symbol_le.gif) <var>n</var> ![≤]({{ images_dir }}/symbol_le.gif)
24
- 1000.\n\n"
6
+ from 0 to <var>k</var> in binary. \nFor example, writing 0 to 5 in binary, we have
7
+ 0, 1, 10, 11, 100, 101. There are seven 1’s, so <var>s</var><sub>5</sub> = 7. \nThe
8
+ sequence S = {<var>s<sub>k</sub></var> : <var>k</var> ≥ 0} starts {0, 1, 2, 4, 5,
9
+ 7, 9, 12, ...}.\n\nA game is played by two players. Before the game starts, a number
10
+ <var>n</var> is chosen. A counter <var>c</var> starts at 0. At each turn, the player
11
+ chooses a number from 1 to <var>n</var> (inclusive) and increases <var>c</var> by
12
+ that number. The resulting value of <var>c</var> must be a member of S. If there
13
+ are no more valid moves, the player loses.\n\nFor example: \nLet <var>n</var> =
14
+ 5. <var>c</var> starts at 0. \nPlayer 1 chooses 4, so <var>c</var> becomes 0 +
15
+ 4 = 4. \nPlayer 2 chooses 5, so <var>c</var> becomes 4 + 5 = 9. \nPlayer 1 chooses
16
+ 3, so <var>c</var> becomes 9 + 3 = 12. \netc. \nNote that <var>c</var> must always
17
+ belong to S, and each player can increase <var>c</var> by at most <var>n</var>.\n\nLet
18
+ M(<var>n</var>) be the highest number the first player can choose at her first turn
19
+ to force a win, and M(<var>n</var>) = 0 if there is no such move. For example, M(2)
20
+ = 2, M(7) = 1 and M(20) = 4.\n\nGiven Σ(M(<var>n</var>))<sup>3</sup> = 8150 for
21
+ 1 ≤ <var>n</var> ≤ 20.\n\nFind Σ(M(<var>n</var>))<sup>3</sup> for 1 ≤ <var>n</var>
22
+ 1000.\n\n"
@@ -1,9 +1,9 @@
1
1
  ---
2
2
  :id: 392
3
3
  :name: Enmeshed unit circle
4
- :url: http://projecteuler.net/problem=392
4
+ :url: https://projecteuler.net/problem=392
5
5
  :content: "A rectilinear grid is an orthogonal grid where the spacing between the
6
- gridlines does not have to be equidistant. \n\rAn example of such grid is logarithmic
6
+ gridlines does not have to be equidistant. \nAn example of such grid is logarithmic
7
7
  graph paper.\n\nConsider rectilinear grids in the Cartesian coordinate system with
8
8
  the following properties:\n\n- The gridlines are parallel to the axes of the Cartesian
9
9
  coordinate system.\n- There are N+2 vertical and N+2 horizontal gridlines. Hence
@@ -12,10 +12,10 @@
12
12
  are y = -1 and y = 1.\n- The grid cells are colored red if they overlap with the
13
13
  <dfn title=\"The unit circle is the circle that has radius 1 and is centered at
14
14
  the origin\">unit circle</dfn>, black otherwise.\nFor this problem we would like
15
- you to find the postions of the remaining N inner horizontal and N inner vertical
16
- gridlines so that the area occupied by the red cells is minimized.\r\r\n\nE.g. here
17
- is a picture of the solution for N = 10:\n\n![]({{ images_dir }}/p392_gridlines.png)\n\n\r\r\rThe
18
- area occupied by the red cells for N = 10 rounded to 10 digits behind the decimal
19
- point is 3.3469640797.\r\r\n\nFind the positions for N = 400. \n \rGive as your
20
- answer the area occupied by the red cells rounded to 10 digits behind the decimal
21
- point.\n\n"
15
+ you to find the positions of the remaining N inner horizontal and N inner vertical
16
+ gridlines so that the area occupied by the red cells is minimized.\n\nE.g. here
17
+ is a picture of the solution for N = 10:\n\n![p392_gridlines.png]({{ images_dir
18
+ }}/p392_gridlines.png)\n\nThe area occupied by the red cells for N = 10 rounded
19
+ to 10 digits behind the decimal point is 3.3469640797.\n\nFind the positions for
20
+ N = 400. \n Give as your answer the area occupied by the red cells rounded to 10
21
+ digits behind the decimal point.\n\n"
@@ -1,11 +1,11 @@
1
1
  ---
2
2
  :id: 393
3
3
  :name: Migrating ants
4
- :url: http://projecteuler.net/problem=393
5
- :content: "An <var>n</var> ![×]({{ images_dir }}/symbol_times.gif)<var>n</var> grid
6
- of squares contains <var>n</var><sup>2</sup> ants, one ant per square. \n\rAll
7
- ants decide to move simultaneously to an adjacent square (usually 4 possibilities,
8
- except for ants on the edge of the grid or at the corners). \n\rWe define <var>f</var>(<var>n</var>)
9
- to be the number of ways this can happen without any ants ending on the same square
10
- and without any two ants crossing the same edge between two squares.\n\nYou are
11
- given that <var>f</var>(4) = 88. \n\rFind <var>f</var>(10).\n\n"
4
+ :url: https://projecteuler.net/problem=393
5
+ :content: "An <var>n</var>×<var>n</var> grid of squares contains <var>n</var><sup>2</sup>
6
+ ants, one ant per square. \nAll ants decide to move simultaneously to an adjacent
7
+ square (usually 4 possibilities, except for ants on the edge of the grid or at the
8
+ corners). \nWe define <var>f</var>(<var>n</var>) to be the number of ways this
9
+ can happen without any ants ending on the same square and without any two ants crossing
10
+ the same edge between two squares.\n\nYou are given that <var>f</var>(4) = 88. \nFind
11
+ <var>f</var>(10).\n\n"
@@ -1,18 +1,17 @@
1
1
  ---
2
2
  :id: 394
3
3
  :name: Eating pie
4
- :url: http://projecteuler.net/problem=394
5
- :content: "Jeff eats a pie in an unusual way. \n\rThe pie is circular. He starts
6
- with slicing an initial cut in the pie along a radius. \n\rWhile there is at least
7
- a given fraction <var>F</var> of pie left, he performs the following procedure:
8
- \ \n\r- He makes two slices from the pie centre to any point of what is remaining
9
- of the pie border, any point on the remaining pie border equally likely. This will
10
- divide the remaining pie into three pieces. \n \r- Going counterclockwise from
11
- the initial cut, he takes the first two pie pieces and eats them. \n\rWhen less
12
- than a fraction <var>F</var> of pie remains, he does not repeat this procedure.
13
- Instead, he eats all of the remaining pie.\n\n![]({{ images_dir }}/p_394_eatpie.gif)\n\nFor
14
- <var>x</var> ![]({{ images_dir }}/symbol_ge.gif) 1, let E(<var>x</var>) be the
15
- expected number of times Jeff repeats the procedure above with <var>F</var> = <sup>1</sup>/<sub><var>x</var></sub>.
16
- \ \n\rIt can be verified that E(1) = 1, E(2) ![]({{ images_dir }}/symbol_asymp.gif)
17
- 1.2676536759, and E(7.5) ![≈]({{ images_dir }}/symbol_asymp.gif) 2.1215732071.\n\nFind
18
- E(40) rounded to 10 decimal places behind the decimal point.\n\n"
4
+ :url: https://projecteuler.net/problem=394
5
+ :content: "Jeff eats a pie in an unusual way. \nThe pie is circular. He starts with
6
+ slicing an initial cut in the pie along a radius. \nWhile there is at least a given
7
+ fraction <var>F</var> of pie left, he performs the following procedure: \n- He
8
+ makes two slices from the pie centre to any point of what is remaining of the pie
9
+ border, any point on the remaining pie border equally likely. This will divide the
10
+ remaining pie into three pieces. \n - Going counterclockwise from the initial cut,
11
+ he takes the first two pie pieces and eats them. \nWhen less than a fraction <var>F</var>
12
+ of pie remains, he does not repeat this procedure. Instead, he eats all of the remaining
13
+ pie.\n\n![p394_eatpie.gif]({{ images_dir }}/p394_eatpie.gif)\n\nFor <var>x</var>
14
+ ≥ 1, let E(<var>x</var>) be the expected number of times Jeff repeats the procedure
15
+ above with <var>F</var> = <sup>1</sup>/<sub><var>x</var></sub>. \nIt can be verified
16
+ that E(1) = 1, E(2) ≈ 1.2676536759, and E(7.5) 2.1215732071.\n\nFind E(40) rounded
17
+ to 10 decimal places behind the decimal point.\n\n"