euler-manager 0.0.5 → 0.0.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (645) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +11 -1
  3. data/Rakefile +3 -0
  4. data/bin/euler +28 -9
  5. data/config/config.rb +1 -0
  6. data/data/answers.yml +430 -456
  7. data/data/images/blackdot.gif +0 -0
  8. data/data/images/bracket_left.gif +0 -0
  9. data/data/images/bracket_right.gif +0 -0
  10. data/data/images/p295_lenticular.gif +0 -0
  11. data/data/images/p296_bisector.gif +0 -0
  12. data/data/images/p303_formula100.gif +0 -0
  13. data/data/images/p303_formula10000.gif +0 -0
  14. data/data/images/p392_gridlines.png +0 -0
  15. data/data/images/p400_winning.png +0 -0
  16. data/data/images/p411_longpath.png +0 -0
  17. data/data/images/p412_table53.png +0 -0
  18. data/data/images/p412_tablenums.png +0 -0
  19. data/data/images/p422_hyperbola.gif +0 -0
  20. data/data/images/p428_necklace.png +0 -0
  21. data/data/images/p_015.gif +0 -0
  22. data/data/images/p_068_1.gif +0 -0
  23. data/data/images/p_068_2.gif +0 -0
  24. data/data/images/p_085.gif +0 -0
  25. data/data/images/p_086.gif +0 -0
  26. data/data/images/p_090.gif +0 -0
  27. data/data/images/p_091_1.gif +0 -0
  28. data/data/images/p_091_2.gif +0 -0
  29. data/data/images/p_107_1.gif +0 -0
  30. data/data/images/p_107_2.gif +0 -0
  31. data/data/images/p_109.gif +0 -0
  32. data/data/images/p_126.gif +0 -0
  33. data/data/images/p_128.gif +0 -0
  34. data/data/images/p_138.gif +0 -0
  35. data/data/images/p_139.gif +0 -0
  36. data/data/images/p_143_torricelli.gif +0 -0
  37. data/data/images/p_144_1.gif +0 -0
  38. data/data/images/p_144_2.gif +0 -0
  39. data/data/images/p_147.gif +0 -0
  40. data/data/images/p_150.gif +0 -0
  41. data/data/images/p_151.gif +0 -0
  42. data/data/images/p_152_sum.gif +0 -0
  43. data/data/images/p_153_formule1.gif +0 -0
  44. data/data/images/p_153_formule2.gif +0 -0
  45. data/data/images/p_153_formule5.gif +0 -0
  46. data/data/images/p_153_formule6.gif +0 -0
  47. data/data/images/p_154_pyramid.gif +0 -0
  48. data/data/images/p_155_capacitors1.gif +0 -0
  49. data/data/images/p_155_capsform.gif +0 -0
  50. data/data/images/p_155_capsmu.gif +0 -0
  51. data/data/images/p_161_k9.gif +0 -0
  52. data/data/images/p_161_trio1.gif +0 -0
  53. data/data/images/p_161_trio3.gif +0 -0
  54. data/data/images/p_163.gif +0 -0
  55. data/data/images/p_173_square_laminas.gif +0 -0
  56. data/data/images/p_177_quad.gif +0 -0
  57. data/data/images/p_184.gif +0 -0
  58. data/data/images/p_189_colours.gif +0 -0
  59. data/data/images/p_189_grid.gif +0 -0
  60. data/data/images/p_194_Fig.png +0 -0
  61. data/data/images/p_194_GraphA.png +0 -0
  62. data/data/images/p_194_GraphB.png +0 -0
  63. data/data/images/p_199_circles_in_circles.gif +0 -0
  64. data/data/images/p_201_laserbeam.gif +0 -0
  65. data/data/images/p_208_robotwalk.gif +0 -0
  66. data/data/images/p_215_crackfree.gif +0 -0
  67. data/data/images/p_220.gif +0 -0
  68. data/data/images/p_226_formula.gif +0 -0
  69. data/data/images/p_226_scoop2.gif +0 -0
  70. data/data/images/p_228.png +0 -0
  71. data/data/images/p_237.gif +0 -0
  72. data/data/images/p_244_example.gif +0 -0
  73. data/data/images/p_244_start.gif +0 -0
  74. data/data/images/p_244_target.gif +0 -0
  75. data/data/images/p_246_anim.gif +0 -0
  76. data/data/images/p_246_ellipse.gif +0 -0
  77. data/data/images/p_247_hypersquares.gif +0 -0
  78. data/data/images/p_251_cardano.gif +0 -0
  79. data/data/images/p_252_convexhole.gif +0 -0
  80. data/data/images/p_255_Example.gif +0 -0
  81. data/data/images/p_255_Heron.gif +0 -0
  82. data/data/images/p_256_tatami3.gif +0 -0
  83. data/data/images/p_257_bisector.gif +0 -0
  84. data/data/images/p_262_formula1.gif +0 -0
  85. data/data/images/p_264_TriangleCentres.gif +0 -0
  86. data/data/images/p_265_BinaryCircles.gif +0 -0
  87. data/data/images/p_270_CutSquare.gif +0 -0
  88. data/data/images/p_275_sculptures2.gif +0 -0
  89. data/data/images/p_281_pizza.gif +0 -0
  90. data/data/images/p_282_formula.gif +0 -0
  91. data/data/images/p_282formula3.gif +0 -0
  92. data/data/images/p_287_quadtree.gif +0 -0
  93. data/data/images/p_289_euler.gif +0 -0
  94. data/data/images/p_291_formula.gif +0 -0
  95. data/data/images/p_299_ThreeSimTri.gif +0 -0
  96. data/data/images/p_300_protein.gif +0 -0
  97. data/data/images/p_306_pstrip.gif +0 -0
  98. data/data/images/p_309_ladders.gif +0 -0
  99. data/data/images/p_311_biclinic.gif +0 -0
  100. data/data/images/p_312_sierpinsky8t.gif +0 -0
  101. data/data/images/p_312_sierpinskyAt.gif +0 -0
  102. data/data/images/p_313_sliding_game_1.gif +0 -0
  103. data/data/images/p_313_sliding_game_2.gif +0 -0
  104. data/data/images/p_314_landgrab.gif +0 -0
  105. data/data/images/p_315_clocks.gif +0 -0
  106. data/data/images/p_316_decexp1.gif +0 -0
  107. data/data/images/p_316_decexp2.gif +0 -0
  108. data/data/images/p_316_decexp3.gif +0 -0
  109. data/data/images/p_321_swapping_counters_1.gif +0 -0
  110. data/data/images/p_321_swapping_counters_2.gif +0 -0
  111. data/data/images/p_326_formula1.gif +0 -0
  112. data/data/images/p_326_formula2.gif +0 -0
  113. data/data/images/p_327_rooms_of_doom.gif +0 -0
  114. data/data/images/p_328_sum1.gif +0 -0
  115. data/data/images/p_328_sum2.gif +0 -0
  116. data/data/images/p_330_formula.gif +0 -0
  117. data/data/images/p_331_crossflips1.gif +0 -0
  118. data/data/images/p_331_crossflips2.gif +0 -0
  119. data/data/images/p_331_crossflips3.gif +0 -0
  120. data/data/images/p_332_spherical.jpg +0 -0
  121. data/data/images/p_332_sum.gif +0 -0
  122. data/data/images/p_334_beans.gif +0 -0
  123. data/data/images/p_334_cases.gif +0 -0
  124. data/data/images/p_334_lfloor.gif +0 -0
  125. data/data/images/p_334_oplus.gif +0 -0
  126. data/data/images/p_334_rfloor.gif +0 -0
  127. data/data/images/p_335_mancala.gif +0 -0
  128. data/data/images/p_335_sum.gif +0 -0
  129. data/data/images/p_336_maximix.gif +0 -0
  130. data/data/images/p_338_gridpaper.gif +0 -0
  131. data/data/images/p_340_formula.gif +0 -0
  132. data/data/images/p_344_silverdollar.gif +0 -0
  133. data/data/images/p_351_hexorchard.png +0 -0
  134. data/data/images/p_354_bee_honeycomb.png +0 -0
  135. data/data/images/p_356_cubicpoly1.gif +0 -0
  136. data/data/images/p_356_cubicpoly2.gif +0 -0
  137. data/data/images/p_361_Thue-Morse1.gif +0 -0
  138. data/data/images/p_364_comf_dist.gif +0 -0
  139. data/data/images/p_372_pencilray1.jpg +0 -0
  140. data/data/images/p_372_pencilray2.gif +0 -0
  141. data/data/images/p_380_mazes.gif +0 -0
  142. data/data/images/p_384_formula.gif +0 -0
  143. data/data/images/p_385_ellipsetriangle.png +0 -0
  144. data/data/images/p_394_eatpie.gif +0 -0
  145. data/data/images/p_395_pythagorean.gif +0 -0
  146. data/data/images/p_404_c_ellipse.gif +0 -0
  147. data/data/images/p_405_tile1.png +0 -0
  148. data/data/images/p_405_tile2.gif +0 -0
  149. data/data/images/p_420_matrix.gif +0 -0
  150. data/data/images/p_424_kakuro1.gif +0 -0
  151. data/data/images/p_426_baxball1.gif +0 -0
  152. data/data/images/p_426_baxball2.gif +0 -0
  153. data/data/images/p_430_flips.gif +0 -0
  154. data/data/images/sod_13.gif +115 -0
  155. data/data/images/spacer.gif +0 -0
  156. data/data/images/symbol_asymp.gif +0 -0
  157. data/data/images/symbol_cong.gif +0 -0
  158. data/data/images/symbol_ge.gif +0 -0
  159. data/data/images/symbol_gt.gif +0 -0
  160. data/data/images/symbol_implies.gif +0 -0
  161. data/data/images/symbol_lceil.gif +0 -0
  162. data/data/images/symbol_le.gif +0 -0
  163. data/data/images/symbol_lfloor.gif +0 -0
  164. data/data/images/symbol_lt.gif +0 -0
  165. data/data/images/symbol_maps.gif +0 -0
  166. data/data/images/symbol_minus.gif +0 -0
  167. data/data/images/symbol_ne.gif +0 -0
  168. data/data/images/symbol_plusmn.gif +0 -0
  169. data/data/images/symbol_radic.gif +0 -0
  170. data/data/images/symbol_rceil.gif +0 -0
  171. data/data/images/symbol_rfloor.gif +0 -0
  172. data/data/images/symbol_sum.gif +0 -0
  173. data/data/images/symbol_times.gif +0 -0
  174. data/data/problems/1.yml +5 -3
  175. data/data/problems/10.yml +3 -4
  176. data/data/problems/100.yml +7 -9
  177. data/data/problems/101.yml +32 -45
  178. data/data/problems/102.yml +11 -12
  179. data/data/problems/103.yml +18 -22
  180. data/data/problems/104.yml +9 -11
  181. data/data/problems/105.yml +12 -17
  182. data/data/problems/106.yml +14 -15
  183. data/data/problems/107.yml +16 -16
  184. data/data/problems/108.yml +17 -28
  185. data/data/problems/109.yml +27 -29
  186. data/data/problems/11.yml +24 -29
  187. data/data/problems/110.yml +11 -15
  188. data/data/problems/111.yml +27 -17
  189. data/data/problems/112.yml +13 -11
  190. data/data/problems/113.yml +11 -9
  191. data/data/problems/114.yml +46 -100
  192. data/data/problems/115.yml +15 -12
  193. data/data/problems/116.yml +33 -72
  194. data/data/problems/117.yml +36 -78
  195. data/data/problems/118.yml +5 -5
  196. data/data/problems/119.yml +9 -7
  197. data/data/problems/12.yml +8 -9
  198. data/data/problems/120.yml +7 -13
  199. data/data/problems/121.yml +9 -11
  200. data/data/problems/122.yml +21 -38
  201. data/data/problems/123.yml +9 -9
  202. data/data/problems/124.yml +24 -54
  203. data/data/problems/125.yml +7 -8
  204. data/data/problems/126.yml +12 -13
  205. data/data/problems/127.yml +21 -27
  206. data/data/problems/128.yml +19 -14
  207. data/data/problems/129.yml +9 -8
  208. data/data/problems/13.yml +52 -2
  209. data/data/problems/130.yml +12 -15
  210. data/data/problems/131.yml +9 -8
  211. data/data/problems/132.yml +7 -8
  212. data/data/problems/133.yml +9 -9
  213. data/data/problems/134.yml +7 -15
  214. data/data/problems/135.yml +9 -16
  215. data/data/problems/136.yml +9 -13
  216. data/data/problems/137.yml +22 -32
  217. data/data/problems/138.yml +11 -16
  218. data/data/problems/139.yml +11 -11
  219. data/data/problems/14.yml +14 -24
  220. data/data/problems/140.yml +18 -25
  221. data/data/problems/141.yml +10 -11
  222. data/data/problems/142.yml +3 -10
  223. data/data/problems/143.yml +13 -16
  224. data/data/problems/144.yml +23 -26
  225. data/data/problems/145.yml +7 -7
  226. data/data/problems/146.yml +6 -6
  227. data/data/problems/147.yml +7 -8
  228. data/data/problems/148.yml +15 -7
  229. data/data/problems/149.yml +26 -35
  230. data/data/problems/15.yml +7 -7
  231. data/data/problems/150.yml +18 -29
  232. data/data/problems/151.yml +17 -15
  233. data/data/problems/152.yml +11 -8
  234. data/data/problems/153.yml +38 -53
  235. data/data/problems/154.yml +10 -12
  236. data/data/problems/155.yml +12 -15
  237. data/data/problems/156.yml +20 -22
  238. data/data/problems/157.yml +26 -28
  239. data/data/problems/158.yml +13 -14
  240. data/data/problems/159.yml +15 -25
  241. data/data/problems/16.yml +5 -2
  242. data/data/problems/160.yml +3 -4
  243. data/data/problems/161.yml +6 -10
  244. data/data/problems/162.yml +10 -11
  245. data/data/problems/163.yml +13 -15
  246. data/data/problems/164.yml +3 -3
  247. data/data/problems/165.yml +25 -28
  248. data/data/problems/166.yml +7 -11
  249. data/data/problems/167.yml +10 -12
  250. data/data/problems/168.yml +7 -9
  251. data/data/problems/169.yml +4 -5
  252. data/data/problems/17.yml +7 -7
  253. data/data/problems/170.yml +7 -10
  254. data/data/problems/171.yml +7 -9
  255. data/data/problems/172.yml +3 -2
  256. data/data/problems/173.yml +9 -7
  257. data/data/problems/174.yml +13 -15
  258. data/data/problems/175.yml +13 -15
  259. data/data/problems/176.yml +5 -5
  260. data/data/problems/177.yml +13 -12
  261. data/data/problems/178.yml +5 -5
  262. data/data/problems/179.yml +3 -6
  263. data/data/problems/18.yml +13 -17
  264. data/data/problems/180.yml +20 -25
  265. data/data/problems/181.yml +7 -3
  266. data/data/problems/182.yml +22 -27
  267. data/data/problems/183.yml +17 -23
  268. data/data/problems/184.yml +11 -14
  269. data/data/problems/185.yml +17 -18
  270. data/data/problems/186.yml +16 -24
  271. data/data/problems/187.yml +9 -12
  272. data/data/problems/188.yml +5 -6
  273. data/data/problems/189.yml +5 -7
  274. data/data/problems/19.yml +7 -8
  275. data/data/problems/190.yml +7 -9
  276. data/data/problems/191.yml +9 -10
  277. data/data/problems/192.yml +14 -22
  278. data/data/problems/193.yml +5 -3
  279. data/data/problems/194.yml +11 -14
  280. data/data/problems/195.yml +7 -9
  281. data/data/problems/196.yml +13 -21
  282. data/data/problems/197.yml +7 -11
  283. data/data/problems/198.yml +13 -16
  284. data/data/problems/199.yml +10 -10
  285. data/data/problems/2.yml +6 -6
  286. data/data/problems/20.yml +10 -18
  287. data/data/problems/200.yml +8 -8
  288. data/data/problems/201.yml +14 -16
  289. data/data/problems/202.yml +11 -10
  290. data/data/problems/203.yml +11 -16
  291. data/data/problems/204.yml +7 -7
  292. data/data/problems/205.yml +6 -6
  293. data/data/problems/206.yml +2 -2
  294. data/data/problems/207.yml +13 -16
  295. data/data/problems/208.yml +8 -8
  296. data/data/problems/209.yml +11 -23
  297. data/data/problems/21.yml +8 -9
  298. data/data/problems/210.yml +6 -6
  299. data/data/problems/211.yml +7 -7
  300. data/data/problems/212.yml +26 -36
  301. data/data/problems/213.yml +6 -7
  302. data/data/problems/214.yml +10 -11
  303. data/data/problems/215.yml +11 -14
  304. data/data/problems/216.yml +7 -10
  305. data/data/problems/217.yml +14 -23
  306. data/data/problems/218.yml +9 -10
  307. data/data/problems/219.yml +10 -15
  308. data/data/problems/22.yml +7 -9
  309. data/data/problems/220.yml +15 -20
  310. data/data/problems/221.yml +10 -16
  311. data/data/problems/222.yml +5 -3
  312. data/data/problems/223.yml +6 -8
  313. data/data/problems/224.yml +6 -8
  314. data/data/problems/225.yml +6 -7
  315. data/data/problems/226.yml +9 -12
  316. data/data/problems/227.yml +9 -9
  317. data/data/problems/228.yml +14 -17
  318. data/data/problems/229.yml +17 -25
  319. data/data/problems/23.yml +11 -15
  320. data/data/problems/230.yml +15 -19
  321. data/data/problems/231.yml +8 -12
  322. data/data/problems/232.yml +9 -10
  323. data/data/problems/233.yml +7 -6
  324. data/data/problems/234.yml +14 -19
  325. data/data/problems/235.yml +4 -5
  326. data/data/problems/236.yml +20 -22
  327. data/data/problems/237.yml +14 -9
  328. data/data/problems/238.yml +21 -33
  329. data/data/problems/239.yml +5 -5
  330. data/data/problems/24.yml +7 -6
  331. data/data/problems/240.yml +7 -7
  332. data/data/problems/241.yml +9 -12
  333. data/data/problems/242.yml +7 -9
  334. data/data/problems/243.yml +14 -15
  335. data/data/problems/244.yml +19 -28
  336. data/data/problems/245.yml +22 -30
  337. data/data/problems/246.yml +10 -13
  338. data/data/problems/247.yml +14 -17
  339. data/data/problems/248.yml +5 -2
  340. data/data/problems/249.yml +3 -3
  341. data/data/problems/25.yml +12 -11
  342. data/data/problems/250.yml +3 -3
  343. data/data/problems/251.yml +11 -9
  344. data/data/problems/252.yml +24 -25
  345. data/data/problems/253.yml +19 -32
  346. data/data/problems/254.yml +13 -17
  347. data/data/problems/255.yml +40 -50
  348. data/data/problems/256.yml +31 -39
  349. data/data/problems/257.yml +10 -14
  350. data/data/problems/258.yml +7 -9
  351. data/data/problems/259.yml +14 -12
  352. data/data/problems/26.yml +17 -7
  353. data/data/problems/260.yml +21 -25
  354. data/data/problems/261.yml +13 -15
  355. data/data/problems/262.yml +15 -16
  356. data/data/problems/263.yml +13 -15
  357. data/data/problems/264.yml +15 -16
  358. data/data/problems/265.yml +10 -12
  359. data/data/problems/266.yml +6 -6
  360. data/data/problems/267.yml +13 -10
  361. data/data/problems/268.yml +5 -4
  362. data/data/problems/269.yml +10 -11
  363. data/data/problems/27.yml +15 -21
  364. data/data/problems/270.yml +13 -13
  365. data/data/problems/271.yml +7 -9
  366. data/data/problems/272.yml +8 -11
  367. data/data/problems/273.yml +13 -17
  368. data/data/problems/274.yml +16 -19
  369. data/data/problems/275.yml +13 -15
  370. data/data/problems/276.yml +5 -7
  371. data/data/problems/277.yml +17 -20
  372. data/data/problems/278.yml +20 -28
  373. data/data/problems/279.yml +4 -3
  374. data/data/problems/28.yml +6 -13
  375. data/data/problems/280.yml +9 -9
  376. data/data/problems/281.yml +10 -13
  377. data/data/problems/282.yml +9 -6
  378. data/data/problems/283.yml +8 -8
  379. data/data/problems/284.yml +15 -18
  380. data/data/problems/285.yml +11 -11
  381. data/data/problems/286.yml +7 -8
  382. data/data/problems/287.yml +22 -32
  383. data/data/problems/288.yml +10 -11
  384. data/data/problems/289.yml +14 -15
  385. data/data/problems/29.yml +13 -20
  386. data/data/problems/290.yml +3 -4
  387. data/data/problems/291.yml +3 -6
  388. data/data/problems/292.yml +8 -9
  389. data/data/problems/293.yml +9 -10
  390. data/data/problems/294.yml +6 -6
  391. data/data/problems/295.yml +16 -21
  392. data/data/problems/296.yml +9 -11
  393. data/data/problems/297.yml +12 -15
  394. data/data/problems/298.yml +29 -29
  395. data/data/problems/299.yml +15 -21
  396. data/data/problems/3.yml +3 -3
  397. data/data/problems/30.yml +7 -8
  398. data/data/problems/300.yml +15 -16
  399. data/data/problems/301.yml +15 -17
  400. data/data/problems/302.yml +13 -14
  401. data/data/problems/303.yml +9 -7
  402. data/data/problems/304.yml +10 -15
  403. data/data/problems/305.yml +6 -10
  404. data/data/problems/306.yml +20 -24
  405. data/data/problems/307.yml +7 -8
  406. data/data/problems/308.yml +19 -30
  407. data/data/problems/309.yml +11 -12
  408. data/data/problems/31.yml +11 -14
  409. data/data/problems/310.yml +10 -15
  410. data/data/problems/311.yml +11 -17
  411. data/data/problems/312.yml +10 -11
  412. data/data/problems/313.yml +13 -13
  413. data/data/problems/314.yml +23 -25
  414. data/data/problems/315.yml +39 -45
  415. data/data/problems/316.yml +13 -13
  416. data/data/problems/317.yml +6 -7
  417. data/data/problems/318.yml +35 -57
  418. data/data/problems/319.yml +15 -19
  419. data/data/problems/32.yml +9 -10
  420. data/data/problems/320.yml +9 -8
  421. data/data/problems/321.yml +8 -9
  422. data/data/problems/322.yml +6 -8
  423. data/data/problems/323.yml +12 -15
  424. data/data/problems/324.yml +10 -13
  425. data/data/problems/325.yml +15 -21
  426. data/data/problems/326.yml +15 -8
  427. data/data/problems/327.yml +19 -23
  428. data/data/problems/328.yml +28 -31
  429. data/data/problems/329.yml +12 -13
  430. data/data/problems/33.yml +9 -9
  431. data/data/problems/330.yml +17 -36
  432. data/data/problems/331.yml +16 -22
  433. data/data/problems/332.yml +9 -11
  434. data/data/problems/333.yml +17 -20
  435. data/data/problems/334.yml +22 -34
  436. data/data/problems/335.yml +11 -12
  437. data/data/problems/336.yml +18 -20
  438. data/data/problems/337.yml +9 -11
  439. data/data/problems/338.yml +27 -37
  440. data/data/problems/339.yml +9 -9
  441. data/data/problems/34.yml +7 -3
  442. data/data/problems/340.yml +8 -10
  443. data/data/problems/341.yml +12 -14
  444. data/data/problems/342.yml +9 -13
  445. data/data/problems/343.yml +18 -25
  446. data/data/problems/344.yml +16 -17
  447. data/data/problems/345.yml +17 -22
  448. data/data/problems/346.yml +7 -7
  449. data/data/problems/347.yml +9 -12
  450. data/data/problems/348.yml +7 -8
  451. data/data/problems/349.yml +8 -9
  452. data/data/problems/35.yml +7 -4
  453. data/data/problems/350.yml +12 -14
  454. data/data/problems/351.yml +8 -9
  455. data/data/problems/352.yml +38 -42
  456. data/data/problems/353.yml +17 -21
  457. data/data/problems/354.yml +11 -13
  458. data/data/problems/355.yml +4 -4
  459. data/data/problems/356.yml +6 -6
  460. data/data/problems/357.yml +5 -5
  461. data/data/problems/358.yml +16 -25
  462. data/data/problems/359.yml +19 -22
  463. data/data/problems/36.yml +7 -4
  464. data/data/problems/360.yml +8 -8
  465. data/data/problems/361.yml +14 -15
  466. data/data/problems/362.yml +16 -28
  467. data/data/problems/363.yml +22 -23
  468. data/data/problems/364.yml +9 -11
  469. data/data/problems/365.yml +7 -13
  470. data/data/problems/366.yml +19 -22
  471. data/data/problems/367.yml +14 -15
  472. data/data/problems/368.yml +18 -35
  473. data/data/problems/369.yml +7 -11
  474. data/data/problems/37.yml +7 -6
  475. data/data/problems/370.yml +10 -13
  476. data/data/problems/371.yml +8 -9
  477. data/data/problems/372.yml +9 -12
  478. data/data/problems/373.yml +5 -6
  479. data/data/problems/374.yml +17 -21
  480. data/data/problems/375.yml +13 -17
  481. data/data/problems/376.yml +19 -21
  482. data/data/problems/377.yml +6 -7
  483. data/data/problems/378.yml +8 -11
  484. data/data/problems/379.yml +9 -11
  485. data/data/problems/38.yml +9 -13
  486. data/data/problems/380.yml +14 -17
  487. data/data/problems/381.yml +12 -18
  488. data/data/problems/382.yml +16 -19
  489. data/data/problems/383.yml +7 -9
  490. data/data/problems/384.yml +20 -24
  491. data/data/problems/385.yml +12 -16
  492. data/data/problems/386.yml +9 -11
  493. data/data/problems/387.yml +14 -15
  494. data/data/problems/388.yml +6 -8
  495. data/data/problems/389.yml +8 -8
  496. data/data/problems/39.yml +7 -6
  497. data/data/problems/390.yml +9 -14
  498. data/data/problems/391.yml +21 -25
  499. data/data/problems/392.yml +16 -17
  500. data/data/problems/393.yml +5 -6
  501. data/data/problems/394.yml +15 -18
  502. data/data/problems/395.yml +12 -13
  503. data/data/problems/396.yml +17 -22
  504. data/data/problems/397.yml +13 -16
  505. data/data/problems/398.yml +8 -9
  506. data/data/problems/399.yml +18 -18
  507. data/data/problems/4.yml +5 -4
  508. data/data/problems/40.yml +11 -14
  509. data/data/problems/400.yml +10 -11
  510. data/data/problems/401.yml +6 -7
  511. data/data/problems/402.yml +16 -21
  512. data/data/problems/403.yml +12 -14
  513. data/data/problems/404.yml +14 -16
  514. data/data/problems/405.yml +10 -11
  515. data/data/problems/406.yml +35 -41
  516. data/data/problems/407.yml +9 -16
  517. data/data/problems/408.yml +9 -9
  518. data/data/problems/409.yml +5 -7
  519. data/data/problems/41.yml +5 -4
  520. data/data/problems/410.yml +10 -13
  521. data/data/problems/411.yml +15 -19
  522. data/data/problems/412.yml +11 -15
  523. data/data/problems/413.yml +8 -8
  524. data/data/problems/414.yml +29 -34
  525. data/data/problems/415.yml +12 -15
  526. data/data/problems/416.yml +7 -7
  527. data/data/problems/417.yml +16 -17
  528. data/data/problems/418.yml +9 -12
  529. data/data/problems/419.yml +13 -18
  530. data/data/problems/42.yml +9 -10
  531. data/data/problems/420.yml +5 -6
  532. data/data/problems/421.yml +14 -25
  533. data/data/problems/422.yml +16 -18
  534. data/data/problems/423.yml +16 -18
  535. data/data/problems/424.yml +18 -19
  536. data/data/problems/425.yml +11 -12
  537. data/data/problems/426.yml +20 -21
  538. data/data/problems/427.yml +11 -13
  539. data/data/problems/428.yml +21 -25
  540. data/data/problems/429.yml +6 -6
  541. data/data/problems/43.yml +15 -13
  542. data/data/problems/430.yml +14 -16
  543. data/data/problems/44.yml +9 -12
  544. data/data/problems/45.yml +11 -11
  545. data/data/problems/46.yml +9 -14
  546. data/data/problems/47.yml +11 -16
  547. data/data/problems/48.yml +5 -3
  548. data/data/problems/49.yml +7 -6
  549. data/data/problems/5.yml +5 -4
  550. data/data/problems/50.yml +11 -6
  551. data/data/problems/51.yml +9 -11
  552. data/data/problems/52.yml +5 -4
  553. data/data/problems/53.yml +15 -24
  554. data/data/problems/54.yml +29 -39
  555. data/data/problems/55.yml +16 -17
  556. data/data/problems/56.yml +5 -7
  557. data/data/problems/57.yml +10 -11
  558. data/data/problems/58.yml +11 -18
  559. data/data/problems/59.yml +11 -19
  560. data/data/problems/6.yml +13 -9
  561. data/data/problems/60.yml +5 -6
  562. data/data/problems/61.yml +18 -26
  563. data/data/problems/62.yml +5 -5
  564. data/data/problems/63.yml +5 -3
  565. data/data/problems/64.yml +52 -126
  566. data/data/problems/65.yml +21 -47
  567. data/data/problems/66.yml +13 -23
  568. data/data/problems/67.yml +10 -13
  569. data/data/problems/68.yml +15 -19
  570. data/data/problems/69.yml +18 -10
  571. data/data/problems/7.yml +5 -2
  572. data/data/problems/70.yml +10 -12
  573. data/data/problems/71.yml +11 -13
  574. data/data/problems/72.yml +11 -12
  575. data/data/problems/73.yml +11 -12
  576. data/data/problems/74.yml +25 -37
  577. data/data/problems/75.yml +10 -12
  578. data/data/problems/76.yml +4 -4
  579. data/data/problems/77.yml +4 -4
  580. data/data/problems/78.yml +13 -8
  581. data/data/problems/79.yml +7 -7
  582. data/data/problems/8.yml +14 -8
  583. data/data/problems/80.yml +7 -7
  584. data/data/problems/81.yml +9 -15
  585. data/data/problems/82.yml +10 -15
  586. data/data/problems/83.yml +10 -19
  587. data/data/problems/84.yml +36 -59
  588. data/data/problems/85.yml +7 -5
  589. data/data/problems/86.yml +11 -11
  590. data/data/problems/87.yml +7 -8
  591. data/data/problems/88.yml +30 -49
  592. data/data/problems/89.yml +13 -14
  593. data/data/problems/9.yml +6 -9
  594. data/data/problems/90.yml +16 -18
  595. data/data/problems/91.yml +10 -15
  596. data/data/problems/92.yml +14 -25
  597. data/data/problems/93.yml +13 -17
  598. data/data/problems/94.yml +7 -7
  599. data/data/problems/95.yml +13 -19
  600. data/data/problems/96.yml +24 -40
  601. data/data/problems/97.yml +7 -10
  602. data/data/problems/98.yml +9 -12
  603. data/data/problems/99.yml +9 -12
  604. data/euler-manager.gemspec +1 -0
  605. data/example/1/README.md +4 -4
  606. data/example/15/README.md +8 -0
  607. data/example/15/python/15.py +5 -0
  608. data/example/15/python/euler.py +0 -0
  609. data/example/2/README.md +7 -5
  610. data/example/Eulerfile.rb +1 -0
  611. data/lib/euler/problem.rb +6 -1
  612. data/lib/euler/solution.rb +4 -2
  613. data/lib/euler/version.rb +1 -1
  614. data/rake/clean.rake +16 -0
  615. data/rake/update.rake +88 -0
  616. data/spec/euler/solution_spec.rb +2 -1
  617. data/templates/Eulerfile.rb +12 -0
  618. metadata +189 -29
  619. data/data/problems/431.yml +0 -33
  620. data/data/problems/432.yml +0 -13
  621. data/data/problems/433.yml +0 -18
  622. data/data/problems/434.yml +0 -32
  623. data/data/problems/435.yml +0 -21
  624. data/data/problems/436.yml +0 -21
  625. data/data/problems/437.yml +0 -22
  626. data/data/problems/438.yml +0 -29
  627. data/data/problems/439.yml +0 -17
  628. data/data/problems/440.yml +0 -21
  629. data/data/problems/441.yml +0 -23
  630. data/data/problems/442.yml +0 -9
  631. data/data/problems/443.yml +0 -13
  632. data/data/problems/444.yml +0 -28
  633. data/data/problems/445.yml +0 -37
  634. data/data/problems/446.yml +0 -29
  635. data/data/problems/447.yml +0 -31
  636. data/data/problems/448.yml +0 -14
  637. data/data/problems/449.yml +0 -17
  638. data/data/problems/450.yml +0 -26
  639. data/data/problems/451.yml +0 -15
  640. data/data/problems/452.yml +0 -8
  641. data/data/problems/453.yml +0 -16
  642. data/data/problems/454.yml +0 -17
  643. data/data/problems/455.yml +0 -16
  644. data/data/problems/456.yml +0 -15
  645. data/scripts/update_problems +0 -68
