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,20 +1,16 @@
1
1
  ---
2
2
  :id: 330
3
3
  :name: Euler's Number
4
- :url: http://projecteuler.net/problem=330
5
- :content: "\rAn infinite sequence of real numbers <var>a</var>(<var>n</var>) is defined
6
- for all integers <var>n</var> as follows:\r\n ![]({{ images_dir }}/p_330_formula.gif)\n\nFor
4
+ :url: https://projecteuler.net/problem=330
5
+ :content: "\r An infinite sequence of real numbers <var>a</var>(<var>n</var>) is defined
6
+ for all integers <var>n</var> as follows:\n ![p330_formula.gif]({{ images_dir }}/p330_formula.gif)\n\nFor
7
7
  example,\n\n| <var>a</var>(0) = | \n\n| 1 |\n| 1! |\n\n | + | \n\n| 1 |\n| 2! |\n\n
8
- | + | \n\n| 1 |\n| 3! |\n\n | + ... = e ![]({{ images_dir }}/symbol_minus.gif)
9
- 1 |\n\n| <var>a</var>(1) = | \n\n| e ![−]({{ images_dir }}/symbol_minus.gif) 1 |\n|
10
- 1! |\n\n | + | \n\n| 1 |\n| 2! |\n\n | + | \n\n| 1 |\n| 3! |\n\n | + ... = 2e ![−]({{
11
- images_dir }}/symbol_minus.gif) 3 |\n\n| <var>a</var>(2) = | \n\n| 2e ![]({{ images_dir
12
- }}/symbol_minus.gif) 3 |\n| 1! |\n\n | + | \n\n| e ![−]({{ images_dir }}/symbol_minus.gif)
13
- 1 |\n| 2! |\n\n | + | \n\n| 1 |\n| 3! |\n\n | + ... = | \n\n| 7 |\n| 2 |\n\n | e
14
- ![−]({{ images_dir }}/symbol_minus.gif) 6 |\n\n\rwith e = 2.7182818... being Euler's
15
- constant.\r\r\n\n| It can be shown that <var>a</var>(<var>n</var>) is of the form
16
- \r | \n\n| A(<var>n</var>) e + B(<var>n</var>) |\n| <var>n</var>! |\n\n | for integers
17
- A(<var>n</var>) and B(<var>n</var>). \r |\n\n| For example <var>a</var>(10) = \r
18
- | \n\n| 328161643 e ![−]({{ images_dir }}/symbol_minus.gif) 652694486 |\n| 10! |\n\n
19
- | . |\n\nFind A(10<sup>9</sup>) + B(10<sup>9</sup>) and give your answer mod 77
20
- 777 777.\n\n"
8
+ | + | \n\n| 1 |\n| 3! |\n\n | + ... = e − 1 |\n\n| <var>a</var>(1) = | \n\n| e −
9
+ 1 |\n| 1! |\n\n | + | \n\n| 1 |\n| 2! |\n\n | + | \n\n| 1 |\n| 3! |\n\n | + ...
10
+ = 2e − 3 |\n\n| <var>a</var>(2) = | \n\n| 2e − 3 |\n| 1! |\n\n | + | \n\n| e 1
11
+ |\n| 2! |\n\n | + | \n\n| 1 |\n| 3! |\n\n | + ... = | \n\n| 7 |\n| 2 |\n\n | e
12
+ 6 |\n\nwith e = 2.7182818... being Euler's constant.\n\n| It can be shown that <var>a</var>(<var>n</var>)
13
+ is of the form | \n\n| A(<var>n</var>) e + B(<var>n</var>) |\n| <var>n</var>! |\n\n
14
+ | for integers A(<var>n</var>) and B(<var>n</var>). |\n\n| For example <var>a</var>(10)
15
+ = | \n\n| 328161643 e 652694486 |\n| 10! |\n\n | . |\n\nFind A(10<sup>9</sup>)
16
+ + B(10<sup>9</sup>) and give your answer mod 77 777 777.\n\n"
@@ -1,22 +1,20 @@
1
1
  ---
2
2
  :id: 331
3
3
  :name: Cross flips
4
- :url: http://projecteuler.net/problem=331
5
- :content: "<var>N</var> ![×]({{ images_dir }}/symbol_times.gif)<var>N</var> disks
6
- are placed on a square game board. Each disk has a black side and white side.\n\nAt
7
- each turn, you may choose a disk and flip all the disks in the same row and the
8
- same column as this disk: thus 2 ![×]({{ images_dir }}/symbol_times.gif)<var>N</var>-1
4
+ :url: https://projecteuler.net/problem=331
5
+ :content: "<var>N</var>×<var>N</var> disks are placed on a square game board. Each
6
+ disk has a black side and white side.\n\nAt each turn, you may choose a disk and
7
+ flip all the disks in the same row and the same column as this disk: thus 2×<var>N</var>-1
9
8
  disks are flipped. The game ends when all disks show their white side. The following
