euler-manager 0.0.5 → 0.0.6

Sign up to get free protection for your applications and to get access to all the features.
Files changed (645) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +11 -1
  3. data/Rakefile +3 -0
  4. data/bin/euler +28 -9
  5. data/config/config.rb +1 -0
  6. data/data/answers.yml +430 -456
  7. data/data/images/blackdot.gif +0 -0
  8. data/data/images/bracket_left.gif +0 -0
  9. data/data/images/bracket_right.gif +0 -0
  10. data/data/images/p295_lenticular.gif +0 -0
  11. data/data/images/p296_bisector.gif +0 -0
  12. data/data/images/p303_formula100.gif +0 -0
  13. data/data/images/p303_formula10000.gif +0 -0
  14. data/data/images/p392_gridlines.png +0 -0
  15. data/data/images/p400_winning.png +0 -0
  16. data/data/images/p411_longpath.png +0 -0
  17. data/data/images/p412_table53.png +0 -0
  18. data/data/images/p412_tablenums.png +0 -0
  19. data/data/images/p422_hyperbola.gif +0 -0
  20. data/data/images/p428_necklace.png +0 -0
  21. data/data/images/p_015.gif +0 -0
  22. data/data/images/p_068_1.gif +0 -0
  23. data/data/images/p_068_2.gif +0 -0
  24. data/data/images/p_085.gif +0 -0
  25. data/data/images/p_086.gif +0 -0
  26. data/data/images/p_090.gif +0 -0
  27. data/data/images/p_091_1.gif +0 -0
  28. data/data/images/p_091_2.gif +0 -0
  29. data/data/images/p_107_1.gif +0 -0
  30. data/data/images/p_107_2.gif +0 -0
  31. data/data/images/p_109.gif +0 -0
  32. data/data/images/p_126.gif +0 -0
  33. data/data/images/p_128.gif +0 -0
  34. data/data/images/p_138.gif +0 -0
  35. data/data/images/p_139.gif +0 -0
  36. data/data/images/p_143_torricelli.gif +0 -0
  37. data/data/images/p_144_1.gif +0 -0
  38. data/data/images/p_144_2.gif +0 -0
  39. data/data/images/p_147.gif +0 -0
  40. data/data/images/p_150.gif +0 -0
  41. data/data/images/p_151.gif +0 -0
  42. data/data/images/p_152_sum.gif +0 -0
  43. data/data/images/p_153_formule1.gif +0 -0
  44. data/data/images/p_153_formule2.gif +0 -0
  45. data/data/images/p_153_formule5.gif +0 -0
  46. data/data/images/p_153_formule6.gif +0 -0
  47. data/data/images/p_154_pyramid.gif +0 -0
  48. data/data/images/p_155_capacitors1.gif +0 -0
  49. data/data/images/p_155_capsform.gif +0 -0
  50. data/data/images/p_155_capsmu.gif +0 -0
  51. data/data/images/p_161_k9.gif +0 -0
  52. data/data/images/p_161_trio1.gif +0 -0
  53. data/data/images/p_161_trio3.gif +0 -0
  54. data/data/images/p_163.gif +0 -0
  55. data/data/images/p_173_square_laminas.gif +0 -0
  56. data/data/images/p_177_quad.gif +0 -0
  57. data/data/images/p_184.gif +0 -0
  58. data/data/images/p_189_colours.gif +0 -0
  59. data/data/images/p_189_grid.gif +0 -0
  60. data/data/images/p_194_Fig.png +0 -0
  61. data/data/images/p_194_GraphA.png +0 -0
  62. data/data/images/p_194_GraphB.png +0 -0
  63. data/data/images/p_199_circles_in_circles.gif +0 -0
  64. data/data/images/p_201_laserbeam.gif +0 -0
  65. data/data/images/p_208_robotwalk.gif +0 -0
  66. data/data/images/p_215_crackfree.gif +0 -0
  67. data/data/images/p_220.gif +0 -0
  68. data/data/images/p_226_formula.gif +0 -0
  69. data/data/images/p_226_scoop2.gif +0 -0
  70. data/data/images/p_228.png +0 -0
  71. data/data/images/p_237.gif +0 -0
  72. data/data/images/p_244_example.gif +0 -0
  73. data/data/images/p_244_start.gif +0 -0
  74. data/data/images/p_244_target.gif +0 -0
  75. data/data/images/p_246_anim.gif +0 -0
  76. data/data/images/p_246_ellipse.gif +0 -0
  77. data/data/images/p_247_hypersquares.gif +0 -0
  78. data/data/images/p_251_cardano.gif +0 -0
  79. data/data/images/p_252_convexhole.gif +0 -0
  80. data/data/images/p_255_Example.gif +0 -0
  81. data/data/images/p_255_Heron.gif +0 -0
  82. data/data/images/p_256_tatami3.gif +0 -0
  83. data/data/images/p_257_bisector.gif +0 -0
  84. data/data/images/p_262_formula1.gif +0 -0
  85. data/data/images/p_264_TriangleCentres.gif +0 -0
  86. data/data/images/p_265_BinaryCircles.gif +0 -0
  87. data/data/images/p_270_CutSquare.gif +0 -0
  88. data/data/images/p_275_sculptures2.gif +0 -0
  89. data/data/images/p_281_pizza.gif +0 -0
  90. data/data/images/p_282_formula.gif +0 -0
  91. data/data/images/p_282formula3.gif +0 -0
  92. data/data/images/p_287_quadtree.gif +0 -0
  93. data/data/images/p_289_euler.gif +0 -0
  94. data/data/images/p_291_formula.gif +0 -0
  95. data/data/images/p_299_ThreeSimTri.gif +0 -0
  96. data/data/images/p_300_protein.gif +0 -0
  97. data/data/images/p_306_pstrip.gif +0 -0
  98. data/data/images/p_309_ladders.gif +0 -0
  99. data/data/images/p_311_biclinic.gif +0 -0
  100. data/data/images/p_312_sierpinsky8t.gif +0 -0
  101. data/data/images/p_312_sierpinskyAt.gif +0 -0
  102. data/data/images/p_313_sliding_game_1.gif +0 -0
  103. data/data/images/p_313_sliding_game_2.gif +0 -0
  104. data/data/images/p_314_landgrab.gif +0 -0
  105. data/data/images/p_315_clocks.gif +0 -0
  106. data/data/images/p_316_decexp1.gif +0 -0
  107. data/data/images/p_316_decexp2.gif +0 -0
  108. data/data/images/p_316_decexp3.gif +0 -0
  109. data/data/images/p_321_swapping_counters_1.gif +0 -0
  110. data/data/images/p_321_swapping_counters_2.gif +0 -0
  111. data/data/images/p_326_formula1.gif +0 -0
  112. data/data/images/p_326_formula2.gif +0 -0
  113. data/data/images/p_327_rooms_of_doom.gif +0 -0
  114. data/data/images/p_328_sum1.gif +0 -0
  115. data/data/images/p_328_sum2.gif +0 -0
  116. data/data/images/p_330_formula.gif +0 -0
  117. data/data/images/p_331_crossflips1.gif +0 -0
  118. data/data/images/p_331_crossflips2.gif +0 -0
  119. data/data/images/p_331_crossflips3.gif +0 -0
  120. data/data/images/p_332_spherical.jpg +0 -0
  121. data/data/images/p_332_sum.gif +0 -0
  122. data/data/images/p_334_beans.gif +0 -0
  123. data/data/images/p_334_cases.gif +0 -0
  124. data/data/images/p_334_lfloor.gif +0 -0
  125. data/data/images/p_334_oplus.gif +0 -0
  126. data/data/images/p_334_rfloor.gif +0 -0
  127. data/data/images/p_335_mancala.gif +0 -0
  128. data/data/images/p_335_sum.gif +0 -0
  129. data/data/images/p_336_maximix.gif +0 -0
  130. data/data/images/p_338_gridpaper.gif +0 -0
  131. data/data/images/p_340_formula.gif +0 -0
  132. data/data/images/p_344_silverdollar.gif +0 -0
  133. data/data/images/p_351_hexorchard.png +0 -0
  134. data/data/images/p_354_bee_honeycomb.png +0 -0
  135. data/data/images/p_356_cubicpoly1.gif +0 -0
  136. data/data/images/p_356_cubicpoly2.gif +0 -0
  137. data/data/images/p_361_Thue-Morse1.gif +0 -0
  138. data/data/images/p_364_comf_dist.gif +0 -0
  139. data/data/images/p_372_pencilray1.jpg +0 -0
  140. data/data/images/p_372_pencilray2.gif +0 -0
  141. data/data/images/p_380_mazes.gif +0 -0
  142. data/data/images/p_384_formula.gif +0 -0
  143. data/data/images/p_385_ellipsetriangle.png +0 -0
  144. data/data/images/p_394_eatpie.gif +0 -0
  145. data/data/images/p_395_pythagorean.gif +0 -0
  146. data/data/images/p_404_c_ellipse.gif +0 -0
  147. data/data/images/p_405_tile1.png +0 -0
  148. data/data/images/p_405_tile2.gif +0 -0
  149. data/data/images/p_420_matrix.gif +0 -0
  150. data/data/images/p_424_kakuro1.gif +0 -0
  151. data/data/images/p_426_baxball1.gif +0 -0
  152. data/data/images/p_426_baxball2.gif +0 -0
  153. data/data/images/p_430_flips.gif +0 -0
  154. data/data/images/sod_13.gif +115 -0
  155. data/data/images/spacer.gif +0 -0
  156. data/data/images/symbol_asymp.gif +0 -0
  157. data/data/images/symbol_cong.gif +0 -0
  158. data/data/images/symbol_ge.gif +0 -0
  159. data/data/images/symbol_gt.gif +0 -0
  160. data/data/images/symbol_implies.gif +0 -0
  161. data/data/images/symbol_lceil.gif +0 -0
  162. data/data/images/symbol_le.gif +0 -0
  163. data/data/images/symbol_lfloor.gif +0 -0
  164. data/data/images/symbol_lt.gif +0 -0
  165. data/data/images/symbol_maps.gif +0 -0
  166. data/data/images/symbol_minus.gif +0 -0
  167. data/data/images/symbol_ne.gif +0 -0
  168. data/data/images/symbol_plusmn.gif +0 -0
  169. data/data/images/symbol_radic.gif +0 -0
  170. data/data/images/symbol_rceil.gif +0 -0
  171. data/data/images/symbol_rfloor.gif +0 -0
  172. data/data/images/symbol_sum.gif +0 -0
  173. data/data/images/symbol_times.gif +0 -0
  174. data/data/problems/1.yml +5 -3
  175. data/data/problems/10.yml +3 -4
  176. data/data/problems/100.yml +7 -9
  177. data/data/problems/101.yml +32 -45
  178. data/data/problems/102.yml +11 -12
  179. data/data/problems/103.yml +18 -22
  180. data/data/problems/104.yml +9 -11
  181. data/data/problems/105.yml +12 -17
  182. data/data/problems/106.yml +14 -15
  183. data/data/problems/107.yml +16 -16
  184. data/data/problems/108.yml +17 -28
  185. data/data/problems/109.yml +27 -29
  186. data/data/problems/11.yml +24 -29
  187. data/data/problems/110.yml +11 -15
  188. data/data/problems/111.yml +27 -17
  189. data/data/problems/112.yml +13 -11
  190. data/data/problems/113.yml +11 -9
  191. data/data/problems/114.yml +46 -100
  192. data/data/problems/115.yml +15 -12
  193. data/data/problems/116.yml +33 -72
  194. data/data/problems/117.yml +36 -78
  195. data/data/problems/118.yml +5 -5
  196. data/data/problems/119.yml +9 -7
  197. data/data/problems/12.yml +8 -9
  198. data/data/problems/120.yml +7 -13
  199. data/data/problems/121.yml +9 -11
  200. data/data/problems/122.yml +21 -38
  201. data/data/problems/123.yml +9 -9
  202. data/data/problems/124.yml +24 -54
  203. data/data/problems/125.yml +7 -8
  204. data/data/problems/126.yml +12 -13
  205. data/data/problems/127.yml +21 -27
  206. data/data/problems/128.yml +19 -14
  207. data/data/problems/129.yml +9 -8
  208. data/data/problems/13.yml +52 -2
  209. data/data/problems/130.yml +12 -15
  210. data/data/problems/131.yml +9 -8
  211. data/data/problems/132.yml +7 -8
  212. data/data/problems/133.yml +9 -9
  213. data/data/problems/134.yml +7 -15
  214. data/data/problems/135.yml +9 -16
  215. data/data/problems/136.yml +9 -13
  216. data/data/problems/137.yml +22 -32
  217. data/data/problems/138.yml +11 -16
  218. data/data/problems/139.yml +11 -11
  219. data/data/problems/14.yml +14 -24
  220. data/data/problems/140.yml +18 -25
  221. data/data/problems/141.yml +10 -11
  222. data/data/problems/142.yml +3 -10
  223. data/data/problems/143.yml +13 -16
  224. data/data/problems/144.yml +23 -26
  225. data/data/problems/145.yml +7 -7
  226. data/data/problems/146.yml +6 -6
  227. data/data/problems/147.yml +7 -8
  228. data/data/problems/148.yml +15 -7
  229. data/data/problems/149.yml +26 -35
  230. data/data/problems/15.yml +7 -7
  231. data/data/problems/150.yml +18 -29
  232. data/data/problems/151.yml +17 -15
  233. data/data/problems/152.yml +11 -8
  234. data/data/problems/153.yml +38 -53
  235. data/data/problems/154.yml +10 -12
  236. data/data/problems/155.yml +12 -15
  237. data/data/problems/156.yml +20 -22
  238. data/data/problems/157.yml +26 -28
  239. data/data/problems/158.yml +13 -14
  240. data/data/problems/159.yml +15 -25
  241. data/data/problems/16.yml +5 -2
  242. data/data/problems/160.yml +3 -4
  243. data/data/problems/161.yml +6 -10
  244. data/data/problems/162.yml +10 -11
  245. data/data/problems/163.yml +13 -15
  246. data/data/problems/164.yml +3 -3
  247. data/data/problems/165.yml +25 -28
  248. data/data/problems/166.yml +7 -11
  249. data/data/problems/167.yml +10 -12
  250. data/data/problems/168.yml +7 -9
  251. data/data/problems/169.yml +4 -5
  252. data/data/problems/17.yml +7 -7
  253. data/data/problems/170.yml +7 -10
  254. data/data/problems/171.yml +7 -9
  255. data/data/problems/172.yml +3 -2
  256. data/data/problems/173.yml +9 -7
  257. data/data/problems/174.yml +13 -15
  258. data/data/problems/175.yml +13 -15
  259. data/data/problems/176.yml +5 -5
  260. data/data/problems/177.yml +13 -12
  261. data/data/problems/178.yml +5 -5
  262. data/data/problems/179.yml +3 -6
  263. data/data/problems/18.yml +13 -17
  264. data/data/problems/180.yml +20 -25
  265. data/data/problems/181.yml +7 -3
  266. data/data/problems/182.yml +22 -27
  267. data/data/problems/183.yml +17 -23
  268. data/data/problems/184.yml +11 -14
  269. data/data/problems/185.yml +17 -18
  270. data/data/problems/186.yml +16 -24
  271. data/data/problems/187.yml +9 -12
  272. data/data/problems/188.yml +5 -6
  273. data/data/problems/189.yml +5 -7
  274. data/data/problems/19.yml +7 -8
  275. data/data/problems/190.yml +7 -9
  276. data/data/problems/191.yml +9 -10
  277. data/data/problems/192.yml +14 -22
  278. data/data/problems/193.yml +5 -3
  279. data/data/problems/194.yml +11 -14
  280. data/data/problems/195.yml +7 -9
  281. data/data/problems/196.yml +13 -21
  282. data/data/problems/197.yml +7 -11
  283. data/data/problems/198.yml +13 -16
  284. data/data/problems/199.yml +10 -10
  285. data/data/problems/2.yml +6 -6
  286. data/data/problems/20.yml +10 -18
  287. data/data/problems/200.yml +8 -8
  288. data/data/problems/201.yml +14 -16
  289. data/data/problems/202.yml +11 -10
  290. data/data/problems/203.yml +11 -16
  291. data/data/problems/204.yml +7 -7
  292. data/data/problems/205.yml +6 -6
  293. data/data/problems/206.yml +2 -2
  294. data/data/problems/207.yml +13 -16
  295. data/data/problems/208.yml +8 -8
  296. data/data/problems/209.yml +11 -23
  297. data/data/problems/21.yml +8 -9
  298. data/data/problems/210.yml +6 -6
  299. data/data/problems/211.yml +7 -7
  300. data/data/problems/212.yml +26 -36
  301. data/data/problems/213.yml +6 -7
  302. data/data/problems/214.yml +10 -11
  303. data/data/problems/215.yml +11 -14
  304. data/data/problems/216.yml +7 -10
  305. data/data/problems/217.yml +14 -23
  306. data/data/problems/218.yml +9 -10
  307. data/data/problems/219.yml +10 -15
  308. data/data/problems/22.yml +7 -9
  309. data/data/problems/220.yml +15 -20
  310. data/data/problems/221.yml +10 -16
  311. data/data/problems/222.yml +5 -3
  312. data/data/problems/223.yml +6 -8
  313. data/data/problems/224.yml +6 -8
  314. data/data/problems/225.yml +6 -7
  315. data/data/problems/226.yml +9 -12
  316. data/data/problems/227.yml +9 -9
  317. data/data/problems/228.yml +14 -17
  318. data/data/problems/229.yml +17 -25
  319. data/data/problems/23.yml +11 -15
  320. data/data/problems/230.yml +15 -19
  321. data/data/problems/231.yml +8 -12
  322. data/data/problems/232.yml +9 -10
  323. data/data/problems/233.yml +7 -6
  324. data/data/problems/234.yml +14 -19
  325. data/data/problems/235.yml +4 -5
  326. data/data/problems/236.yml +20 -22
  327. data/data/problems/237.yml +14 -9
  328. data/data/problems/238.yml +21 -33
  329. data/data/problems/239.yml +5 -5
  330. data/data/problems/24.yml +7 -6
  331. data/data/problems/240.yml +7 -7
  332. data/data/problems/241.yml +9 -12
  333. data/data/problems/242.yml +7 -9
  334. data/data/problems/243.yml +14 -15
  335. data/data/problems/244.yml +19 -28
  336. data/data/problems/245.yml +22 -30
  337. data/data/problems/246.yml +10 -13
  338. data/data/problems/247.yml +14 -17
  339. data/data/problems/248.yml +5 -2
  340. data/data/problems/249.yml +3 -3
  341. data/data/problems/25.yml +12 -11
  342. data/data/problems/250.yml +3 -3
  343. data/data/problems/251.yml +11 -9
  344. data/data/problems/252.yml +24 -25
  345. data/data/problems/253.yml +19 -32
  346. data/data/problems/254.yml +13 -17
  347. data/data/problems/255.yml +40 -50
  348. data/data/problems/256.yml +31 -39
  349. data/data/problems/257.yml +10 -14
  350. data/data/problems/258.yml +7 -9
  351. data/data/problems/259.yml +14 -12
  352. data/data/problems/26.yml +17 -7
  353. data/data/problems/260.yml +21 -25
  354. data/data/problems/261.yml +13 -15
  355. data/data/problems/262.yml +15 -16
  356. data/data/problems/263.yml +13 -15
  357. data/data/problems/264.yml +15 -16
  358. data/data/problems/265.yml +10 -12
  359. data/data/problems/266.yml +6 -6
  360. data/data/problems/267.yml +13 -10
  361. data/data/problems/268.yml +5 -4
  362. data/data/problems/269.yml +10 -11
  363. data/data/problems/27.yml +15 -21
  364. data/data/problems/270.yml +13 -13
  365. data/data/problems/271.yml +7 -9
  366. data/data/problems/272.yml +8 -11
  367. data/data/problems/273.yml +13 -17
  368. data/data/problems/274.yml +16 -19
  369. data/data/problems/275.yml +13 -15
  370. data/data/problems/276.yml +5 -7
  371. data/data/problems/277.yml +17 -20
  372. data/data/problems/278.yml +20 -28
  373. data/data/problems/279.yml +4 -3
  374. data/data/problems/28.yml +6 -13
  375. data/data/problems/280.yml +9 -9
  376. data/data/problems/281.yml +10 -13
  377. data/data/problems/282.yml +9 -6
  378. data/data/problems/283.yml +8 -8
  379. data/data/problems/284.yml +15 -18
  380. data/data/problems/285.yml +11 -11
  381. data/data/problems/286.yml +7 -8
  382. data/data/problems/287.yml +22 -32
  383. data/data/problems/288.yml +10 -11
  384. data/data/problems/289.yml +14 -15
  385. data/data/problems/29.yml +13 -20
  386. data/data/problems/290.yml +3 -4
  387. data/data/problems/291.yml +3 -6
  388. data/data/problems/292.yml +8 -9
  389. data/data/problems/293.yml +9 -10
  390. data/data/problems/294.yml +6 -6
  391. data/data/problems/295.yml +16 -21
  392. data/data/problems/296.yml +9 -11
  393. data/data/problems/297.yml +12 -15
  394. data/data/problems/298.yml +29 -29
  395. data/data/problems/299.yml +15 -21
  396. data/data/problems/3.yml +3 -3
  397. data/data/problems/30.yml +7 -8
  398. data/data/problems/300.yml +15 -16
  399. data/data/problems/301.yml +15 -17
  400. data/data/problems/302.yml +13 -14
  401. data/data/problems/303.yml +9 -7
  402. data/data/problems/304.yml +10 -15
  403. data/data/problems/305.yml +6 -10
  404. data/data/problems/306.yml +20 -24
  405. data/data/problems/307.yml +7 -8
  406. data/data/problems/308.yml +19 -30
  407. data/data/problems/309.yml +11 -12
  408. data/data/problems/31.yml +11 -14
  409. data/data/problems/310.yml +10 -15
  410. data/data/problems/311.yml +11 -17
  411. data/data/problems/312.yml +10 -11
  412. data/data/problems/313.yml +13 -13
  413. data/data/problems/314.yml +23 -25
  414. data/data/problems/315.yml +39 -45
  415. data/data/problems/316.yml +13 -13
  416. data/data/problems/317.yml +6 -7
  417. data/data/problems/318.yml +35 -57
  418. data/data/problems/319.yml +15 -19
  419. data/data/problems/32.yml +9 -10
  420. data/data/problems/320.yml +9 -8
  421. data/data/problems/321.yml +8 -9
  422. data/data/problems/322.yml +6 -8
  423. data/data/problems/323.yml +12 -15
  424. data/data/problems/324.yml +10 -13
  425. data/data/problems/325.yml +15 -21
  426. data/data/problems/326.yml +15 -8
  427. data/data/problems/327.yml +19 -23
  428. data/data/problems/328.yml +28 -31
  429. data/data/problems/329.yml +12 -13
  430. data/data/problems/33.yml +9 -9
  431. data/data/problems/330.yml +17 -36
  432. data/data/problems/331.yml +16 -22
  433. data/data/problems/332.yml +9 -11
  434. data/data/problems/333.yml +17 -20
  435. data/data/problems/334.yml +22 -34
  436. data/data/problems/335.yml +11 -12
  437. data/data/problems/336.yml +18 -20
  438. data/data/problems/337.yml +9 -11
  439. data/data/problems/338.yml +27 -37
  440. data/data/problems/339.yml +9 -9
  441. data/data/problems/34.yml +7 -3
  442. data/data/problems/340.yml +8 -10
  443. data/data/problems/341.yml +12 -14
  444. data/data/problems/342.yml +9 -13
  445. data/data/problems/343.yml +18 -25
  446. data/data/problems/344.yml +16 -17
  447. data/data/problems/345.yml +17 -22
  448. data/data/problems/346.yml +7 -7
  449. data/data/problems/347.yml +9 -12
  450. data/data/problems/348.yml +7 -8
  451. data/data/problems/349.yml +8 -9
  452. data/data/problems/35.yml +7 -4
  453. data/data/problems/350.yml +12 -14
  454. data/data/problems/351.yml +8 -9
  455. data/data/problems/352.yml +38 -42
  456. data/data/problems/353.yml +17 -21
  457. data/data/problems/354.yml +11 -13
  458. data/data/problems/355.yml +4 -4
  459. data/data/problems/356.yml +6 -6
  460. data/data/problems/357.yml +5 -5
  461. data/data/problems/358.yml +16 -25
  462. data/data/problems/359.yml +19 -22
  463. data/data/problems/36.yml +7 -4
  464. data/data/problems/360.yml +8 -8
  465. data/data/problems/361.yml +14 -15
  466. data/data/problems/362.yml +16 -28
  467. data/data/problems/363.yml +22 -23
  468. data/data/problems/364.yml +9 -11
  469. data/data/problems/365.yml +7 -13
  470. data/data/problems/366.yml +19 -22
  471. data/data/problems/367.yml +14 -15
  472. data/data/problems/368.yml +18 -35
  473. data/data/problems/369.yml +7 -11
  474. data/data/problems/37.yml +7 -6
  475. data/data/problems/370.yml +10 -13
  476. data/data/problems/371.yml +8 -9
  477. data/data/problems/372.yml +9 -12
  478. data/data/problems/373.yml +5 -6
  479. data/data/problems/374.yml +17 -21
  480. data/data/problems/375.yml +13 -17
  481. data/data/problems/376.yml +19 -21
  482. data/data/problems/377.yml +6 -7
  483. data/data/problems/378.yml +8 -11
  484. data/data/problems/379.yml +9 -11
  485. data/data/problems/38.yml +9 -13
  486. data/data/problems/380.yml +14 -17
  487. data/data/problems/381.yml +12 -18
  488. data/data/problems/382.yml +16 -19
  489. data/data/problems/383.yml +7 -9
  490. data/data/problems/384.yml +20 -24
  491. data/data/problems/385.yml +12 -16
  492. data/data/problems/386.yml +9 -11
  493. data/data/problems/387.yml +14 -15
  494. data/data/problems/388.yml +6 -8
  495. data/data/problems/389.yml +8 -8
  496. data/data/problems/39.yml +7 -6
  497. data/data/problems/390.yml +9 -14
  498. data/data/problems/391.yml +21 -25
  499. data/data/problems/392.yml +16 -17
  500. data/data/problems/393.yml +5 -6
  501. data/data/problems/394.yml +15 -18
  502. data/data/problems/395.yml +12 -13
  503. data/data/problems/396.yml +17 -22
  504. data/data/problems/397.yml +13 -16
  505. data/data/problems/398.yml +8 -9
  506. data/data/problems/399.yml +18 -18
  507. data/data/problems/4.yml +5 -4
  508. data/data/problems/40.yml +11 -14
  509. data/data/problems/400.yml +10 -11
  510. data/data/problems/401.yml +6 -7
  511. data/data/problems/402.yml +16 -21
  512. data/data/problems/403.yml +12 -14
  513. data/data/problems/404.yml +14 -16
  514. data/data/problems/405.yml +10 -11
  515. data/data/problems/406.yml +35 -41
  516. data/data/problems/407.yml +9 -16
  517. data/data/problems/408.yml +9 -9
  518. data/data/problems/409.yml +5 -7
  519. data/data/problems/41.yml +5 -4
  520. data/data/problems/410.yml +10 -13
  521. data/data/problems/411.yml +15 -19
  522. data/data/problems/412.yml +11 -15
  523. data/data/problems/413.yml +8 -8
  524. data/data/problems/414.yml +29 -34
  525. data/data/problems/415.yml +12 -15
  526. data/data/problems/416.yml +7 -7
  527. data/data/problems/417.yml +16 -17
  528. data/data/problems/418.yml +9 -12
  529. data/data/problems/419.yml +13 -18
  530. data/data/problems/42.yml +9 -10
  531. data/data/problems/420.yml +5 -6
  532. data/data/problems/421.yml +14 -25
  533. data/data/problems/422.yml +16 -18
  534. data/data/problems/423.yml +16 -18
  535. data/data/problems/424.yml +18 -19
  536. data/data/problems/425.yml +11 -12
  537. data/data/problems/426.yml +20 -21
  538. data/data/problems/427.yml +11 -13
  539. data/data/problems/428.yml +21 -25
  540. data/data/problems/429.yml +6 -6
  541. data/data/problems/43.yml +15 -13
  542. data/data/problems/430.yml +14 -16
  543. data/data/problems/44.yml +9 -12
  544. data/data/problems/45.yml +11 -11
  545. data/data/problems/46.yml +9 -14
  546. data/data/problems/47.yml +11 -16
  547. data/data/problems/48.yml +5 -3
  548. data/data/problems/49.yml +7 -6
  549. data/data/problems/5.yml +5 -4
  550. data/data/problems/50.yml +11 -6
  551. data/data/problems/51.yml +9 -11
  552. data/data/problems/52.yml +5 -4
  553. data/data/problems/53.yml +15 -24
  554. data/data/problems/54.yml +29 -39
  555. data/data/problems/55.yml +16 -17
  556. data/data/problems/56.yml +5 -7
  557. data/data/problems/57.yml +10 -11
  558. data/data/problems/58.yml +11 -18
  559. data/data/problems/59.yml +11 -19
  560. data/data/problems/6.yml +13 -9
  561. data/data/problems/60.yml +5 -6
  562. data/data/problems/61.yml +18 -26
  563. data/data/problems/62.yml +5 -5
  564. data/data/problems/63.yml +5 -3
  565. data/data/problems/64.yml +52 -126
  566. data/data/problems/65.yml +21 -47
  567. data/data/problems/66.yml +13 -23
  568. data/data/problems/67.yml +10 -13
  569. data/data/problems/68.yml +15 -19
  570. data/data/problems/69.yml +18 -10
  571. data/data/problems/7.yml +5 -2
  572. data/data/problems/70.yml +10 -12
  573. data/data/problems/71.yml +11 -13
  574. data/data/problems/72.yml +11 -12
  575. data/data/problems/73.yml +11 -12
  576. data/data/problems/74.yml +25 -37
  577. data/data/problems/75.yml +10 -12
  578. data/data/problems/76.yml +4 -4
  579. data/data/problems/77.yml +4 -4
  580. data/data/problems/78.yml +13 -8
  581. data/data/problems/79.yml +7 -7
  582. data/data/problems/8.yml +14 -8
  583. data/data/problems/80.yml +7 -7
  584. data/data/problems/81.yml +9 -15
  585. data/data/problems/82.yml +10 -15
  586. data/data/problems/83.yml +10 -19
  587. data/data/problems/84.yml +36 -59
  588. data/data/problems/85.yml +7 -5
  589. data/data/problems/86.yml +11 -11
  590. data/data/problems/87.yml +7 -8
  591. data/data/problems/88.yml +30 -49
  592. data/data/problems/89.yml +13 -14
  593. data/data/problems/9.yml +6 -9
  594. data/data/problems/90.yml +16 -18
  595. data/data/problems/91.yml +10 -15
  596. data/data/problems/92.yml +14 -25
  597. data/data/problems/93.yml +13 -17
  598. data/data/problems/94.yml +7 -7
  599. data/data/problems/95.yml +13 -19
  600. data/data/problems/96.yml +24 -40
  601. data/data/problems/97.yml +7 -10
  602. data/data/problems/98.yml +9 -12
  603. data/data/problems/99.yml +9 -12
  604. data/euler-manager.gemspec +1 -0
  605. data/example/1/README.md +4 -4
  606. data/example/15/README.md +8 -0
  607. data/example/15/python/15.py +5 -0
  608. data/example/15/python/euler.py +0 -0
  609. data/example/2/README.md +7 -5
  610. data/example/Eulerfile.rb +1 -0
  611. data/lib/euler/problem.rb +6 -1
  612. data/lib/euler/solution.rb +4 -2
  613. data/lib/euler/version.rb +1 -1
  614. data/rake/clean.rake +16 -0
  615. data/rake/update.rake +88 -0
  616. data/spec/euler/solution_spec.rb +2 -1
  617. data/templates/Eulerfile.rb +12 -0
  618. metadata +189 -29
  619. data/data/problems/431.yml +0 -33
  620. data/data/problems/432.yml +0 -13
  621. data/data/problems/433.yml +0 -18
  622. data/data/problems/434.yml +0 -32
  623. data/data/problems/435.yml +0 -21
  624. data/data/problems/436.yml +0 -21
  625. data/data/problems/437.yml +0 -22
  626. data/data/problems/438.yml +0 -29
  627. data/data/problems/439.yml +0 -17
  628. data/data/problems/440.yml +0 -21
  629. data/data/problems/441.yml +0 -23
  630. data/data/problems/442.yml +0 -9
  631. data/data/problems/443.yml +0 -13
  632. data/data/problems/444.yml +0 -28
  633. data/data/problems/445.yml +0 -37
  634. data/data/problems/446.yml +0 -29
  635. data/data/problems/447.yml +0 -31
  636. data/data/problems/448.yml +0 -14
  637. data/data/problems/449.yml +0 -17
  638. data/data/problems/450.yml +0 -26
  639. data/data/problems/451.yml +0 -15
  640. data/data/problems/452.yml +0 -8
  641. data/data/problems/453.yml +0 -16
  642. data/data/problems/454.yml +0 -17
  643. data/data/problems/455.yml +0 -16
  644. data/data/problems/456.yml +0 -15
  645. data/scripts/update_problems +0 -68
@@ -2,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"