@@ -2,29 +2,25 @@
2
2
  :id: 260
3
3
  :name: Stone Game
4
4
  :url: http://projecteuler.net/problem=260
5
- :content: "\r\n<p>A game is played with three piles of stones and two players.<br>\r\nAt
6
- her turn, a player removes one or more stones from the piles. However, if she takes
5
+ :content: "A game is played with three piles of stones and two players. \n\rAt her
6
+ turn, a player removes one or more stones from the piles. However, if she takes
7
7
  stones from more than one pile, she must remove the same number of stones from each
8
- of the selected piles.</p>\r\n\r\n<p>In other words, the player chooses some N&gt;0
9
- and removes:\r\n</p>\n<ul>\n<li>N stones from any single pile; or</li>\r\n<li>N
10
- stones from each of any two piles (2N total); or</li>\r\n<li>N stones from each
11
- of the three piles (3N total).</li>\n</ul>\r\nThe player taking the last stone(s)
12
- wins the game.\r\n\r\n<p>A <i>winning configuration</i> is one where the first player
13
- can force a win.<br>\r\nFor example, (0,0,13), (0,11,11) and (5,5,5) are winning
14
- configurations because the first player can immediately remove all stones.</p>\r\n\r\n<p>A
15
- <i>losing configuration</i> is one where the second player can force a win, no matter
16
- what the first player does.<br> \r\nFor example, (0,1,2) and (1,3,3) are losing
17
- configurations: any legal move leaves a winning configuration for the second player.</p>\r\n\r\n<p>Consider
18
- all losing configurations (x<sub>i</sub>,y<sub>i</sub>,z<sub>i</sub>) where x<sub>i</sub><img
19
- src=\"images/symbol_le.gif\" width=\"10\" height=\"12\" alt=\"≤\" border=\"0\" style=\"vertical-align:middle;\">
20
- y<sub>i</sub><img src=\"images/symbol_le.gif\" width=\"10\" height=\"12\" alt=\"≤\"
21
- border=\"0\" style=\"vertical-align:middle;\"> z<sub>i</sub><img src=\"images/symbol_le.gif\"
22
- width=\"10\" height=\"12\" alt=\"≤\" border=\"0\" style=\"vertical-align:middle;\">
23
- 100.<br>\r\nWe can verify that Σ(x<sub>i</sub>+y<sub>i</sub>+z<sub>i</sub>) = 173895
24
- for these.</p>\r\n\r\n<p>Find Σ(x<sub>i</sub>+y<sub>i</sub>+z<sub>i</sub>) where
25
- (x<sub>i</sub>,y<sub>i</sub>,z<sub>i</sub>) ranges over the losing configurations<br>\r\nwith
26
- x<sub>i</sub><img src=\"images/symbol_le.gif\" width=\"10\" height=\"12\" alt=\"≤\"
27
- border=\"0\" style=\"vertical-align:middle;\"> y<sub>i</sub><img src=\"images/symbol_le.gif\"
28
- width=\"10\" height=\"12\" alt=\"≤\" border=\"0\" style=\"vertical-align:middle;\">
29
- z<sub>i</sub><img src=\"images/symbol_le.gif\" width=\"10\" height=\"12\" alt=\"≤\"
30
- border=\"0\" style=\"vertical-align:middle;\"> 1000.</p>\r\n"
8
+ of the selected piles.\n\nIn other words, the player chooses some N>0 and removes:\n\n-
9
+ N stones from any single pile; or\n- N stones from each of any two piles (2N total);
10
+ or\n- N stones from each of the three piles (3N total).\n\rThe player taking the
11
+ last stone(s) wins the game.\r\r\n\nA _winning configuration_ is one where the first
12
+ player can force a win. \n\rFor example, (0,0,13), (0,11,11) and (5,5,5) are winning
13
+ configurations because the first player can immediately remove all stones.\n\nA
14
+ _losing configuration_ is one where the second player can force a win, no matter
15
+ what the first player does. \n \rFor example, (0,1,2) and (1,3,3) are losing configurations:
16
+ any legal move leaves a winning configuration for the second player.\n\nConsider
17
+ all losing configurations (x<sub>i</sub>,y<sub>i</sub>,z<sub>i</sub>) where x<sub>i</sub>
18
+ ![≤](/home/will/src/euler-manager/config/../data/images/symbol_le.gif) y<sub>i</sub>
19
+ ![≤](/home/will/src/euler-manager/config/../data/images/symbol_le.gif) z<sub>i</sub>
20
+ ![≤](/home/will/src/euler-manager/config/../data/images/symbol_le.gif) 100. \n\rWe
21
+ can verify that Σ(x<sub>i</sub>+y<sub>i</sub>+z<sub>i</sub>) = 173895 for these.\n\nFind
22
+ Σ(x<sub>i</sub>+y<sub>i</sub>+z<sub>i</sub>) where (x<sub>i</sub>,y<sub>i</sub>,z<sub>i</sub>)
23
+ ranges over the losing configurations \n\rwith x<sub>i</sub> ![≤](/home/will/src/euler-manager/config/../data/images/symbol_le.gif)
24
+ y<sub>i</sub> ![≤](/home/will/src/euler-manager/config/../data/images/symbol_le.gif)
25
+ z<sub>i</sub> ![≤](/home/will/src/euler-manager/config/../data/images/symbol_le.gif)
26
+ 1000.\n\n"
@@ -2,18 +2,16 @@
2
2
  :id: 261