10
- example shows a game on a 5 ![×]({{ images_dir }}/symbol_times.gif)5 board.\n\n
11
- ![]({{ images_dir }}/p_331_crossflips3.gif)\n\nIt can be proven that 3 is the minimal
12
- number of turns to finish this game.\n\nThe bottom left disk on the <var>N</var>
13
- ![×]({{ images_dir }}/symbol_times.gif)<var>N</var> board has coordinates (0,0);
14
- \ \n\rthe bottom right disk has coordinates (<var>N</var>-1,0) and the top left
15
- disk has coordinates (0,<var>N</var>-1).\n\nLet C<sub><var>N</var></sub> be the
16
- following configuration of a board with <var>N</var> ![×]({{ images_dir }}/symbol_times.gif)<var>N</var>
17
- disks: \n\rA disk at (<var>x</var>,<var>y</var>) satisfying ![]({{ images_dir }}/p_331_crossflips1.gif),
18
- shows its black side; otherwise, it shows its white side. C<sub>5</sub> is shown
19
- above.\n\nLet T(<var>N</var>) be the minimal number of turns to finish a game starting
20
- from configuration C<sub><var>N</var></sub> or 0 if configuration C<sub><var>N</var></sub>
21
- is unsolvable. \n\rWe have shown that T(5)=3. You are also given that T(10)=29
22
- and T(1 000)=395253.\n\nFind ![]({{ images_dir }}/p_331_crossflips2.gif).\n\n"
9
+ example shows a game on a 5×5 board.\n\n ![p331_crossflips3.gif]({{ images_dir }}/p331_crossflips3.gif)\n\nIt
10
+ can be proven that 3 is the minimal number of turns to finish this game.\n\nThe
11
+ bottom left disk on the <var>N</var>×<var>N</var> board has coordinates (0,0); \nthe
12
+ bottom right disk has coordinates (<var>N</var>-1,0) and the top left disk has coordinates
13
+ (0,<var>N</var>-1).\n\nLet C<sub><var>N</var></sub> be the following configuration
14
+ of a board with <var>N</var>×<var>N</var> disks: \nA disk at (<var>x</var>,<var>y</var>)
15
+ satisfying ![p331_crossflips1.gif]({{ images_dir }}/p331_crossflips1.gif), shows
16
+ its black side; otherwise, it shows its white side. C<sub>5</sub> is shown above.\n\nLet
17
+ T(<var>N</var>) be the minimal number of turns to finish a game starting from configuration
18
+ C<sub><var>N</var></sub> or 0 if configuration C<sub><var>N</var></sub> is unsolvable.
19
+ \ \nWe have shown that T(5)=3. You are also given that T(10)=29 and T(1 000)=395253.\n\nFind
20
+ ![p331_crossflips2.gif]({{ images_dir }}/p331_crossflips2.gif).\n\n"
@@ -1,15 +1,15 @@
1
1
  ---
2
2
  :id: 332
3
3
  :name: Spherical triangles
4
- :url: http://projecteuler.net/problem=332
4
+ :url: https://projecteuler.net/problem=332
5
5
  :content: "A **spherical triangle** is a figure formed on the surface of a sphere
6
- by three **great circular arcs** intersecting pairwise in three vertices.\n\n ![]({{
7
- images_dir }}/p_332_spherical.jpg)\n\nLet C(<var>r</var>) be the sphere with the
8
- centre (0,0,0) and radius <var>r</var>. \n\rLet Z(<var>r</var>) be the set of points
9
- on the surface of C(<var>r</var>) with integer coordinates. \n\rLet T(<var>r</var>)
10
- be the set of spherical triangles with vertices in Z(<var>r</var>).\rDegenerate
11
- spherical triangles, formed by three points on the same great arc, are <u>not</u>
12
- included in T(<var>r</var>). \n\rLet A(<var>r</var>) be the area of the smallest
13
- spherical triangle in T(<var>r</var>).\n\nFor example A(14) is 3.294040 rounded
14
- to six decimal places.\n\nFind ![]({{ images_dir }}/p_332_sum.gif) A(<var>r</var>).
6
+ by three **great circular arcs** intersecting pairwise in three vertices.\n\n ![p332_spherical.jpg]({{
7
+ images_dir }}/p332_spherical.jpg)\n\nLet C(<var>r</var>) be the sphere with the
8
+ centre (0,0,0) and radius <var>r</var>. \nLet Z(<var>r</var>) be the set of points
9
+ on the surface of C(<var>r</var>) with integer coordinates. \nLet T(<var>r</var>)
10
+ be the set of spherical triangles with vertices in Z(<var>r</var>). Degenerate spherical
11
+ triangles, formed by three points on the same great arc, are <u>not</u> included
12
+ in T(<var>r</var>). \nLet A(<var>r</var>) be the area of the smallest spherical
13
+ triangle in T(<var>r</var>).\n\nFor example A(14) is 3.294040 rounded to six decimal
14
+ places.\n\nFind ![p332_sum.gif]({{ images_dir }}/p332_sum.gif) A(<var>r</var>).
15
15
  Give your answer rounded to six decimal places.\n\n"
@@ -1,21 +1,20 @@
1
1
  ---
2
2
  :id: 333
3
3
  :name: Special partitions
4
- :url: http://projecteuler.net/problem=333
4
+ :url: https://projecteuler.net/problem=333
5
5
  :content: "All positive integers can be partitioned in such a way that each and every
6
6
  term of the partition can be expressed as 2<sup>i</sup>x3<sup>j</sup>, where i,j
7
- ![]({{ images_dir }}/symbol_ge.gif) 0.\n\nLet's consider only those such partitions
8
- where none of the terms can divide any of the other terms.\r \nFor example, the
9
- partition of 17 = 2 + 6 + 9 = (2<sup>1</sup>x3<sup>0</sup> + 2<sup>1</sup>x3<sup>1</sup>
10
- + 2<sup>0</sup>x3<sup>2</sup>) would not be valid since 2 can divide 6. Neither
11
- would the partition 17 = 16 + 1 = (2<sup>4</sup>x3<sup>0</sup> + 2<sup>0</sup>x3<sup>0</sup>)
12
- since 1 can divide 16. The only valid partition of 17 would be 8 + 9 = (2<sup>3</sup>x3<sup>0</sup>
13
- + 2<sup>0</sup>x3<sup>2</sup>).\n\nMany integers have more than one valid partition,
14
- the first being 11 having the following two partitions.\r \n11 = 2 + 9 = (2<sup>1</sup>x3<sup>0</sup>
15
- + 2<sup>0</sup>x3<sup>2</sup>)\r \n11 = 8 + 3 = (2<sup>3</sup>x3<sup>0</sup> +
16
- 2<sup>0</sup>x3<sup>1</sup>)\n\nLet's define P(<var>n</var>) as the number of valid
17
- partitions of <var>n</var>. For example, P(11) = 2.\n\nLet's consider only the prime
18
- integers <var>q</var> which would have a single valid partition such as P(17).\n\nThe
19
- sum of the primes <var>q</var> ![<]({{ images_dir }}/symbol_lt.gif)100 such that
20
- P(<var>q</var>)=1 equals 233.\n\nFind the sum of the primes <var>q</var> ![<]({{
21
- images_dir }}/symbol_lt.gif)1000000 such that P(<var>q</var>)=1.\n\n"
7
+ ≥ 0.\n\nLet's consider only those such partitions where none of the terms can divide
8
+ any of the other terms. \nFor example, the partition of 17 = 2 + 6 + 9 = (2<sup>1</sup>x3<sup>0</sup>
9
+ + 2<sup>1</sup>x3<sup>1</sup> + 2<sup>0</sup>x3<sup>2</sup>) would not be valid
10
+ since 2 can divide 6. Neither would the partition 17 = 16 + 1 = (2<sup>4</sup>x3<sup>0</sup>
11
+ + 2<sup>0</sup>x3<sup>0</sup>) since 1 can divide 16. The only valid partition of
12
+ 17 would be 8 + 9 = (2<sup>3</sup>x3<sup>0</sup> + 2<sup>0</sup>x3<sup>2</sup>).\n\nMany
13
+ integers have more than one valid partition, the first being 11 having the following
14
+ two partitions. \n11 = 2 + 9 = (2<sup>1</sup>x3<sup>0</sup> + 2<sup>0</sup>x3<sup>2</sup>)
15
+ \ \n11 = 8 + 3 = (2<sup>3</sup>x3<sup>0</sup> + 2<sup>0</sup>x3<sup>1</sup>)\n\nLet's
16
+ define P(<var>n</var>) as the number of valid partitions of <var>n</var>. For example,
17
+ P(11) = 2.\n\nLet's consider only the prime integers <var>q</var> which would have
18
+ a single valid partition such as P(17).\n\nThe sum of the primes <var>q</var> \\<100
19
+ such that P(<var>q</var>)=1 equals 233.\n\nFind the sum of the primes <var>q</var>
20
+ \\<1000000 such that P(<var>q</var>)=1.\n\n"
@@ -1,27 +1,25 @@
1
1
  ---
2
2
  :id: 334
3
3
  :name: Spilling the beans
4
- :url: http://projecteuler.net/problem=334
4
+ :url: https://projecteuler.net/problem=334
5
5
  :content: "In Plato's heaven, there exist an infinite number of bowls in a straight
6
- line. \n\rEach bowl either contains some or none of a finite number of beans. \n\rA
6
+ line. \nEach bowl either contains some or none of a finite number of beans. \nA
7
7
  child plays a game, which allows only one kind of move: removing two beans from
8
8
  any bowl, and putting one in each of the two adjacent bowls. \n The game ends when
9
9
  each bowl contains either one or no beans.\n\nFor example, consider two adjacent
10
10
  bowls containing 2 and 3 beans respectively, all other bowls being empty. The following