3
3
  :name: Pivotal Square Sums
4
4
  :url: http://projecteuler.net/problem=261
5
- :content: "\r\n<p>Let us call a positive integer <var>k</var> a <var>square-pivot</var>,
6
- if there is a pair of integers <var>m</var> <img src=\"images/symbol_gt.gif\" width=\"10\"
7
- height=\"10\" alt=\"&gt;\" border=\"0\" style=\"vertical-align:middle;\"> 0 and
8
- <var>n</var> <img src=\"images/symbol_ge.gif\" width=\"10\" height=\"12\" alt=\"≥\"
9
- border=\"0\" style=\"vertical-align:middle;\"><var>k</var>, such that the sum of
10
- the (<var>m</var>+1) consecutive squares up to <var>k</var> equals the sum of the
11
- <var>m</var> consecutive squares from (<var>n</var>+1) on:</p>\r\n<div align=\"center\">\r\n(<var>k</var>-<var>m</var>)<sup>2</sup>
12
- + ... + <var>k</var><sup>2</sup> = (<var>n</var>+1)<sup>2</sup> + ... + (<var>n</var>+<var>m</var>)<sup>2</sup>.</div>\r\n\r\n<p>Some
13
- small square-pivots are\r\n</p>\n<ul>\n<li>\n<b>4</b>: 3<sup>2</sup> + <b>4</b><sup>2</sup>\r\n
14
- = 5<sup>2</sup>\n</li>\r\n<li>\n<b>21</b>: 20<sup>2</sup> + <b>21</b><sup>2</sup>
15
- = 29<sup>2</sup>\n</li>\r\n<li>\n<b>24</b>: 21<sup>2</sup> + 22<sup>2</sup> + 23<sup>2</sup>
16
- + <b>24</b><sup>2</sup> = 25<sup>2</sup> + 26<sup>2</sup> + 27<sup>2</sup>\n</li>\r\n<li>\n<b>110</b>:
17
- 108<sup>2</sup> + 109<sup>2</sup> + <b>110</b><sup>2</sup> = 133<sup>2</sup> + 134<sup>2</sup>\n</li>\n</ul>\n<p>Find
18
- the sum of all <b>distinct</b> square-pivots <img src=\"images/symbol_le.gif\" width=\"10\"
19
- height=\"12\" alt=\"≤\" border=\"0\" style=\"vertical-align:middle;\"> 10<sup>10</sup>.</p>\r\n"
5
+ :content: "Let us call a positive integer <var>k</var> a <var>square-pivot</var>,
6
+ if there is a pair of integers <var>m</var> ![>](/home/will/src/euler-manager/config/../data/images/symbol_gt.gif)
7
+ 0 and <var>n</var> ![≥](/home/will/src/euler-manager/config/../data/images/symbol_ge.gif)
8
+ <var>k</var>, such that the sum of the (<var>m</var>+1) consecutive squares up to
9
+ <var>k</var> equals the sum of the <var>m</var> consecutive squares from (<var>n</var>+1)
10
+ on:\n\n\r(<var>k</var>-<var>m</var>)<sup>2</sup> + ... + <var>k</var><sup>2</sup>
11
+ = (<var>n</var>+1)<sup>2</sup> + ... + (<var>n</var>+<var>m</var>)<sup>2</sup>.\n\nSome
12
+ small square-pivots are\n\n- **4** : 3<sup>2</sup> + **4** <sup>2</sup>\r = 5<sup>2</sup>\n-
13
+ **21** : 20<sup>2</sup> + **21** <sup>2</sup> = 29<sup>2</sup>\n- **24** : 21<sup>2</sup>
14
+ + 22<sup>2</sup> + 23<sup>2</sup> + **24** <sup>2</sup> = 25<sup>2</sup> + 26<sup>2</sup>
15
+ + 27<sup>2</sup>\n- **110** : 108<sup>2</sup> + 109<sup>2</sup> + **110** <sup>2</sup>
16
+ = 133<sup>2</sup> + 134<sup>2</sup>\n\nFind the sum of all **distinct** square-pivots
17
+ ![≤](/home/will/src/euler-manager/config/../data/images/symbol_le.gif) 10<sup>10</sup>.\n\n"
@@ -2,19 +2,18 @@
2
2
  :id: 262