11
- eight moves will finish the game:\n\n ![]({{ images_dir }}/p_334_beans.gif)\n\nYou
12
- are given the following sequences:\n\n| <var>t</var><sub><i>0</i></sub> = 123456.\r
13
- |\n\n| <var>t</var><sub><i>i</i></sub> = \r | ![]({{ images_dir }}/p_334_cases.gif)
14
- | \n\n| | \n\n| <var>t</var><sub><i>i-1</i></sub> |\n| 2 |\n\n | \r ,\r | | \r if
15
- <var>t</var><sub><i>i-1</i></sub> is even\r |\n| ![]({{ images_dir }}/p_334_lfloor.gif)
16
- | \n\n| <var>t</var><sub><i>i-1</i></sub> |\n| 2 |\n\n | ![]({{ images_dir }}/p_334_rfloor.gif)
17
- | \r 926252, \r | \r if <var>t</var><sub><i>i-1</i></sub> is odd\r |\n\n | |\n|
18
- | | \r where ![]({{ images_dir }}/symbol_lfloor.gif)<var>x</var> ![⌋]({{ images_dir
19
- }}/symbol_rfloor.gif) is the floor function\r |\n| | | \r and ![]({{ images_dir
20
- }}/p_334_oplus.gif) is the bitwise XOR operator.\r |\n\n| <var>b</var><sub><i>i</i></sub>
21
- = ( <var>t</var><sub><i>i</i></sub> mod 2<sup>11</sup>) + 1.\r |\n\nThe first two
22
- terms of the last sequence are <var>b</var><sub><i>1</i></sub> = 289 and <var>b</var><sub><i>2</i></sub>
23
- = 145. \n\rIf we start with <var>b</var><sub><i>1</i></sub> and <var>b</var><sub><i>2</i></sub>
24
- beans in two adjacent bowls, 3419100 moves would be required to finish the game.\n\nConsider
25
- now 1500 adjacent bowls containing <var>b</var><sub><i>1</i></sub>, <var>b</var><sub><i>2</i></sub>,...,
26
- <var>b</var><sub><i>1500</i></sub> beans respectively, all other bowls being empty.
27
- Find how many moves it takes before the game ends.\n\n"
11
+ eight moves will finish the game:\n\n ![p334_beans.gif]({{ images_dir }}/p334_beans.gif)\n\nYou
12
+ are given the following sequences:\n\n| <var>t</var><sub><i>0</i></sub> = 123456.
13
+ |\n\n| <var>t</var><sub><i>i</i></sub> = | ![p334_cases.gif]({{ images_dir }}/p334_cases.gif)
14
+ | \n\n| | \n\n| <var>t</var><sub><i>i-1</i></sub> |\n| 2 |\n\n | , | | if <var>t</var><sub><i>i-1</i></sub>
15
+ is even |\n| ![p334_lfloor.gif]({{ images_dir }}/p334_lfloor.gif) | \n\n| <var>t</var><sub><i>i-1</i></sub>
16
+ |\n| 2 |\n\n | ![p334_rfloor.gif]({{ images_dir }}/p334_rfloor.gif) | 926252, |
17
+ if <var>t</var><sub><i>i-1</i></sub> is odd |\n\n | |\n| | | where ⌊<var>x</var>⌋
18
+ is the floor function |\n| | | and ![p334_oplus.gif]({{ images_dir }}/p334_oplus.gif)
19
+ is the bitwise XOR operator. |\n\n| <var>b</var><sub><i>i</i></sub> = ( <var>t</var><sub><i>i</i></sub>
20
+ mod 2<sup>11</sup>) + 1. |\n\nThe first two terms of the last sequence are <var>b</var><sub><i>1</i></sub>
21
+ = 289 and <var>b</var><sub><i>2</i></sub> = 145. \nIf we start with <var>b</var><sub><i>1</i></sub>
22
+ and <var>b</var><sub><i>2</i></sub> beans in two adjacent bowls, 3419100 moves would
23
+ be required to finish the game.\n\nConsider now 1500 adjacent bowls containing <var>b</var><sub><i>1</i></sub>,
24
+ <var>b</var><sub><i>2</i></sub>,..., <var>b</var><sub><i>1500</i></sub> beans respectively,
25
+ all other bowls being empty. Find how many moves it takes before the game ends.\n\n"
@@ -1,15 +1,15 @@
1
1
  ---
2
2
  :id: 335
3
3
  :name: Gathering the beans
4
- :url: http://projecteuler.net/problem=335
4
+ :url: https://projecteuler.net/problem=335
5
5
  :content: |+
6
6
  Whenever Peter feels bored, he places some bowls, containing one bean each, in a circle. After this, he takes all the beans out of a certain bowl and drops them one by one in the bowls going clockwise. He repeats this, starting from the bowl he dropped the last bean in, until the initial situation appears again. For example with 5 bowls he acts as follows:
7
7
 
8
- ![]({{ images_dir }}/p_335_mancala.gif)
8
+ ![p335_mancala.gif]({{ images_dir }}/p335_mancala.gif)
9
9
 
10
10
  So with 5 bowls it takes Peter 15 moves to return to the initial situation.
11
11
 
12
12
  Let <var>M</var>(<var>x</var>) represent the number of moves required to return to the initial situation, starting with <var>x</var> bowls. Thus, <var>M</var>(5) = 15. It can also be verified that <var>M</var>(100) = 10920.
13
13
 
14
- Find ![]({{ images_dir }}/p_335_sum.gif)<var>M</var>(2<sup><var>k</var></sup>+1). Give your answer modulo 7<sup>9</sup>.
14
+ Find ![p335_sum.gif]({{ images_dir }}/p335_sum.gif)<var>M</var>(2<sup><var>k</var></sup>+1). Give your answer modulo 7<sup>9</sup>.
15
15
 
@@ -1,23 +1,23 @@
1
1
  ---
2
2
  :id: 336
3
3
  :name: Maximix Arrangements
4
- :url: http://projecteuler.net/problem=336
4
+ :url: https://projecteuler.net/problem=336
5
5
  :content: "A train is used to transport four carriages in the order: ABCD. However,
6
6
  sometimes when the train arrives to collect the carriages they are not in the correct
7
- order. \n\rTo rearrange the carriages they are all shunted on to a large rotating
7
+ order. \nTo rearrange the carriages they are all shunted on to a large rotating
8
8
  turntable. After the carriages are uncoupled at a specific point the train moves
9
9
  off the turntable pulling the carriages still attached with it. The remaining carriages
10
10
  are rotated 180 degrees. All of the carriages are then rejoined and this process
11
11
  is repeated as often as necessary in order to obtain the least number of uses of
12
- the turntable. \n\rSome arrangements, such as ADCB, can be solved easily: the carriages
12
+ the turntable. \nSome arrangements, such as ADCB, can be solved easily: the carriages
13
13
  are separated between A and D, and after DCB are rotated the correct order has been
14
14
  achieved.\n\nHowever, Simple Simon, the train driver, is not known for his efficiency,
15
15
  so he always solves the problem by initially getting carriage A in the correct place,
16
16
  then carriage B, and so on.\n\nUsing four carriages, the worst possible arrangements
17
17
  for Simon, which we shall call _maximix arrangements_, are DACB and DBAC; each requiring
18
18
  him five rotations (although, using the most efficient approach, they could be solved
19
- using just three rotations). The process he uses for DACB is shown below.\n\n ![]({{
20
- images_dir }}/p_336_maximix.gif)\n\nIt can be verified that there are 24 maximix
19
+ using just three rotations). The process he uses for DACB is shown below.\n\n ![p336_maximix.gif]({{
20
+ images_dir }}/p336_maximix.gif)\n\nIt can be verified that there are 24 maximix
21
21
  arrangements for six carriages, of which the tenth lexicographic maximix arrangement
22
22
  is DFAECB.\n\nFind the 2011<sup>th</sup> lexicographic maximix arrangement for eleven
23
23
  carriages.\n\n"
@@ -1,13 +1,12 @@
1
1
  ---
2
2
  :id: 337
3
3
  :name: Totient Stairstep Sequences
4
- :url: http://projecteuler.net/problem=337
4
+ :url: https://projecteuler.net/problem=337
5
5
  :content: "Let {a<sub>1</sub>, a<sub>2</sub>,..., a<sub><var>n</var></sub>} be an
6
6
  integer sequence of length <var>n</var> such that:\n\n- a<sub>1</sub> = 6\n- for
7
- all 1 ![]({{ images_dir }}/symbol_le.gif) <var>i</var> n : φ(a<sub><var>i</var></sub>)
8
- <var>i</var>+1) <var>i</var> <var>i</var>+1 <sup>1</sup>\n\nLet S(<var>N</var>)
9
- be the number of such sequences with a<sub><var>n</var></sub> ![]({{ images_dir
10
- }}/symbol_le.gif) <var>N</var>. \n\rFor example, S(10) = 4: {6}, {6, 8}, {6, 8,
11
- 9} and {6, 10}. \n\rWe can verify that S(100) = 482073668 and S(10 000) mod 10<sup>8</sup>
12
- = 73808307.\n\nFind S(20 000 000) mod 10<sup>8</sup>.\n\n<sup>1</sup> φ denotes
13
- **Euler's totient function** .\n\n"
7
+ all 1 ≤ <var>i</var> \\< <var>n</var> : φ(a<sub><var>i</var></sub>) \\< φ(a<sub><var>i</var>+1</sub>)
8
+ \\< a<sub><var>i</var></sub> \\< a<sub><var>i</var>+1</sub><sup>1</sup>\n\nLet S(<var>N</var>)
9
+ be the number of such sequences with a<sub><var>n</var></sub> ≤ <var>N</var>. \nFor
10
+ example, S(10) = 4: {6}, {6, 8}, {6, 8, 9} and {6, 10}. \nWe can verify that S(100)
11
+ = 482073668 and S(10 000) mod 10<sup>8</sup> = 73808307.\n\nFind S(20 000 000) mod
12
+ 10<sup>8</sup>.\n\n<sup>1</sup> φ denotes **Euler's totient function**.\n\n"
@@ -1,28 +1,22 @@
1
1
  ---
2
2
  :id: 338
3
3
  :name: Cutting Rectangular Grid Paper
4
- :url: http://projecteuler.net/problem=338
4
+ :url: https://projecteuler.net/problem=338
5
5
  :content: "A rectangular sheet of grid paper with integer dimensions <var>w</var>