3
3
  :name: Mountain Range
4
4
  :url: http://projecteuler.net/problem=262
5
- :content: "\r\n<p>The following equation represents the <i>continuous</i> topography
6
- of a mountainous region, giving the <dfn title=\"height above sea level\">elevation</dfn>
7
- <var>h</var> at any point (<var>x</var>,<var>y</var>):</p>\r\n\r\n<div align=\"center\">\r\n<img
8
- src=\"project/images/p_262_formula1.gif\"><br>\n</div>\r\n\r\n<p>A mosquito intends
9
- to fly from A(200,200) to B(1400,1400), without leaving the area given by 0 ≤ <var>x</var>, <var>y</var> ≤ 1600.</p>\r\n\r\n<p>Because
10
- of the intervening mountains, it first rises straight up to a point A', having elevation
11
- <var>f</var>. Then, while remaining at the same elevation <var>f</var>, it flies
12
- around any obstacles until it arrives at a point B' directly above B.</p>\r\n\r\n<p>First,
13
- determine <var>f<sub>min</sub></var> which is the minimum constant elevation allowing
14
- such a trip from A to B, while remaining in the specified area.<br>\r\nThen, find
15
- the length of the shortest path between A' and B', while flying at that constant
16
- elevation <var>f<sub>min</sub></var>.</p>\r\n\r\n<p>Give that length as your answer,
17
- rounded to three decimal places.</p>\r\n\r\n<p><font><u>Note</u>: For convenience,
18
- the elevation function shown above is repeated below, in a form suitable for most
19
- programming languages:<br>\r\nh=( 5000-0.005*(x*x+y*y+x*y)+12.5*(x+y) ) * exp( -abs(0.000001*(x*x+y*y)-0.0015*(x+y)+0.7)
20
- )</font></p>\r\n\r\n"
5
+ :content: "The following equation represents the _continuous_ topography of a mountainous
6
+ region, giving the <dfn title=\"height above sea level\">elevation</dfn> <var>h</var>
7
+ at any point (<var>x</var>,<var>y</var>):\n\n ![](/home/will/src/euler-manager/config/../data/images/p_262_formula1.gif)
8
+ \ \n\nA mosquito intends to fly from A(200,200) to B(1400,1400), without leaving
9
+ the area given by 0 ≤ <var>x</var>, <var>y</var> ≤ 1600.\n\nBecause of the intervening
10
+ mountains, it first rises straight up to a point A', having elevation <var>f</var>.
11
+ Then, while remaining at the same elevation <var>f</var>, it flies around any obstacles
12
+ until it arrives at a point B' directly above B.\n\nFirst, determine <var>f<sub>min</sub></var>
13
+ which is the minimum constant elevation allowing such a trip from A to B, while
14
+ remaining in the specified area. \n\rThen, find the length of the shortest path
15
+ between A' and B', while flying at that constant elevation <var>f<sub>min</sub></var>.\n\nGive
16
+ that length as your answer, rounded to three decimal places.\n\n<font><u>Note</u>:
17
+ For convenience, the elevation function shown above is repeated below, in a form
18
+ suitable for most programming languages:<br>\r\nh=( 5000-0.005*(x*x+y*y+x*y)+12.5*(x+y)
19
+ ) * exp( -abs(0.000001*(x*x+y*y)-0.0015*(x+y)+0.7) )</font>\n\n"
@@ -2,18 +2,16 @@
2
2
  :id: 263