6
- ![×]({{ images_dir }}/symbol_times.gif) <var>h</var> is given. Its grid spacing
7
- is 1. \n\rWhen we cut the sheet along the grid lines into two pieces and rearrange
8
- those pieces without overlap, we can make new rectangles with different dimensions.\n\nFor
9
- example, from a sheet with dimensions 9 ![×]({{ images_dir }}/symbol_times.gif)
10
- 4 , we can make rectangles with dimensions 18 ![×]({{ images_dir }}/symbol_times.gif)
11
- 2, 12 ![×]({{ images_dir }}/symbol_times.gif) 3 and 6 ![×]({{ images_dir }}/symbol_times.gif)
12
- 6 by cutting and rearranging as below:\n\n ![]({{ images_dir }}/p_338_gridpaper.gif)
13
- \ \n\nSimilarly, from a sheet with dimensions 9 ![×]({{ images_dir }}/symbol_times.gif)
14
- 8 , we can make rectangles with dimensions 18 ![×]({{ images_dir }}/symbol_times.gif)
15
- 4 and 12 ![×]({{ images_dir }}/symbol_times.gif) 6 .\n\nFor a pair <var>w</var>
16
- and <var>h</var>, let F(<var>w</var>,<var>h</var>) be the number of distinct rectangles
17
- that can be made from a sheet with dimensions <var>w</var> ![×]({{ images_dir }}/symbol_times.gif)
18
- <var>h</var> . \n\rFor example, F(2,1) = 0, F(2,2) = 1, F(9,4) = 3 and F(9,8) =
19
- 2. \n\rNote that rectangles congruent to the initial one are not counted in F(<var>w</var>,<var>h</var>).
20
- \ \n\rNote also that rectangles with dimensions <var>w</var> ![×]({{ images_dir
21
- }}/symbol_times.gif) <var>h</var> and dimensions <var>h</var> ![×]({{ images_dir
22
- }}/symbol_times.gif) <var>w</var> are not considered distinct.\n\nFor an integer
23
- <var>N</var>, let G(<var>N</var>) be the sum of F(<var>w</var>,<var>h</var>) for
24
- all pairs <var>w</var> and <var>h</var> which satisfy 0 ![<]({{ images_dir }}/symbol_lt.gif)
25
- <var>h</var> ![≤]({{ images_dir }}/symbol_le.gif) <var>w</var> ![≤]({{ images_dir
26
- }}/symbol_le.gif) <var>N</var>. \n\rWe can verify that G(10) = 55, G(10<sup>3</sup>)
27
- = 971745 and G(10<sup>5</sup>) = 9992617687.\n\nFind G(10<sup>12</sup>). Give your
28
- answer modulo 10<sup>8</sup>.\n\n"
6
+ × <var>h</var> is given. Its grid spacing is 1. \nWhen we cut the sheet along the
7
+ grid lines into two pieces and rearrange those pieces without overlap, we can make
8
+ new rectangles with different dimensions.\n\nFor example, from a sheet with dimensions
9
+ 9 × 4 , we can make rectangles with dimensions 18 × 2, 12 × 3 and 6 × 6 by cutting
10
+ and rearranging as below:\n\n ![p338_gridpaper.gif]({{ images_dir }}/p338_gridpaper.gif)
11
+ \ \n\nSimilarly, from a sheet with dimensions 9 × 8 , we can make rectangles with
12
+ dimensions 18 × 4 and 12 × 6 .\n\nFor a pair <var>w</var> and <var>h</var>, let
13
+ F(<var>w</var>,<var>h</var>) be the number of distinct rectangles that can be made
14
+ from a sheet with dimensions <var>w</var> × <var>h</var> . \nFor example, F(2,1)
15
+ = 0, F(2,2) = 1, F(9,4) = 3 and F(9,8) = 2. \nNote that rectangles congruent to
16
+ the initial one are not counted in F(<var>w</var>,<var>h</var>). \nNote also that
17
+ rectangles with dimensions <var>w</var> × <var>h</var> and dimensions <var>h</var>
18
+ × <var>w</var> are not considered distinct.\n\nFor an integer <var>N</var>, let
19
+ G(<var>N</var>) be the sum of F(<var>w</var>,<var>h</var>) for all pairs <var>w</var>
20
+ and <var>h</var> which satisfy 0 \\< <var>h</var> <var>w</var> <var>N</var>.
21
+ \ \nWe can verify that G(10) = 55, G(10<sup>3</sup>) = 971745 and G(10<sup>5</sup>)
22
+ = 9992617687.\n\nFind G(10<sup>12</sup>). Give your answer modulo 10<sup>8</sup>.\n\n"
@@ -1,17 +1,17 @@
1
1
  ---
2
2
  :id: 339
3
3
  :name: Peredur fab Efrawg
4
- :url: http://projecteuler.net/problem=339
4
+ :url: https://projecteuler.net/problem=339
5
5
  :content: "_\"And he came towards a valley, through which ran a river; and the borders
6
6
  of the valley were wooded, and on each side of the river were level meadows. And
7
7
  on one side of the river he saw a flock of white sheep, and on the other a flock
8
8
  of black sheep. And whenever one of the white sheep bleated, one of the black sheep
9
9
  would cross over and become white; and when one of the black sheep bleated, one
10
- of the white sheep would cross over and become black.\"_ \n [en.wikisource.org](http://en.wikisource.org/wiki/The_Mabinogion/Peredur_the_Son_of_Evrawc)\n\nInitially
10
+ of the white sheep would cross over and become black.\"_ \n[en.wikisource.org](http://en.wikisource.org/wiki/The_Mabinogion/Peredur_the_Son_of_Evrawc)\n\nInitially
11
11
  each flock consists of <var>n</var> sheep. Each sheep (regardless of colour) is
12
12
  equally likely to be the next sheep to bleat. After a sheep has bleated and a sheep
13
13
  from the other flock has crossed over, Peredur may remove a number of white sheep
14
14
  in order to maximize the expected final number of black sheep. Let E(<var>n</var>)
15
15
  be the expected final number of black sheep if Peredur uses an optimal strategy.\n\nYou
16
- are given that E(5) = 6.871346 rounded to 6 places behind the decimal point. \n\rFind
16
+ are given that E(5) = 6.871346 rounded to 6 places behind the decimal point. \nFind
17
17
  E(10 000) and give your answer rounded to 6 places behind the decimal point.\n\n"
data/data/problems/34.yml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  :id: 34
3
3
  :name: Digit factorials
4
- :url: http://projecteuler.net/problem=34
4
+ :url: https://projecteuler.net/problem=34
5
5
  :content: |+
6
6
  145 is a curious number, as 1! + 4! + 5! = 1 + 24 + 120 = 145.
7
7
 
@@ -1,11 +1,11 @@
1
1
  ---
2
2
  :id: 340
3
3
  :name: Crazy Function
4
- :url: http://projecteuler.net/problem=340
4
+ :url: https://projecteuler.net/problem=340
5
5
  :content: "For fixed integers a, b, c, define the _crazy function_ F(<var>n</var>)
6
- as follows: \n\rF(<var>n</var>) = <var>n</var> - c for all <var>n</var> ![>]({{
7
- images_dir }}/symbol_gt.gif) b \n\rF(<var>n</var>) = F(a + F(a + F(a + F(a + <var>n</var>))))
8
- for all <var>n</var> ![]({{ images_dir }}/symbol_le.gif) b.\n\nAlso, define S(a,
9
- b, c) = ![]({{ images_dir }}/p_340_formula.gif).\n\nFor example, if a = 50, b =
10
- 2000 and c = 40, then F(0) = 3240 and F(2000) = 2040. \n\rAlso, S(50, 2000, 40)
11
- = 5204240.\n\nFind the last 9 digits of S(21<sup>7</sup>, 7<sup>21</sup>, 12<sup>7</sup>).\n\n"
6
+ as follows: \nF(<var>n</var>) = <var>n</var> - c for all <var>n</var> \\> b \nF(<var>n</var>)
7
+ = F(a + F(a + F(a + F(a + <var>n</var>)))) for all <var>n</var> ≤ b.\n\nAlso, define
8
+ S(a, b, c) = ![p340_formula.gif]({{ images_dir }}/p340_formula.gif).\n\nFor example,
9
+ if a = 50, b = 2000 and c = 40, then F(0) = 3240 and F(2000) = 2040. \nAlso, S(50,
10
+ 2000, 40) = 5204240.\n\nFind the last 9 digits of S(21<sup>7</sup>, 7<sup>21</sup>,
11
+ 12<sup>7</sup>).\n\n"
@@ -1,14 +1,13 @@
1
1
  ---
2
2
  :id: 341
3
3
  :name: Golomb's self-describing sequence
4
- :url: http://projecteuler.net/problem=341
4
+ :url: https://projecteuler.net/problem=341
5
5
  :content: "The **Golomb's self-describing sequence** {G(<var>n</var>)} is the only
6
6
  nondecreasing sequence of natural numbers such that <var>n</var> appears exactly
7
7
  G(<var>n</var>) times in the sequence. The values of G(<var>n</var>) for the first
8
8
  few <var>n</var> are\n\n| <var>n</var> | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10
9
9
  | 11 | 12 | 13 | 14 | 15 | … |\n| G(<var>n</var>) | 1 | 2 | 2 | 3 | 3 | 4 | 4 |
10
10
  4 | 5 | 5 | 5 | 6 | 6 | 6 | 6 | … |\n\nYou are given that G(10<sup>3</sup>) = 86,
11
- G(10<sup>6</sup>) = 6137. \n\rYou are also given that ΣG(<var>n</var><sup>3</sup>)
12
- = 153506976 for 1 ![]({{ images_dir }}/symbol_le.gif) <var>n</var> ![<]({{ images_dir
13
- }}/symbol_lt.gif) 10<sup>3</sup>.\n\nFind ΣG(<var>n</var><sup>3</sup>) for 1 ![≤]({{
14
- images_dir }}/symbol_le.gif) <var>n</var> ![<]({{ images_dir }}/symbol_lt.gif) 10<sup>6</sup>.\n\n"
11
+ G(10<sup>6</sup>) = 6137. \nYou are also given that ΣG(<var>n</var><sup>3</sup>)
12
+ = 153506976 for 1 ≤ <var>n</var> \\< 10<sup>3</sup>.\n\nFind ΣG(<var>n</var><sup>3</sup>)
13
+ for 1 <var>n</var> \\< 10<sup>6</sup>.\n\n"
@@ -1,12 +1,9 @@
1
1
  ---
2
2
  :id: 342
3
3
  :name: The totient of a square is a cube
4
- :url: http://projecteuler.net/problem=342
5
- :content: "Consider the number 50. \n\r50<sup>2</sup> = 2500 = 2<sup>2</sup> ![×]({{
6
- images_dir }}/symbol_times.gif) 5<sup>4</sup>, so φ(2500) = 2 ![×]({{ images_dir
7
- }}/symbol_times.gif) 4 ![×]({{ images_dir }}/symbol_times.gif) 5<sup>3</sup> = 8
8
- ![×]({{ images_dir }}/symbol_times.gif) 5<sup>3</sup> = 2<sup>3</sup> ![×]({{ images_dir
9
- }}/symbol_times.gif) 5<sup>3</sup>. <sup>1</sup> \n\rSo 2500 is a square and φ(2500)
10
- is a cube.\n\nFind the sum of all numbers n, 1 &lt n ![<]({{ images_dir }}/symbol_lt.gif)
11
- 10<sup>10</sup> such that φ(n<sup>2</sup>) is a cube.\n\n<sup>1</sup> φ denotes
12
- **Euler's totient function** .\n\n"
4
+ :url: https://projecteuler.net/problem=342
5
+ :content: "Consider the number 50. \n50<sup>2</sup> = 2500 = 2<sup>2</sup> × 5<sup>4</sup>,
6
+ so φ(2500) = 2 × 4 × 5<sup>3</sup> = 8 × 5<sup>3</sup> = 2<sup>3</sup> × 5<sup>3</sup>.
7
+ <sup>1</sup> \nSo 2500 is a square and φ(2500) is a cube.\n\nFind the sum of all
8
+ numbers n, 1 &lt n \\< 10<sup>10</sup> such that φ(n<sup>2</sup>) is a cube.\n\n<sup>1</sup>
9
+ φ denotes **Euler's totient function**.\n\n"
@@ -1,18 +1,13 @@
1
1
  ---
2
2
  :id: 343
3
3
  :name: Fractional Sequences