3
3
  :name: An engineers' dream come true
4
4
  :url: http://projecteuler.net/problem=263
5
- :content: "\r\n<p>\r\nConsider the number 6. The divisors of 6 are: 1,2,3 and 6.<br>\r\nEvery
6
- number from 1 up to and including 6 can be written as a sum of distinct divisors
7
- of 6:<br>\r\n1=1, 2=2, 3=1+2, 4=1+3, 5=2+3, 6=6.<br>\r\nA number <var>n</var> is
8
- called a practical number if every number from 1 up to and including <var>n</var>
9
- can be expressed as a sum of distinct divisors of <var>n</var>.\r\n</p>\r\n<p>\r\nA
10
- pair of consecutive prime numbers with a difference of six is called a sexy pair
11
- (since \"sex\" is the Latin word for \"six\"). The first sexy pair is (23, 29).\r\n</p>\r\n<p>\r\nWe
12
- may occasionally find a triple-pair, which means three consecutive sexy prime pairs,
13
- such that the second member of each pair is the first member of the next pair.\r\n</p>\r\n<p>\r\nWe
14
- shall call a number <var>n</var> such that :\r\n</p>\n<ul>\n<li>(<var>n</var>-9,
15
- <var>n</var>-3), (<var>n</var>-3,<var>n</var>+3), (<var>n</var>+3, <var>n</var>+9)
16
- form a triple-pair, and \r\n</li>\n<li>the numbers <var>n</var>-8, <var>n</var>-4,
17
- <var>n</var>, <var>n</var>+4 and <var>n</var>+8 are all practical,\r\n</li>\n</ul>
18
- \r\nan engineers’ paradise.\r\n\r\n<p>\r\nFind the sum of the first four engineers’
19
- paradises.\r\n</p>\r\n\r\n\r\n"
5
+ :content: "Consider the number 6. The divisors of 6 are: 1,2,3 and 6. \n\rEvery number
6
+ from 1 up to and including 6 can be written as a sum of distinct divisors of 6:
7
+ \ \n\r1=1, 2=2, 3=1+2, 4=1+3, 5=2+3, 6=6. \n\rA number <var>n</var> is called a
8
+ practical number if every number from 1 up to and including <var>n</var> can be
9
+ expressed as a sum of distinct divisors of <var>n</var>.\n\nA pair of consecutive
10
+ prime numbers with a difference of six is called a sexy pair (since \"sex\" is the
11
+ Latin word for \"six\"). The first sexy pair is (23, 29).\n\nWe may occasionally
12
+ find a triple-pair, which means three consecutive sexy prime pairs, such that the
13
+ second member of each pair is the first member of the next pair.\n\nWe shall call
14
+ a number <var>n</var> such that :\n\n- (<var>n</var>-9, <var>n</var>-3), (<var>n</var>-3,<var>n</var>+3),
15
+ (<var>n</var>+3, <var>n</var>+9) form a triple-pair, and \r\n- the numbers <var>n</var>-8,
16
+ <var>n</var>-4, <var>n</var>, <var>n</var>+4 and <var>n</var>+8 are all practical,\r\n
17
+ \ran engineers’ paradise.\r\r\n\nFind the sum of the first four engineers’ paradises.\n\n"
@@ -2,19 +2,18 @@
2
2
  :id: 264
3
3
  :name: Triangle Centres
4
4
  :url: http://projecteuler.net/problem=264
5
- :content: "\r\n<p>Consider all the triangles having:\r\n</p>\n<ul>\n<li>All their
6
- vertices on <dfn title=\"Integer coordinates\">lattice points</dfn>.</li>\r\n<li>\n<dfn
7
- title=\"Centre of the circumscribed circle\">Circumcentre</dfn> at the origin O.</li>\r\n<li>\n<dfn
8
- title=\"Point where the three altitudes meet\">Orthocentre</dfn> at the point H(5,
9
- 0).</li>\r\n</ul>\n<p>There are nine such triangles having a perimeter <img src=\"images/symbol_le.gif\"
10
- width=\"10\" height=\"12\" alt=\"≤\" border=\"0\" style=\"vertical-align:middle;\">
11
- 50.<br>\r\nListed and shown in ascending order of their perimeter, they are:</p>\r\n\r\n<p></p>\n<table><tr>\n<td>A(-4,
12
- 3), B(5, 0), C(4, -3)<br>\r\nA(4, 3), B(5, 0), C(-4, -3)<br>\r\nA(-3, 4), B(5, 0),
13
- C(3, -4)<br><br><br>\r\nA(3, 4), B(5, 0), C(-3, -4)<br>\r\nA(0, 5), B(5, 0), C(0,
14
- -5)<br>\r\nA(1, 8), B(8, -1), C(-4, -7)<br><br><br>\r\nA(8, 1), B(1, -8), C(-4,
15
- 7)<br>\r\nA(2, 9), B(9, -2), C(-6, -7)<br>\r\nA(9, 2), B(2, -9), C(-6, 7)<br>\n</td>\r\n<td><img
16
- src=\"project/images/p_264_TriangleCentres.gif\"></td>\r\n</tr></table>\n<p>The
17
- sum of their perimeters, rounded to four decimal places, is 291.0089.</p>\r\n\r\n<p>Find
18
- all such triangles with a perimeter <img src=\"images/symbol_le.gif\" width=\"10\"
19
- height=\"12\" alt=\"≤\" border=\"0\" style=\"vertical-align:middle;\"> 10<sup>5</sup>.<br>\r\nEnter
20
- as your answer the sum of their perimeters rounded to four decimal places.</p>\r\n\r\n"
5
+ :content: "Consider all the triangles having:\n\n- All their vertices on <dfn title=\"Integer
6
+ coordinates\">lattice points</dfn>.\n- <dfn title=\"Centre of the circumscribed
7
+ circle\">Circumcentre</dfn> at the origin O.\n- <dfn title=\"Point where the three
8
+ altitudes meet\">Orthocentre</dfn> at the point H(5, 0).\n\nThere are nine such
9
+ triangles having a perimeter ![≤](/home/will/src/euler-manager/config/../data/images/symbol_le.gif)
10
+ 50. \n\rListed and shown in ascending order of their perimeter, they are:\n\n|
11
+ A(-4, 3), B(5, 0), C(4, -3) \n\rA(4, 3), B(5, 0), C(-4, -3) \n\rA(-3, 4), B(5,
12
+ 0), C(3, -4) \n \n \n \n \n\rA(3, 4), B(5, 0), C(-3, -4) \n\rA(0, 5), B(5,
13
+ 0), C(0, -5) \n\rA(1, 8), B(8, -1), C(-4, -7) \n \n \n \n \n\rA(8, 1), B(1,
14
+ -8), C(-4, 7) \n\rA(2, 9), B(9, -2), C(-6, -7) \n\rA(9, 2), B(2, -9), C(-6, 7)
15
+ \ \n | ![](/home/will/src/euler-manager/config/../data/images/p_264_TriangleCentres.gif)
16
+ |\n\nThe sum of their perimeters, rounded to four decimal places, is 291.0089.\n\nFind
17
+ all such triangles with a perimeter ![≤](/home/will/src/euler-manager/config/../data/images/symbol_le.gif)
18
+ 10<sup>5</sup>. \n\rEnter as your answer the sum of their perimeters rounded to
19
+ four decimal places.\n\n"
@@ -2,15 +2,13 @@
2
2
  :id: 265
3
3
  :name: Binary Circles
4
4
  :url: http://projecteuler.net/problem=265
5
- :content: "\r\n<p>2<sup>N</sup> binary digits can be placed in a circle so that all
6
- the N-digit clockwise subsequences are distinct.</p>\r\n\r\n<p>For N=3, two such
7
- circular arrangements are possible, ignoring rotations:</p>\r\n<div align=\"center\"><img
8
- src=\"project/images/p_265_BinaryCircles.gif\"></div>\r\n\r\n<p>For the first arrangement,
9
- the 3-digit subsequences, in clockwise order, are:<br> 000, 001, 010, 101, 011,
10
- 111, 110 and 100.</p>\r\n\r\n<p>Each circular arrangement can be encoded as a number
11
- by concatenating the binary digits starting with the subsequence of all zeros as
12
- the most significant bits and proceeding clockwise. The two arrangements for N=3
13
- are thus represented as 23 and 29:\r\n</p>\n<div align=\"center\">00010111 <sub>2</sub>
14
- = 23</div>\r\n<div align=\"center\">00011101 <sub>2</sub> = 29</div>\r\n\r\n<p>Calling
15
- S(N) the sum of the unique numeric representations, we can see that S(3) = 23 +
16
- 29 = 52.</p>\r\n\r\n<p>Find S(5).</p>\r\n\r\n"
5
+ :content: "2<sup>N</sup> binary digits can be placed in a circle so that all the N-digit
6
+ clockwise subsequences are distinct.\n\nFor N=3, two such circular arrangements
7
+ are possible, ignoring rotations:\n\n ![](/home/will/src/euler-manager/config/../data/images/p_265_BinaryCircles.gif)\n\nFor
8
+ the first arrangement, the 3-digit subsequences, in clockwise order, are: \n 000,
9
+ 001, 010, 101, 011, 111, 110 and 100.\n\nEach circular arrangement can be encoded
10
+ as a number by concatenating the binary digits starting with the subsequence of
11
+ all zeros as the most significant bits and proceeding clockwise. The two arrangements
12
+ for N=3 are thus represented as 23 and 29:\n\n00010111 <sub>2</sub> = 23\n\n00011101 <sub>2</sub>
13
+ = 29\n\nCalling S(N) the sum of the unique numeric representations, we can see that
14
+ S(3) = 23 + 29 = 52.\n\nFind S(5).\n\n"
@@ -2,9 +2,9 @@
2
2
  :id: 266
3
3
  :name: Pseudo Square Root
4
4
  :url: http://projecteuler.net/problem=266
5
- :content: "\r\n<p>\r\nThe divisors of 12 are: 1,2,3,4,6 and 12.<br>\r\nThe largest
6
- divisor of 12 that does not exceed the square root of 12 is 3.<br>\r\nWe shall call
7
- the largest divisor of an integer <var>n</var> that does not exceed the square root
8
- of <var>n</var> the pseudo square root (PSR) of <var>n</var>.<br>\r\nIt can be seen
9
- that PSR(3102)=47.\r\n</p>\r\n<p>\r\nLet <var>p</var> be the product of the primes
10
- below 190.<br>\r\nFind PSR(<var>p</var>) mod 10<sup>16</sup>.\r\n</p>\r\n\r\n\r\n\r\n\r\n"
5
+ :content: "The divisors of 12 are: 1,2,3,4,6 and 12. \n\rThe largest divisor of 12
6
+ that does not exceed the square root of 12 is 3. \n\rWe shall call the largest
7
+ divisor of an integer <var>n</var> that does not exceed the square root of <var>n</var>
8
+ the pseudo square root (PSR) of <var>n</var>. \n\rIt can be seen that PSR(3102)=47.\n\nLet
9
+ <var>p</var> be the product of the primes below 190. \n\rFind PSR(<var>p</var>)
10
+ mod 10<sup>16</sup>.\n\n"
@@ -2,13 +2,16 @@
2
2
  :id: 267
3
3
  :name: Billionaire
4
4
  :url: http://projecteuler.net/problem=267
5
- :content: "\r\n<p>You are given a unique investment opportunity.</p>\r\n<p>Starting
6
- with £1 of capital, you can choose a fixed proportion, <var>f</var>, of your capital
7
- to bet on a fair coin toss repeatedly for 1000 tosses.</p>\r\n<p>Your return is
8
- double your bet for heads and you lose your bet for tails.</p>\r\n<p>For example,
9
- if <var>f</var> = 1/4, for the first toss you bet £0.25, and if heads comes up
10
- you win £0.5 and so then have £1.5. You then bet £0.375 and if the second toss is
11
- tails, you have £1.125.</p>\r\n<p>Choosing <var>f</var> to maximize your chances
12
- of having at least £1,000,000,000 after 1,000 flips, what is the chance that you
13
- become a billionaire?</p>\r\n<p>All computations are assumed to be exact (no rounding),
14
- but give your answer rounded to 12 digits behind the decimal point in the form 0.abcdefghijkl.</p>\r\n\r\n"
5
+ :content: |+
6
+ You are given a unique investment opportunity.
7
+
8
+ Starting with £1 of capital, you can choose a fixed proportion, <var>f</var>, of your capital to bet on a fair coin toss repeatedly for 1000 tosses.
9
+
10
+ Your return is double your bet for heads and you lose your bet for tails.
11
+
12
+ For example, if <var>f</var> = 1/4, for the first toss you bet £0.25, and if heads comes up you win £0.5 and so then have £1.5. You then bet £0.375 and if the second toss is tails, you have £1.125.
13
+
14
+ Choosing <var>f</var> to maximize your chances of having at least £1,000,000,000 after 1,000 flips, what is the chance that you become a billionaire?
15
+
16
+ All computations are assumed to be exact (no rounding), but give your answer rounded to 12 digits behind the decimal point in the form 0.abcdefghijkl.
17
+
@@ -2,7 +2,8 @@
2
2
  :id: 268
3
3
  :name: Counting numbers with at least four distinct prime factors less than 100
4
4
  :url: http://projecteuler.net/problem=268
5
- :content: "\r\n<p>It can be verified that there are 23 positive integers less than
6
- 1000 that are divisible by at least four distinct primes less than 100.</p>\r\n\r\n<p>Find
7
- how many positive integers less than 10<sup>16</sup> are divisible by at least four
8
- distinct primes less than 100.</p>\r\n\r\n\r\n"
5
+ :content: |+
6
+ It can be verified that there are 23 positive integers less than 1000 that are divisible by at least four distinct primes less than 100.
7
+
8
+ Find how many positive integers less than 10<sup>16</sup> are divisible by at least four distinct primes less than 100.
9
+
@@ -2,14 +2,13 @@
2
2
  :id: 269
3
3
  :name: Polynomials with at least one integer root
4
4
  :url: http://projecteuler.net/problem=269
5
- :content: "\r\n<p>A root or zero of a polynomial P(<var>x</var>) is a solution to
6
- the equation P(<var>x</var>) = 0. <br>\r\nDefine P<sub><var>n</var></sub> as the
7
- polynomial whose coefficients are the digits of <var>n</var>.<br>\r\nFor example,
8
- P<sub>5703</sub>(<var>x</var>) = 5<var>x</var><sup>3</sup> + 7<var>x</var><sup>2</sup>
9
- + 3.</p>\r\n\r\n<p>We can see that:</p>\n<ul>\n<li>P<sub><var>n</var></sub>(0) is
10
- the last digit of <var>n</var>,</li>\r\n<li>P<sub><var>n</var></sub>(1) is the sum
11
- of the digits of <var>n</var>,</li>\r\n<li>P<sub><var>n</var></sub>(10) is <var>n</var>
12
- itself.</li>\n</ul>\n<p>Define Z(<var>k</var>) as the number of positive integers,
13
- <var>n</var>, not exceeding <var>k</var> for which the polynomial P<sub><var>n</var></sub>
14
- has at least one integer root.</p>\r\n\r\n<p>It can be verified that Z(100 000)
15
- is 14696.</p>\r\n\r\n<p>What is Z(10<sup>16</sup>)?</p>\r\n\r\n"
5
+ :content: "A root or zero of a polynomial P(<var>x</var>) is a solution to the equation
6
+ P(<var>x</var>) = 0. \n\rDefine P<sub><var>n</var></sub> as the polynomial whose
7
+ coefficients are the digits of <var>n</var>. \n\rFor example, P<sub>5703</sub>(<var>x</var>)
8
+ = 5<var>x</var><sup>3</sup> + 7<var>x</var><sup>2</sup> + 3.\n\nWe can see that:\n\n-
9
+ P<sub><var>n</var></sub>(0) is the last digit of <var>n</var>,\n- P<sub><var>n</var></sub>(1)
10
+ is the sum of the digits of <var>n</var>,\n- P<sub><var>n</var></sub>(10) is <var>n</var>
11
+ itself.\n\nDefine Z(<var>k</var>) as the number of positive integers, <var>n</var>,
12
+ not exceeding <var>k</var> for which the polynomial P<sub><var>n</var></sub> has
13
+ at least one integer root.\n\nIt can be verified that Z(100 000) is 14696.\n\nWhat
14
+ is Z(10<sup>16</sup>)?\n\n"
data/data/problems/27.yml CHANGED
@@ -2,24 +2,18 @@
2
2
  :id: 27
3
3
  :name: Quadratic primes
4
4
  :url: http://projecteuler.net/problem=27
5
- :content: "\r\n<p>Euler discovered the remarkable quadratic formula:</p>\r\n<p style=\"text-align:center;\"><i>n</i>²
6
- + <i>n</i> + 41</p>\r\n<p>It turns out that the formula will produce 40 primes for
7
- the consecutive values <i>n</i> = 0 to 39. However, when <i>n</i> = 40, 40<sup>2</sup>
8
- + 40 + 41 = 40(40 + 1) + 41 is divisible by 41, and certainly when <i>n</i> = 41,
9
- 41² + 41 + 41 is clearly divisible by 41.</p>\r\n<p>The incredible formula  <i>n</i>²
10
- <img src=\"images/symbol_minus.gif\" width=\"9\" height=\"3\" alt=\"−\" border=\"0\"
11
- style=\"vertical-align:middle;\"> 79<i>n</i> + 1601 was discovered, which produces
12
- 80 primes for the consecutive values <i>n</i> = 0 to 79. The product of the coefficients,
13
- <img src=\"images/symbol_minus.gif\" width=\"9\" height=\"3\" alt=\"−\" border=\"0\"
14
- style=\"vertical-align:middle;\">79 and 1601, is <img src=\"images/symbol_minus.gif\"
15
- width=\"9\" height=\"3\" alt=\"−\" border=\"0\" style=\"vertical-align:middle;\">126479.</p>\r\n<p>Considering
16
- quadratics of the form:</p>\r\n<blockquote>\r\n<i>n</i>² + <i>an</i> + <i>b</i>,
17
- where |<i>a</i>| <img src=\"images/symbol_lt.gif\" width=\"10\" height=\"10\" alt=\"&lt;\"
18
- border=\"0\" style=\"vertical-align:middle;\"> 1000 and |<i>b</i>| <img src=\"images/symbol_lt.gif\"
19
- width=\"10\" height=\"10\" alt=\"&lt;\" border=\"0\" style=\"vertical-align:middle;\">
20
- 1000<br><br><div class=\"info\" style=\"text-align:left;\">where |<i>n</i>| is the
21
- modulus/absolute value of <i>n</i><br>e.g. |11| = 11 and |<img src=\"images/symbol_minus.gif\"
22
- width=\"9\" height=\"3\" alt=\"−\" border=\"0\" style=\"vertical-align:middle;\">4|
23
- = 4</div>\r\n</blockquote>\r\n<p>Find the product of the coefficients, <i>a</i>
24
- and <i>b</i>, for the quadratic expression that produces the maximum number of primes
25
- for consecutive values of <i>n</i>, starting with <i>n</i> = 0.</p>\r\n\r\n"
5
+ :content: "Euler discovered the remarkable quadratic formula:\n\n_n_² + _n_ + 41\n\nIt
6
+ turns out that the formula will produce 40 primes for the consecutive values _n_
7
+ = 0 to 39. However, when _n_ = 40, 40<sup>2</sup> + 40 + 41 = 40(40 + 1) + 41 is
8
+ divisible by 41, and certainly when _n_ = 41, 41² + 41 + 41 is clearly divisible
9
+ by 41.\n\nThe incredible formula  _n_² ![−](/home/will/src/euler-manager/config/../data/images/symbol_minus.gif)
10
+ 79_n_ + 1601 was discovered, which produces 80 primes for the consecutive values
11
+ _n_ = 0 to 79. The product of the coefficients, ![−](/home/will/src/euler-manager/config/../data/images/symbol_minus.gif)79
12
+ and 1601, is ![−](/home/will/src/euler-manager/config/../data/images/symbol_minus.gif)126479.\n\nConsidering
13
+ quadratics of the form:\n\n> _n_² + _an_ + _b_, where |_a_| ![<](/home/will/src/euler-manager/config/../data/images/symbol_lt.gif)
14
+ 1000 and |_b_| ![<](/home/will/src/euler-manager/config/../data/images/symbol_lt.gif)
15
+ 1000 \n> \n> \n> where |_n_| is the modulus/absolute value of _n_ \n> e.g. |11|
16
+ = 11 and | ![−](/home/will/src/euler-manager/config/../data/images/symbol_minus.gif)4|
17
+ = 4\n\nFind the product of the coefficients, _a_ and _b_, for the quadratic expression
18
+ that produces the maximum number of primes for consecutive values of _n_, starting
19
+ with _n_ = 0.\n\n"
@@ -2,16 +2,16 @@
2
2
  :id: 270
3
3
  :name: Cutting Squares
4
4
  :url: http://projecteuler.net/problem=270
5
- :content: "\r\n<p>A square piece of paper with integer dimensions N<img src=\"images/symbol_times.gif\"
6
- width=\"9\" height=\"9\" alt=\"×\" border=\"0\" style=\"vertical-align:middle;\">N
7
- is placed with a corner at the origin and two of its sides along the <var>x</var>-
8
- and <var>y</var>-axes. Then, we cut it up respecting the following rules:\r\n</p>\n<ul>\n<li>We
9
- only make straight cuts between two points lying on different sides of the square,
10
- and having integer coordinates.</li>\r\n<li>Two cuts cannot cross, but several cuts
11
- can meet at the same border point.</li>\r\n<li>Proceed until no more legal cuts
12
- can be made.</li>\r\n</ul>\n<p>Counting any reflections or rotations as distinct,
13
- we call C(N) the number of ways to cut an N<img src=\"images/symbol_times.gif\"
14
- width=\"9\" height=\"9\" alt=\"×\" border=\"0\" style=\"vertical-align:middle;\">N
15
- square. For example, C(1) = 2 and C(2) = 30 (shown below).</p>\r\n<div align=\"center\"><img
16
- src=\"project/images/p_270_CutSquare.gif\"></div>\r\n\r\n<p>What is C(30) mod 10<sup>8</sup>
17
- ?</p>\r\n"
5
+ :content: |+
6
+ A square piece of paper with integer dimensions N ![×](/home/will/src/euler-manager/config/../data/images/symbol_times.gif)N is placed with a corner at the origin and two of its sides along the <var>x</var>- and <var>y</var>-axes. Then, we cut it up respecting the following rules:
7
+
8
+ - We only make straight cuts between two points lying on different sides of the square, and having integer coordinates.
9
+ - Two cuts cannot cross, but several cuts can meet at the same border point.
10
+ - Proceed until no more legal cuts can be made.
11
+
12
+ Counting any reflections or rotations as distinct, we call C(N) the number of ways to cut an N ![×](/home/will/src/euler-manager/config/../data/images/symbol_times.gif)N square. For example, C(1) = 2 and C(2) = 30 (shown below).
13
+
14
+ ![](/home/will/src/euler-manager/config/../data/images/p_270_CutSquare.gif)
15
+
16
+ What is C(30) mod 10<sup>8</sup> ?
17
+
@@ -2,12 +2,10 @@
2
2
  :id: 271
3
3
  :name: Modular Cubes, part 1
4
4
  :url: http://projecteuler.net/problem=271
5
- :content: "\r\n<p>\r\nFor a positive number <var>n</var>, define S(<var>n</var>) as
6
- the sum of the integers <var>x,</var> for which 1<img src=\"images/symbol_lt.gif\"
7
- width=\"10\" height=\"10\" alt=\"&lt;\" border=\"0\" style=\"vertical-align:middle;\"><var>x</var><img
8
- src=\"images/symbol_lt.gif\" width=\"10\" height=\"10\" alt=\"&lt;\" border=\"0\"
9
- style=\"vertical-align:middle;\"><var>n</var> and<br><var>x</var><sup>3</sup><img
10
- src=\"images/symbol_cong.gif\" width=\"9\" height=\"11\" alt=\"≡\" border=\"0\"
11
- style=\"vertical-align:middle;\">1 mod <var>n</var>.\r\n</p>\r\n<p>\r\nWhen <var>n</var>=91,
12
- there are 8 possible values for <var>x</var>, namely : 9, 16, 22, 29, 53, 74, 79,
13
- 81.<br>\r\nThus, S(91)=9+16+22+29+53+74+79+81=363.</p>\r\n<p>\r\nFind S(13082761331670030).\r\n</p>\r\n\r\n"
5
+ :content: "For a positive number <var>n</var>, define S(<var>n</var>) as the sum of
6
+ the integers <var>x,</var> for which 1 ![<](/home/will/src/euler-manager/config/../data/images/symbol_lt.gif)<var>x</var>
7
+ ![<](/home/will/src/euler-manager/config/../data/images/symbol_lt.gif)<var>n</var>
8
+ and \n <var>x</var><sup>3</sup> ![≡](/home/will/src/euler-manager/config/../data/images/symbol_cong.gif)1
9
+ mod <var>n</var>.\n\nWhen <var>n</var>=91, there are 8 possible values for <var>x</var>,
10
+ namely : 9, 16, 22, 29, 53, 74, 79, 81. \n\rThus, S(91)=9+16+22+29+53+74+79+81=363.\n\nFind
11
+ S(13082761331670030).\n\n"
@@ -2,14 +2,11 @@
2
2
  :id: 272
3
3
  :name: Modular Cubes, part 2
4
4
  :url: http://projecteuler.net/problem=272
5
- :content: "\r\n<p>\r\nFor a positive number <var>n</var>, define C(<var>n</var>) as
6
- the number of the integers <var>x,</var> for which 1<img src=\"images/symbol_lt.gif\"
7
- width=\"10\" height=\"10\" alt=\"&lt;\" border=\"0\" style=\"vertical-align:middle;\"><var>x</var><img
8
- src=\"images/symbol_lt.gif\" width=\"10\" height=\"10\" alt=\"&lt;\" border=\"0\"
9
- style=\"vertical-align:middle;\"><var>n</var> and<br><var>x</var><sup>3</sup><img
10
- src=\"images/symbol_cong.gif\" width=\"9\" height=\"11\" alt=\"≡\" border=\"0\"
11
- style=\"vertical-align:middle;\">1 mod <var>n</var>.\r\n</p>\r\n<p>\r\nWhen <var>n</var>=91,
12
- there are 8 possible values for <var>x</var>, namely : 9, 16, 22, 29, 53, 74, 79,
13
- 81.<br>\r\nThus, C(91)=8.</p>\r\n<p>\r\nFind the sum of the positive numbers <var>n</var><img
14
- src=\"images/symbol_le.gif\" width=\"10\" height=\"12\" alt=\"≤\" border=\"0\" style=\"vertical-align:middle;\">10<sup>11</sup>
15
- for which C(<var>n</var>)=242.\r\n</p>"
5
+ :content: "For a positive number <var>n</var>, define C(<var>n</var>) as the number
6
+ of the integers <var>x,</var> for which 1 ![<](/home/will/src/euler-manager/config/../data/images/symbol_lt.gif)<var>x</var>
7
+ ![<](/home/will/src/euler-manager/config/../data/images/symbol_lt.gif)<var>n</var>
8
+ and \n <var>x</var><sup>3</sup> ![≡](/home/will/src/euler-manager/config/../data/images/symbol_cong.gif)1
9
+ mod <var>n</var>.\n\nWhen <var>n</var>=91, there are 8 possible values for <var>x</var>,
10
+ namely : 9, 16, 22, 29, 53, 74, 79, 81. \n\rThus, C(91)=8.\n\nFind the sum of the
11
+ positive numbers <var>n</var> ![≤](/home/will/src/euler-manager/config/../data/images/symbol_le.gif)10<sup>11</sup>
12
+ for which C(<var>n</var>)=242.\n\n"
@@ -2,20 +2,16 @@
2
2
  :id: 273
3
3
  :name: Sum of Squares
4
4
  :url: http://projecteuler.net/problem=273
5
- :content: "\r\n<p>Consider equations of the form: <var>a</var><sup>2</sup> + <var>b</var><sup>2</sup>
6
- = <var>N</var>, 0 <img src=\"images/symbol_le.gif\" width=\"10\" height=\"12\" alt=\"≤\"
7
- border=\"0\" style=\"vertical-align:middle;\"><var>a</var> <img src=\"images/symbol_le.gif\"
8
- width=\"10\" height=\"12\" alt=\"≤\" border=\"0\" style=\"vertical-align:middle;\"><var>b</var>,
9
- <var>a</var>, <var>b</var> and <var>N</var> integer.</p>\r\n\r\n<p>For <var>N</var>=65
10
- there are two solutions:</p>\r\n<p><var>a</var>=1, <var>b</var>=8 and <var>a</var>=4,
11
- <var>b</var>=7.</p>\r\n<p>We call S(<var>N</var>) the sum of the values of <var>a</var>
12
- of all solutions of <var>a</var><sup>2</sup> + <var>b</var><sup>2</sup> = <var>N</var>,
13
- 0 <img src=\"images/symbol_le.gif\" width=\"10\" height=\"12\" alt=\"≤\" border=\"0\"
14
- style=\"vertical-align:middle;\"><var>a</var> <img src=\"images/symbol_le.gif\"
15
- width=\"10\" height=\"12\" alt=\"≤\" border=\"0\" style=\"vertical-align:middle;\"><var>b</var>,
16
- <var>a</var>, <var>b</var> and <var>N</var> integer.</p>\r\n<p>Thus S(65) = 1 +
17
- 4 = 5.</p>\r\n<p>Find <img src=\"images/symbol_sum.gif\" width=\"11\" height=\"14\"
18
- alt=\"∑\" border=\"0\" style=\"vertical-align:middle;\">S(<var>N</var>), for all
19
- squarefree <var>N</var> only divisible by primes of the form 4<var>k</var>+1 with
20
- 4<var>k</var>+1 <img src=\"images/symbol_lt.gif\" width=\"10\" height=\"10\" alt=\"&lt;\"
21
- border=\"0\" style=\"vertical-align:middle;\"> 150.</p>\r\n\r\n"
5
+ :content: |+
6
+ Consider equations of the form: <var>a</var><sup>2</sup> + <var>b</var><sup>2</sup> = <var>N</var>, 0 ![≤](/home/will/src/euler-manager/config/../data/images/symbol_le.gif) <var>a</var> ![≤](/home/will/src/euler-manager/config/../data/images/symbol_le.gif) <var>b</var>, <var>a</var>, <var>b</var> and <var>N</var> integer.
7
+
8
+ For <var>N</var>=65 there are two solutions:
9
+
10
+ <var>a</var>=1, <var>b</var>=8 and <var>a</var>=4, <var>b</var>=7.
11
+
12
+ We call S(<var>N</var>) the sum of the values of <var>a</var> of all solutions of <var>a</var><sup>2</sup> + <var>b</var><sup>2</sup> = <var>N</var>, 0 ![≤](/home/will/src/euler-manager/config/../data/images/symbol_le.gif) <var>a</var> ![≤](/home/will/src/euler-manager/config/../data/images/symbol_le.gif) <var>b</var>, <var>a</var>, <var>b</var> and <var>N</var> integer.
13
+
14
+ Thus S(65) = 1 + 4 = 5.
15
+
16
+ Find ![∑](/home/will/src/euler-manager/config/../data/images/symbol_sum.gif)S(<var>N</var>), for all squarefree <var>N</var> only divisible by primes of the form 4<var>k</var>+1 with 4<var>k</var>+1 ![<](/home/will/src/euler-manager/config/../data/images/symbol_lt.gif) 150.
17
+
@@ -2,22 +2,19 @@
2
2
  :id: 274
3
3
  :name: Divisibility Multipliers
4
4
  :url: http://projecteuler.net/problem=274
5
- :content: "\r\n<p>For each integer <var>p</var> <img src=\"images/symbol_gt.gif\"
6
- width=\"10\" height=\"10\" alt=\"&gt;\" border=\"0\" style=\"vertical-align:middle;\">
7
- 1 coprime to 10 there is a positive <em>divisibility multiplier</em> <var>m</var>
8
- <img src=\"images/symbol_lt.gif\" width=\"10\" height=\"10\" alt=\"&lt;\" border=\"0\"
9
- style=\"vertical-align:middle;\"><var>p</var> which preserves divisibility by <var>p</var>
10
- for the following function on any positive integer, <var>n</var>:</p>\r\n\r\n<p><var>f</var>(<var>n</var>)
11
- = (all but the last digit of <var>n</var>) + (the last digit of <var>n</var>) *
12
- <var>m</var></p>\r\n\r\n<p>That is, if <var>m</var> is the divisibility multiplier
13
- for <var>p</var>, then <var>f</var>(<var>n</var>) is divisible by <var>p</var> if
14
- and only if <var>n</var> is divisible by <var>p</var>.</p>\r\n\r\n<p>(When <var>n</var>
15
- is much larger than <var>p</var>, <var>f</var>(<var>n</var>) will be less than <var>n</var>
16
- and repeated application of <var>f</var> provides a multiplicative divisibility
17
- test for <var>p</var>.)</p>\r\n\r\n<p>For example, the divisibility multiplier for
18
- 113 is 34.</p>\r\n\r\n<p><var>f</var>(76275) = 7627 + 5 * 34 = 7797 : 76275 and
19
- 7797 are both divisible by 113<br><var>f</var>(12345) = 1234 + 5 * 34 = 1404 : 12345
20
- and 1404 are both not divisible by 113</p>\r\n\r\n<p>The sum of the divisibility
21
- multipliers for the primes that are coprime to 10 and less than 1000 is 39517. What
22
- is the sum of the divisibility multipliers for the primes that are coprime to 10
23
- and less than 10<sup>7</sup>?</p>\r\n\r\n"
5
+ :content: "For each integer <var>p</var> ![>](/home/will/src/euler-manager/config/../data/images/symbol_gt.gif)
6
+ 1 coprime to 10 there is a positive _divisibility multiplier_ <var>m</var> ![<](/home/will/src/euler-manager/config/../data/images/symbol_lt.gif)
7
+ <var>p</var> which preserves divisibility by <var>p</var> for the following function
8
+ on any positive integer, <var>n</var>:\n\n<var>f</var>(<var>n</var>) = (all but
9
+ the last digit of <var>n</var>) + (the last digit of <var>n</var>) \\* <var>m</var>\n\nThat
10
+ is, if <var>m</var> is the divisibility multiplier for <var>p</var>, then <var>f</var>(<var>n</var>)
11
+ is divisible by <var>p</var> if and only if <var>n</var> is divisible by <var>p</var>.\n\n(When
12
+ <var>n</var> is much larger than <var>p</var>, <var>f</var>(<var>n</var>) will be
13
+ less than <var>n</var> and repeated application of <var>f</var> provides a multiplicative
14
+ divisibility test for <var>p</var>.)\n\nFor example, the divisibility multiplier
15
+ for 113 is 34.\n\n<var>f</var>(76275) = 7627 + 5 \\* 34 = 7797 : 76275 and 7797
16
+ are both divisible by 113 \n<var>f</var>(12345) = 1234 + 5 \\* 34 = 1404 : 12345
17
+ and 1404 are both not divisible by 113\n\nThe sum of the divisibility multipliers
18
+ for the primes that are coprime to 10 and less than 1000 is 39517. What is the sum
19
+ of the divisibility multipliers for the primes that are coprime to 10 and less than
20
+ 10<sup>7</sup>?\n\n"