4
- :url: http://projecteuler.net/problem=343
4
+ :url: https://projecteuler.net/problem=343
5
5
  :content: "For any positive integer <var>k</var>, a finite sequence a<sub><var>i</var></sub>
6
- of fractions x<sub><var>i</var></sub>/y<sub><var>i</var></sub> is defined by: \n\ra<sub>1</sub>
7
- = 1/<var>k</var> and \n\ra<sub><var>i</var></sub> = (x<sub><var>i</var>-1</sub>+1)/(y<sub><var>i</var>-1</sub>-1)
8
- reduced to lowest terms for <var>i</var>>1. \n\rWhen a<sub><var>i</var></sub> reaches
6
+ of fractions x<sub><var>i</var></sub>/y<sub><var>i</var></sub> is defined by: \na<sub>1</sub>
7
+ = 1/<var>k</var> and \na<sub><var>i</var></sub> = (x<sub><var>i</var>-1</sub>+1)/(y<sub><var>i</var>-1</sub>-1)
8
+ reduced to lowest terms for <var>i</var>\\>1. \nWhen a<sub><var>i</var></sub> reaches
9
9
  some integer <var>n</var>, the sequence stops. (That is, when y<sub><var>i</var></sub>=1.)
10
- \ \n\rDefine f(<var>k</var>) = <var>n</var>. \n\rFor example, for <var>k</var>
11
- = 20:\n\n1/20 ![]({{ images_dir }}/symbol_maps.gif) 2/19 ![]({{ images_dir }}/symbol_maps.gif)
12
- 3/18 = 1/6 ![→]({{ images_dir }}/symbol_maps.gif) 2/5 ![→]({{ images_dir }}/symbol_maps.gif)
13
- 3/4 ![→]({{ images_dir }}/symbol_maps.gif) 4/3 ![→]({{ images_dir }}/symbol_maps.gif)
14
- 5/2 ![→]({{ images_dir }}/symbol_maps.gif) 6/1 = 6\n\nSo f(20) = 6.\n\nAlso f(1)
15
- = 1, f(2) = 2, f(3) = 1 and Σf(<var>k</var><sup>3</sup>) = 118937 for 1 ![≤]({{
16
- images_dir }}/symbol_le.gif) <var>k</var> ![≤]({{ images_dir }}/symbol_le.gif) 100.\n\nFind
17
- Σf(<var>k</var><sup>3</sup>) for 1 ![≤]({{ images_dir }}/symbol_le.gif) <var>k</var>
18
- ![≤]({{ images_dir }}/symbol_le.gif) 2 ![×]({{ images_dir }}/symbol_times.gif)10<sup>6</sup>.\n\n"
10
+ \ \nDefine f(<var>k</var>) = <var>n</var>. \nFor example, for <var>k</var> = 20:\n\n1/20
11
+ 2/193/18 = 1/6 2/53/4 → 4/3 → 5/2 → 6/1 = 6\n\nSo f(20) = 6.\n\nAlso f(1)
12
+ = 1, f(2) = 2, f(3) = 1 and Σf(<var>k</var><sup>3</sup>) = 118937 for 1 ≤ <var>k</var>
13
+ 100.\n\nFind Σf(<var>k</var><sup>3</sup>) for 1 <var>k</var> 2×10<sup>6</sup>.\n\n"
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  :id: 344
3
3
  :name: Silver dollar game
4
- :url: http://projecteuler.net/problem=344
4
+ :url: https://projecteuler.net/problem=344
5
5
  :content: "One variant of N.G. de Bruijn's **silver dollar** game can be described
6
6
  as follows:\n\nOn a strip of squares a number of coins are placed, at most one coin
7
7
  per square. Only one coin, called the **silver dollar** , has any value. Two players
@@ -11,10 +11,10 @@
11
11
  or over another coin.\n\nAlternatively, the player can choose to make the _special_
12
12
  move of pocketing the leftmost coin rather than making a regular move. If no regular
13
13
  moves are possible, the player is forced to pocket the leftmost coin.\n\nThe winner
14
- is the player who pockets the silver dollar.\n\n ![]({{ images_dir }}/p_344_silverdollar.gif)
15
- \ \n\nA _winning configuration_ is an arrangement of coins on the strip where the
16
- first player can force a win no matter what the second player does.\n\nLet W(<var>n</var>,<var>c</var>)
17
- be the number of winning configurations for a strip of <var>n</var> squares, <var>c</var>
18
- worthless coins and one silver dollar.\n\nYou are given that W(10,2) = 324 and W(100,10)
19
- = 1514704946113500.\n\nFind W(1 000 000, 100) modulo the semiprime 1000 036 000
20
- 099 (= 1 000 003 · 1 000 033).\n\n"
14
+ is the player who pockets the silver dollar.\n\n ![p344_silverdollar.gif]({{ images_dir
15
+ }}/p344_silverdollar.gif) \n\nA _winning configuration_ is an arrangement of coins
16
+ on the strip where the first player can force a win no matter what the second player
17
+ does.\n\nLet W(<var>n</var>,<var>c</var>) be the number of winning configurations
18
+ for a strip of <var>n</var> squares, <var>c</var> worthless coins and one silver
19
+ dollar.\n\nYou are given that W(10,2) = 324 and W(100,10) = 1514704946113500.\n\nFind
20
+ W(1 000 000, 100) modulo the semiprime 1000 036 000 099 (= 1 000 003 · 1 000 033).\n\n"