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.
- checksums.yaml +4 -4
- data/README.md +11 -1
- data/Rakefile +3 -0
- data/bin/euler +28 -9
- data/config/config.rb +1 -0
- data/data/answers.yml +430 -456
- data/data/images/blackdot.gif +0 -0
- data/data/images/bracket_left.gif +0 -0
- data/data/images/bracket_right.gif +0 -0
- data/data/images/p295_lenticular.gif +0 -0
- data/data/images/p296_bisector.gif +0 -0
- data/data/images/p303_formula100.gif +0 -0
- data/data/images/p303_formula10000.gif +0 -0
- data/data/images/p392_gridlines.png +0 -0
- data/data/images/p400_winning.png +0 -0
- data/data/images/p411_longpath.png +0 -0
- data/data/images/p412_table53.png +0 -0
- data/data/images/p412_tablenums.png +0 -0
- data/data/images/p422_hyperbola.gif +0 -0
- data/data/images/p428_necklace.png +0 -0
- data/data/images/p_015.gif +0 -0
- data/data/images/p_068_1.gif +0 -0
- data/data/images/p_068_2.gif +0 -0
- data/data/images/p_085.gif +0 -0
- data/data/images/p_086.gif +0 -0
- data/data/images/p_090.gif +0 -0
- data/data/images/p_091_1.gif +0 -0
- data/data/images/p_091_2.gif +0 -0
- data/data/images/p_107_1.gif +0 -0
- data/data/images/p_107_2.gif +0 -0
- data/data/images/p_109.gif +0 -0
- data/data/images/p_126.gif +0 -0
- data/data/images/p_128.gif +0 -0
- data/data/images/p_138.gif +0 -0
- data/data/images/p_139.gif +0 -0
- data/data/images/p_143_torricelli.gif +0 -0
- data/data/images/p_144_1.gif +0 -0
- data/data/images/p_144_2.gif +0 -0
- data/data/images/p_147.gif +0 -0
- data/data/images/p_150.gif +0 -0
- data/data/images/p_151.gif +0 -0
- data/data/images/p_152_sum.gif +0 -0
- data/data/images/p_153_formule1.gif +0 -0
- data/data/images/p_153_formule2.gif +0 -0
- data/data/images/p_153_formule5.gif +0 -0
- data/data/images/p_153_formule6.gif +0 -0
- data/data/images/p_154_pyramid.gif +0 -0
- data/data/images/p_155_capacitors1.gif +0 -0
- data/data/images/p_155_capsform.gif +0 -0
- data/data/images/p_155_capsmu.gif +0 -0
- data/data/images/p_161_k9.gif +0 -0
- data/data/images/p_161_trio1.gif +0 -0
- data/data/images/p_161_trio3.gif +0 -0
- data/data/images/p_163.gif +0 -0
- data/data/images/p_173_square_laminas.gif +0 -0
- data/data/images/p_177_quad.gif +0 -0
- data/data/images/p_184.gif +0 -0
- data/data/images/p_189_colours.gif +0 -0
- data/data/images/p_189_grid.gif +0 -0
- data/data/images/p_194_Fig.png +0 -0
- data/data/images/p_194_GraphA.png +0 -0
- data/data/images/p_194_GraphB.png +0 -0
- data/data/images/p_199_circles_in_circles.gif +0 -0
- data/data/images/p_201_laserbeam.gif +0 -0
- data/data/images/p_208_robotwalk.gif +0 -0
- data/data/images/p_215_crackfree.gif +0 -0
- data/data/images/p_220.gif +0 -0
- data/data/images/p_226_formula.gif +0 -0
- data/data/images/p_226_scoop2.gif +0 -0
- data/data/images/p_228.png +0 -0
- data/data/images/p_237.gif +0 -0
- data/data/images/p_244_example.gif +0 -0
- data/data/images/p_244_start.gif +0 -0
- data/data/images/p_244_target.gif +0 -0
- data/data/images/p_246_anim.gif +0 -0
- data/data/images/p_246_ellipse.gif +0 -0
- data/data/images/p_247_hypersquares.gif +0 -0
- data/data/images/p_251_cardano.gif +0 -0
- data/data/images/p_252_convexhole.gif +0 -0
- data/data/images/p_255_Example.gif +0 -0
- data/data/images/p_255_Heron.gif +0 -0
- data/data/images/p_256_tatami3.gif +0 -0
- data/data/images/p_257_bisector.gif +0 -0
- data/data/images/p_262_formula1.gif +0 -0
- data/data/images/p_264_TriangleCentres.gif +0 -0
- data/data/images/p_265_BinaryCircles.gif +0 -0
- data/data/images/p_270_CutSquare.gif +0 -0
- data/data/images/p_275_sculptures2.gif +0 -0
- data/data/images/p_281_pizza.gif +0 -0
- data/data/images/p_282_formula.gif +0 -0
- data/data/images/p_282formula3.gif +0 -0
- data/data/images/p_287_quadtree.gif +0 -0
- data/data/images/p_289_euler.gif +0 -0
- data/data/images/p_291_formula.gif +0 -0
- data/data/images/p_299_ThreeSimTri.gif +0 -0
- data/data/images/p_300_protein.gif +0 -0
- data/data/images/p_306_pstrip.gif +0 -0
- data/data/images/p_309_ladders.gif +0 -0
- data/data/images/p_311_biclinic.gif +0 -0
- data/data/images/p_312_sierpinsky8t.gif +0 -0
- data/data/images/p_312_sierpinskyAt.gif +0 -0
- data/data/images/p_313_sliding_game_1.gif +0 -0
- data/data/images/p_313_sliding_game_2.gif +0 -0
- data/data/images/p_314_landgrab.gif +0 -0
- data/data/images/p_315_clocks.gif +0 -0
- data/data/images/p_316_decexp1.gif +0 -0
- data/data/images/p_316_decexp2.gif +0 -0
- data/data/images/p_316_decexp3.gif +0 -0
- data/data/images/p_321_swapping_counters_1.gif +0 -0
- data/data/images/p_321_swapping_counters_2.gif +0 -0
- data/data/images/p_326_formula1.gif +0 -0
- data/data/images/p_326_formula2.gif +0 -0
- data/data/images/p_327_rooms_of_doom.gif +0 -0
- data/data/images/p_328_sum1.gif +0 -0
- data/data/images/p_328_sum2.gif +0 -0
- data/data/images/p_330_formula.gif +0 -0
- data/data/images/p_331_crossflips1.gif +0 -0
- data/data/images/p_331_crossflips2.gif +0 -0
- data/data/images/p_331_crossflips3.gif +0 -0
- data/data/images/p_332_spherical.jpg +0 -0
- data/data/images/p_332_sum.gif +0 -0
- data/data/images/p_334_beans.gif +0 -0
- data/data/images/p_334_cases.gif +0 -0
- data/data/images/p_334_lfloor.gif +0 -0
- data/data/images/p_334_oplus.gif +0 -0
- data/data/images/p_334_rfloor.gif +0 -0
- data/data/images/p_335_mancala.gif +0 -0
- data/data/images/p_335_sum.gif +0 -0
- data/data/images/p_336_maximix.gif +0 -0
- data/data/images/p_338_gridpaper.gif +0 -0
- data/data/images/p_340_formula.gif +0 -0
- data/data/images/p_344_silverdollar.gif +0 -0
- data/data/images/p_351_hexorchard.png +0 -0
- data/data/images/p_354_bee_honeycomb.png +0 -0
- data/data/images/p_356_cubicpoly1.gif +0 -0
- data/data/images/p_356_cubicpoly2.gif +0 -0
- data/data/images/p_361_Thue-Morse1.gif +0 -0
- data/data/images/p_364_comf_dist.gif +0 -0
- data/data/images/p_372_pencilray1.jpg +0 -0
- data/data/images/p_372_pencilray2.gif +0 -0
- data/data/images/p_380_mazes.gif +0 -0
- data/data/images/p_384_formula.gif +0 -0
- data/data/images/p_385_ellipsetriangle.png +0 -0
- data/data/images/p_394_eatpie.gif +0 -0
- data/data/images/p_395_pythagorean.gif +0 -0
- data/data/images/p_404_c_ellipse.gif +0 -0
- data/data/images/p_405_tile1.png +0 -0
- data/data/images/p_405_tile2.gif +0 -0
- data/data/images/p_420_matrix.gif +0 -0
- data/data/images/p_424_kakuro1.gif +0 -0
- data/data/images/p_426_baxball1.gif +0 -0
- data/data/images/p_426_baxball2.gif +0 -0
- data/data/images/p_430_flips.gif +0 -0
- data/data/images/sod_13.gif +115 -0
- data/data/images/spacer.gif +0 -0
- data/data/images/symbol_asymp.gif +0 -0
- data/data/images/symbol_cong.gif +0 -0
- data/data/images/symbol_ge.gif +0 -0
- data/data/images/symbol_gt.gif +0 -0
- data/data/images/symbol_implies.gif +0 -0
- data/data/images/symbol_lceil.gif +0 -0
- data/data/images/symbol_le.gif +0 -0
- data/data/images/symbol_lfloor.gif +0 -0
- data/data/images/symbol_lt.gif +0 -0
- data/data/images/symbol_maps.gif +0 -0
- data/data/images/symbol_minus.gif +0 -0
- data/data/images/symbol_ne.gif +0 -0
- data/data/images/symbol_plusmn.gif +0 -0
- data/data/images/symbol_radic.gif +0 -0
- data/data/images/symbol_rceil.gif +0 -0
- data/data/images/symbol_rfloor.gif +0 -0
- data/data/images/symbol_sum.gif +0 -0
- data/data/images/symbol_times.gif +0 -0
- data/data/problems/1.yml +5 -3
- data/data/problems/10.yml +3 -4
- data/data/problems/100.yml +7 -9
- data/data/problems/101.yml +32 -45
- data/data/problems/102.yml +11 -12
- data/data/problems/103.yml +18 -22
- data/data/problems/104.yml +9 -11
- data/data/problems/105.yml +12 -17
- data/data/problems/106.yml +14 -15
- data/data/problems/107.yml +16 -16
- data/data/problems/108.yml +17 -28
- data/data/problems/109.yml +27 -29
- data/data/problems/11.yml +24 -29
- data/data/problems/110.yml +11 -15
- data/data/problems/111.yml +27 -17
- data/data/problems/112.yml +13 -11
- data/data/problems/113.yml +11 -9
- data/data/problems/114.yml +46 -100
- data/data/problems/115.yml +15 -12
- data/data/problems/116.yml +33 -72
- data/data/problems/117.yml +36 -78
- data/data/problems/118.yml +5 -5
- data/data/problems/119.yml +9 -7
- data/data/problems/12.yml +8 -9
- data/data/problems/120.yml +7 -13
- data/data/problems/121.yml +9 -11
- data/data/problems/122.yml +21 -38
- data/data/problems/123.yml +9 -9
- data/data/problems/124.yml +24 -54
- data/data/problems/125.yml +7 -8
- data/data/problems/126.yml +12 -13
- data/data/problems/127.yml +21 -27
- data/data/problems/128.yml +19 -14
- data/data/problems/129.yml +9 -8
- data/data/problems/13.yml +52 -2
- data/data/problems/130.yml +12 -15
- data/data/problems/131.yml +9 -8
- data/data/problems/132.yml +7 -8
- data/data/problems/133.yml +9 -9
- data/data/problems/134.yml +7 -15
- data/data/problems/135.yml +9 -16
- data/data/problems/136.yml +9 -13
- data/data/problems/137.yml +22 -32
- data/data/problems/138.yml +11 -16
- data/data/problems/139.yml +11 -11
- data/data/problems/14.yml +14 -24
- data/data/problems/140.yml +18 -25
- data/data/problems/141.yml +10 -11
- data/data/problems/142.yml +3 -10
- data/data/problems/143.yml +13 -16
- data/data/problems/144.yml +23 -26
- data/data/problems/145.yml +7 -7
- data/data/problems/146.yml +6 -6
- data/data/problems/147.yml +7 -8
- data/data/problems/148.yml +15 -7
- data/data/problems/149.yml +26 -35
- data/data/problems/15.yml +7 -7
- data/data/problems/150.yml +18 -29
- data/data/problems/151.yml +17 -15
- data/data/problems/152.yml +11 -8
- data/data/problems/153.yml +38 -53
- data/data/problems/154.yml +10 -12
- data/data/problems/155.yml +12 -15
- data/data/problems/156.yml +20 -22
- data/data/problems/157.yml +26 -28
- data/data/problems/158.yml +13 -14
- data/data/problems/159.yml +15 -25
- data/data/problems/16.yml +5 -2
- data/data/problems/160.yml +3 -4
- data/data/problems/161.yml +6 -10
- data/data/problems/162.yml +10 -11
- data/data/problems/163.yml +13 -15
- data/data/problems/164.yml +3 -3
- data/data/problems/165.yml +25 -28
- data/data/problems/166.yml +7 -11
- data/data/problems/167.yml +10 -12
- data/data/problems/168.yml +7 -9
- data/data/problems/169.yml +4 -5
- data/data/problems/17.yml +7 -7
- data/data/problems/170.yml +7 -10
- data/data/problems/171.yml +7 -9
- data/data/problems/172.yml +3 -2
- data/data/problems/173.yml +9 -7
- data/data/problems/174.yml +13 -15
- data/data/problems/175.yml +13 -15
- data/data/problems/176.yml +5 -5
- data/data/problems/177.yml +13 -12
- data/data/problems/178.yml +5 -5
- data/data/problems/179.yml +3 -6
- data/data/problems/18.yml +13 -17
- data/data/problems/180.yml +20 -25
- data/data/problems/181.yml +7 -3
- data/data/problems/182.yml +22 -27
- data/data/problems/183.yml +17 -23
- data/data/problems/184.yml +11 -14
- data/data/problems/185.yml +17 -18
- data/data/problems/186.yml +16 -24
- data/data/problems/187.yml +9 -12
- data/data/problems/188.yml +5 -6
- data/data/problems/189.yml +5 -7
- data/data/problems/19.yml +7 -8
- data/data/problems/190.yml +7 -9
- data/data/problems/191.yml +9 -10
- data/data/problems/192.yml +14 -22
- data/data/problems/193.yml +5 -3
- data/data/problems/194.yml +11 -14
- data/data/problems/195.yml +7 -9
- data/data/problems/196.yml +13 -21
- data/data/problems/197.yml +7 -11
- data/data/problems/198.yml +13 -16
- data/data/problems/199.yml +10 -10
- data/data/problems/2.yml +6 -6
- data/data/problems/20.yml +10 -18
- data/data/problems/200.yml +8 -8
- data/data/problems/201.yml +14 -16
- data/data/problems/202.yml +11 -10
- data/data/problems/203.yml +11 -16
- data/data/problems/204.yml +7 -7
- data/data/problems/205.yml +6 -6
- data/data/problems/206.yml +2 -2
- data/data/problems/207.yml +13 -16
- data/data/problems/208.yml +8 -8
- data/data/problems/209.yml +11 -23
- data/data/problems/21.yml +8 -9
- data/data/problems/210.yml +6 -6
- data/data/problems/211.yml +7 -7
- data/data/problems/212.yml +26 -36
- data/data/problems/213.yml +6 -7
- data/data/problems/214.yml +10 -11
- data/data/problems/215.yml +11 -14
- data/data/problems/216.yml +7 -10
- data/data/problems/217.yml +14 -23
- data/data/problems/218.yml +9 -10
- data/data/problems/219.yml +10 -15
- data/data/problems/22.yml +7 -9
- data/data/problems/220.yml +15 -20
- data/data/problems/221.yml +10 -16
- data/data/problems/222.yml +5 -3
- data/data/problems/223.yml +6 -8
- data/data/problems/224.yml +6 -8
- data/data/problems/225.yml +6 -7
- data/data/problems/226.yml +9 -12
- data/data/problems/227.yml +9 -9
- data/data/problems/228.yml +14 -17
- data/data/problems/229.yml +17 -25
- data/data/problems/23.yml +11 -15
- data/data/problems/230.yml +15 -19
- data/data/problems/231.yml +8 -12
- data/data/problems/232.yml +9 -10
- data/data/problems/233.yml +7 -6
- data/data/problems/234.yml +14 -19
- data/data/problems/235.yml +4 -5
- data/data/problems/236.yml +20 -22
- data/data/problems/237.yml +14 -9
- data/data/problems/238.yml +21 -33
- data/data/problems/239.yml +5 -5
- data/data/problems/24.yml +7 -6
- data/data/problems/240.yml +7 -7
- data/data/problems/241.yml +9 -12
- data/data/problems/242.yml +7 -9
- data/data/problems/243.yml +14 -15
- data/data/problems/244.yml +19 -28
- data/data/problems/245.yml +22 -30
- data/data/problems/246.yml +10 -13
- data/data/problems/247.yml +14 -17
- data/data/problems/248.yml +5 -2
- data/data/problems/249.yml +3 -3
- data/data/problems/25.yml +12 -11
- data/data/problems/250.yml +3 -3
- data/data/problems/251.yml +11 -9
- data/data/problems/252.yml +24 -25
- data/data/problems/253.yml +19 -32
- data/data/problems/254.yml +13 -17
- data/data/problems/255.yml +40 -50
- data/data/problems/256.yml +31 -39
- data/data/problems/257.yml +10 -14
- data/data/problems/258.yml +7 -9
- data/data/problems/259.yml +14 -12
- data/data/problems/26.yml +17 -7
- data/data/problems/260.yml +21 -25
- data/data/problems/261.yml +13 -15
- data/data/problems/262.yml +15 -16
- data/data/problems/263.yml +13 -15
- data/data/problems/264.yml +15 -16
- data/data/problems/265.yml +10 -12
- data/data/problems/266.yml +6 -6
- data/data/problems/267.yml +13 -10
- data/data/problems/268.yml +5 -4
- data/data/problems/269.yml +10 -11
- data/data/problems/27.yml +15 -21
- data/data/problems/270.yml +13 -13
- data/data/problems/271.yml +7 -9
- data/data/problems/272.yml +8 -11
- data/data/problems/273.yml +13 -17
- data/data/problems/274.yml +16 -19
- data/data/problems/275.yml +13 -15
- data/data/problems/276.yml +5 -7
- data/data/problems/277.yml +17 -20
- data/data/problems/278.yml +20 -28
- data/data/problems/279.yml +4 -3
- data/data/problems/28.yml +6 -13
- data/data/problems/280.yml +9 -9
- data/data/problems/281.yml +10 -13
- data/data/problems/282.yml +9 -6
- data/data/problems/283.yml +8 -8
- data/data/problems/284.yml +15 -18
- data/data/problems/285.yml +11 -11
- data/data/problems/286.yml +7 -8
- data/data/problems/287.yml +22 -32
- data/data/problems/288.yml +10 -11
- data/data/problems/289.yml +14 -15
- data/data/problems/29.yml +13 -20
- data/data/problems/290.yml +3 -4
- data/data/problems/291.yml +3 -6
- data/data/problems/292.yml +8 -9
- data/data/problems/293.yml +9 -10
- data/data/problems/294.yml +6 -6
- data/data/problems/295.yml +16 -21
- data/data/problems/296.yml +9 -11
- data/data/problems/297.yml +12 -15
- data/data/problems/298.yml +29 -29
- data/data/problems/299.yml +15 -21
- data/data/problems/3.yml +3 -3
- data/data/problems/30.yml +7 -8
- data/data/problems/300.yml +15 -16
- data/data/problems/301.yml +15 -17
- data/data/problems/302.yml +13 -14
- data/data/problems/303.yml +9 -7
- data/data/problems/304.yml +10 -15
- data/data/problems/305.yml +6 -10
- data/data/problems/306.yml +20 -24
- data/data/problems/307.yml +7 -8
- data/data/problems/308.yml +19 -30
- data/data/problems/309.yml +11 -12
- data/data/problems/31.yml +11 -14
- data/data/problems/310.yml +10 -15
- data/data/problems/311.yml +11 -17
- data/data/problems/312.yml +10 -11
- data/data/problems/313.yml +13 -13
- data/data/problems/314.yml +23 -25
- data/data/problems/315.yml +39 -45
- data/data/problems/316.yml +13 -13
- data/data/problems/317.yml +6 -7
- data/data/problems/318.yml +35 -57
- data/data/problems/319.yml +15 -19
- data/data/problems/32.yml +9 -10
- data/data/problems/320.yml +9 -8
- data/data/problems/321.yml +8 -9
- data/data/problems/322.yml +6 -8
- data/data/problems/323.yml +12 -15
- data/data/problems/324.yml +10 -13
- data/data/problems/325.yml +15 -21
- data/data/problems/326.yml +15 -8
- data/data/problems/327.yml +19 -23
- data/data/problems/328.yml +28 -31
- data/data/problems/329.yml +12 -13
- data/data/problems/33.yml +9 -9
- data/data/problems/330.yml +17 -36
- data/data/problems/331.yml +16 -22
- data/data/problems/332.yml +9 -11
- data/data/problems/333.yml +17 -20
- data/data/problems/334.yml +22 -34
- data/data/problems/335.yml +11 -12
- data/data/problems/336.yml +18 -20
- data/data/problems/337.yml +9 -11
- data/data/problems/338.yml +27 -37
- data/data/problems/339.yml +9 -9
- data/data/problems/34.yml +7 -3
- data/data/problems/340.yml +8 -10
- data/data/problems/341.yml +12 -14
- data/data/problems/342.yml +9 -13
- data/data/problems/343.yml +18 -25
- data/data/problems/344.yml +16 -17
- data/data/problems/345.yml +17 -22
- data/data/problems/346.yml +7 -7
- data/data/problems/347.yml +9 -12
- data/data/problems/348.yml +7 -8
- data/data/problems/349.yml +8 -9
- data/data/problems/35.yml +7 -4
- data/data/problems/350.yml +12 -14
- data/data/problems/351.yml +8 -9
- data/data/problems/352.yml +38 -42
- data/data/problems/353.yml +17 -21
- data/data/problems/354.yml +11 -13
- data/data/problems/355.yml +4 -4
- data/data/problems/356.yml +6 -6
- data/data/problems/357.yml +5 -5
- data/data/problems/358.yml +16 -25
- data/data/problems/359.yml +19 -22
- data/data/problems/36.yml +7 -4
- data/data/problems/360.yml +8 -8
- data/data/problems/361.yml +14 -15
- data/data/problems/362.yml +16 -28
- data/data/problems/363.yml +22 -23
- data/data/problems/364.yml +9 -11
- data/data/problems/365.yml +7 -13
- data/data/problems/366.yml +19 -22
- data/data/problems/367.yml +14 -15
- data/data/problems/368.yml +18 -35
- data/data/problems/369.yml +7 -11
- data/data/problems/37.yml +7 -6
- data/data/problems/370.yml +10 -13
- data/data/problems/371.yml +8 -9
- data/data/problems/372.yml +9 -12
- data/data/problems/373.yml +5 -6
- data/data/problems/374.yml +17 -21
- data/data/problems/375.yml +13 -17
- data/data/problems/376.yml +19 -21
- data/data/problems/377.yml +6 -7
- data/data/problems/378.yml +8 -11
- data/data/problems/379.yml +9 -11
- data/data/problems/38.yml +9 -13
- data/data/problems/380.yml +14 -17
- data/data/problems/381.yml +12 -18
- data/data/problems/382.yml +16 -19
- data/data/problems/383.yml +7 -9
- data/data/problems/384.yml +20 -24
- data/data/problems/385.yml +12 -16
- data/data/problems/386.yml +9 -11
- data/data/problems/387.yml +14 -15
- data/data/problems/388.yml +6 -8
- data/data/problems/389.yml +8 -8
- data/data/problems/39.yml +7 -6
- data/data/problems/390.yml +9 -14
- data/data/problems/391.yml +21 -25
- data/data/problems/392.yml +16 -17
- data/data/problems/393.yml +5 -6
- data/data/problems/394.yml +15 -18
- data/data/problems/395.yml +12 -13
- data/data/problems/396.yml +17 -22
- data/data/problems/397.yml +13 -16
- data/data/problems/398.yml +8 -9
- data/data/problems/399.yml +18 -18
- data/data/problems/4.yml +5 -4
- data/data/problems/40.yml +11 -14
- data/data/problems/400.yml +10 -11
- data/data/problems/401.yml +6 -7
- data/data/problems/402.yml +16 -21
- data/data/problems/403.yml +12 -14
- data/data/problems/404.yml +14 -16
- data/data/problems/405.yml +10 -11
- data/data/problems/406.yml +35 -41
- data/data/problems/407.yml +9 -16
- data/data/problems/408.yml +9 -9
- data/data/problems/409.yml +5 -7
- data/data/problems/41.yml +5 -4
- data/data/problems/410.yml +10 -13
- data/data/problems/411.yml +15 -19
- data/data/problems/412.yml +11 -15
- data/data/problems/413.yml +8 -8
- data/data/problems/414.yml +29 -34
- data/data/problems/415.yml +12 -15
- data/data/problems/416.yml +7 -7
- data/data/problems/417.yml +16 -17
- data/data/problems/418.yml +9 -12
- data/data/problems/419.yml +13 -18
- data/data/problems/42.yml +9 -10
- data/data/problems/420.yml +5 -6
- data/data/problems/421.yml +14 -25
- data/data/problems/422.yml +16 -18
- data/data/problems/423.yml +16 -18
- data/data/problems/424.yml +18 -19
- data/data/problems/425.yml +11 -12
- data/data/problems/426.yml +20 -21
- data/data/problems/427.yml +11 -13
- data/data/problems/428.yml +21 -25
- data/data/problems/429.yml +6 -6
- data/data/problems/43.yml +15 -13
- data/data/problems/430.yml +14 -16
- data/data/problems/44.yml +9 -12
- data/data/problems/45.yml +11 -11
- data/data/problems/46.yml +9 -14
- data/data/problems/47.yml +11 -16
- data/data/problems/48.yml +5 -3
- data/data/problems/49.yml +7 -6
- data/data/problems/5.yml +5 -4
- data/data/problems/50.yml +11 -6
- data/data/problems/51.yml +9 -11
- data/data/problems/52.yml +5 -4
- data/data/problems/53.yml +15 -24
- data/data/problems/54.yml +29 -39
- data/data/problems/55.yml +16 -17
- data/data/problems/56.yml +5 -7
- data/data/problems/57.yml +10 -11
- data/data/problems/58.yml +11 -18
- data/data/problems/59.yml +11 -19
- data/data/problems/6.yml +13 -9
- data/data/problems/60.yml +5 -6
- data/data/problems/61.yml +18 -26
- data/data/problems/62.yml +5 -5
- data/data/problems/63.yml +5 -3
- data/data/problems/64.yml +52 -126
- data/data/problems/65.yml +21 -47
- data/data/problems/66.yml +13 -23
- data/data/problems/67.yml +10 -13
- data/data/problems/68.yml +15 -19
- data/data/problems/69.yml +18 -10
- data/data/problems/7.yml +5 -2
- data/data/problems/70.yml +10 -12
- data/data/problems/71.yml +11 -13
- data/data/problems/72.yml +11 -12
- data/data/problems/73.yml +11 -12
- data/data/problems/74.yml +25 -37
- data/data/problems/75.yml +10 -12
- data/data/problems/76.yml +4 -4
- data/data/problems/77.yml +4 -4
- data/data/problems/78.yml +13 -8
- data/data/problems/79.yml +7 -7
- data/data/problems/8.yml +14 -8
- data/data/problems/80.yml +7 -7
- data/data/problems/81.yml +9 -15
- data/data/problems/82.yml +10 -15
- data/data/problems/83.yml +10 -19
- data/data/problems/84.yml +36 -59
- data/data/problems/85.yml +7 -5
- data/data/problems/86.yml +11 -11
- data/data/problems/87.yml +7 -8
- data/data/problems/88.yml +30 -49
- data/data/problems/89.yml +13 -14
- data/data/problems/9.yml +6 -9
- data/data/problems/90.yml +16 -18
- data/data/problems/91.yml +10 -15
- data/data/problems/92.yml +14 -25
- data/data/problems/93.yml +13 -17
- data/data/problems/94.yml +7 -7
- data/data/problems/95.yml +13 -19
- data/data/problems/96.yml +24 -40
- data/data/problems/97.yml +7 -10
- data/data/problems/98.yml +9 -12
- data/data/problems/99.yml +9 -12
- data/euler-manager.gemspec +1 -0
- data/example/1/README.md +4 -4
- data/example/15/README.md +8 -0
- data/example/15/python/15.py +5 -0
- data/example/15/python/euler.py +0 -0
- data/example/2/README.md +7 -5
- data/example/Eulerfile.rb +1 -0
- data/lib/euler/problem.rb +6 -1
- data/lib/euler/solution.rb +4 -2
- data/lib/euler/version.rb +1 -1
- data/rake/clean.rake +16 -0
- data/rake/update.rake +88 -0
- data/spec/euler/solution_spec.rb +2 -1
- data/templates/Eulerfile.rb +12 -0
- metadata +189 -29
- data/data/problems/431.yml +0 -33
- data/data/problems/432.yml +0 -13
- data/data/problems/433.yml +0 -18
- data/data/problems/434.yml +0 -32
- data/data/problems/435.yml +0 -21
- data/data/problems/436.yml +0 -21
- data/data/problems/437.yml +0 -22
- data/data/problems/438.yml +0 -29
- data/data/problems/439.yml +0 -17
- data/data/problems/440.yml +0 -21
- data/data/problems/441.yml +0 -23
- data/data/problems/442.yml +0 -9
- data/data/problems/443.yml +0 -13
- data/data/problems/444.yml +0 -28
- data/data/problems/445.yml +0 -37
- data/data/problems/446.yml +0 -29
- data/data/problems/447.yml +0 -31
- data/data/problems/448.yml +0 -14
- data/data/problems/449.yml +0 -17
- data/data/problems/450.yml +0 -26
- data/data/problems/451.yml +0 -15
- data/data/problems/452.yml +0 -8
- data/data/problems/453.yml +0 -16
- data/data/problems/454.yml +0 -17
- data/data/problems/455.yml +0 -16
- data/data/problems/456.yml +0 -15
- data/scripts/update_problems +0 -68
data/data/problems/73.yml
CHANGED
|
@@ -2,15 +2,14 @@
|
|
|
2
2
|
:id: 73
|
|
3
3
|
:name: Counting fractions in a range
|
|
4
4
|
:url: http://projecteuler.net/problem=73
|
|
5
|
-
:content:
|
|
6
|
-
positive integers. If <
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
alt=\"≤\" border=\"0\" style=\"vertical-align:middle;\"> 12,000?</p>\r\n\r\n\r\n"
|
|
5
|
+
:content: |+
|
|
6
|
+
Consider the fraction, _n/d_, where _n_ and _d_ are positive integers. If _n_ _d_ and HCF(_n,d_)=1, it is called a reduced proper fraction.
|
|
7
|
+
|
|
8
|
+
If we list the set of reduced proper fractions for _d_  8 in ascending order of size, we get:
|
|
9
|
+
|
|
10
|
+
1/8, 1/7, 1/6, 1/5, 1/4, 2/7, 1/3, **3/8, 2/5, 3/7** , 1/2, 4/7, 3/5, 5/8, 2/3, 5/7, 3/4, 4/5, 5/6, 6/7, 7/8
|
|
11
|
+
|
|
12
|
+
It can be seen that there are 3 fractions between 1/3 and 1/2.
|
|
13
|
+
|
|
14
|
+
How many fractions lie between 1/3 and 1/2 in the sorted set of reduced proper fractions for _d_  12,000?
|
|
15
|
+
|
data/data/problems/74.yml
CHANGED
|
@@ -2,40 +2,28 @@
|
|
|
2
2
|
:id: 74
|
|
3
3
|
:name: Digit factorial chains
|
|
4
4
|
:url: http://projecteuler.net/problem=74
|
|
5
|
-
:content: "
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
src
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
src
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
src
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
width=\"15\" height=\"7\" alt=\"→\" border=\"0\" style=\"vertical-align:middle;\">
|
|
31
|
-
45360 <img src=\"images/symbol_maps.gif\" width=\"15\" height=\"7\" alt=\"→\" border=\"0\"
|
|
32
|
-
style=\"vertical-align:middle;\"> 871 <img src=\"images/symbol_maps.gif\" width=\"15\"
|
|
33
|
-
height=\"7\" alt=\"→\" border=\"0\" style=\"vertical-align:middle;\"> 45361 (<img
|
|
34
|
-
src=\"images/symbol_maps.gif\" width=\"15\" height=\"7\" alt=\"→\" border=\"0\"
|
|
35
|
-
style=\"vertical-align:middle;\"> 871)<br>\n540 <img src=\"images/symbol_maps.gif\"
|
|
36
|
-
width=\"15\" height=\"7\" alt=\"→\" border=\"0\" style=\"vertical-align:middle;\">
|
|
37
|
-
145 (<img src=\"images/symbol_maps.gif\" width=\"15\" height=\"7\" alt=\"→\" border=\"0\"
|
|
38
|
-
style=\"vertical-align:middle;\"> 145)</p>\n<p>Starting with 69 produces a chain
|
|
39
|
-
of five non-repeating terms, but the longest non-repeating chain with a starting
|
|
40
|
-
number below one million is sixty terms.</p>\n<p>How many chains, with a starting
|
|
41
|
-
number below one million, contain exactly sixty non-repeating terms?</p>\n\r\n"
|
|
5
|
+
:content: "The number 145 is well known for the property that the sum of the factorial
|
|
6
|
+
of its digits is equal to 145:\n\n1! + 4! + 5! = 1 + 24 + 120 = 145\n\nPerhaps less
|
|
7
|
+
well known is 169, in that it produces the longest chain of numbers that link back
|
|
8
|
+
to 169; it turns out that there are only three such loops that exist:\n\n169 
|
|
9
|
+
363601 
|
|
10
|
+
1454  169
|
|
11
|
+
\ \n871 
|
|
12
|
+
45361  871
|
|
13
|
+
\ \n872 
|
|
14
|
+
45362  872\n\nIt
|
|
15
|
+
is not difficult to prove that EVERY starting number will eventually get stuck in
|
|
16
|
+
a loop. For example,\n\n69 
|
|
17
|
+
363600 
|
|
18
|
+
1454  169
|
|
19
|
+
 363601
|
|
20
|
+
(  1454)
|
|
21
|
+
\ \n78 
|
|
22
|
+
45360  871
|
|
23
|
+
 45361 (
|
|
24
|
+
 871) \n540
|
|
25
|
+
 145 ( 
|
|
26
|
+
145)\n\nStarting with 69 produces a chain of five non-repeating terms, but the longest
|
|
27
|
+
non-repeating chain with a starting number below one million is sixty terms.\n\nHow
|
|
28
|
+
many chains, with a starting number below one million, contain exactly sixty non-repeating
|
|
29
|
+
terms?\n\n"
|
data/data/problems/75.yml
CHANGED
|
@@ -2,15 +2,13 @@
|
|
|
2
2
|
:id: 75
|
|
3
3
|
:name: Singular integer right triangles
|
|
4
4
|
:url: http://projecteuler.net/problem=75
|
|
5
|
-
:content: "
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
width=\"10\" height=\"12\" alt=\"≤\" border=\"0\" style=\"vertical-align:middle;\">
|
|
16
|
-
1,500,000 can exactly one integer sided right angle triangle be formed?</p>\r\n\r\n"
|
|
5
|
+
:content: "It turns out that 12 cm is the smallest length of wire that can be bent
|
|
6
|
+
to form an integer sided right angle triangle in exactly one way, but there are
|
|
7
|
+
many more examples.\n\n**12 cm** : (3,4,5) \n**24 cm** : (6,8,10) \n**30 cm**
|
|
8
|
+
: (5,12,13) \n**36 cm** : (9,12,15) \n**40 cm** : (8,15,17) \n**48 cm** : (12,16,20)\n\nIn
|
|
9
|
+
contrast, some lengths of wire, like 20 cm, cannot be bent to form an integer sided
|
|
10
|
+
right angle triangle, and other lengths allow more than one solution to be found;
|
|
11
|
+
for example, using 120 cm it is possible to form exactly three different integer
|
|
12
|
+
sided right angle triangles.\n\n**120 cm** : (30,40,50), (20,48,52), (24,45,51)\n\nGiven
|
|
13
|
+
that L is the length of the wire, for how many values of L 
|
|
14
|
+
1,500,000 can exactly one integer sided right angle triangle be formed?\n\n"
|
data/data/problems/76.yml
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
:id: 76
|
|
3
3
|
:name: Counting summations
|
|
4
4
|
:url: http://projecteuler.net/problem=76
|
|
5
|
-
:content: "
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
5
|
+
:content: "It is possible to write five as a sum in exactly six different ways:\n\n4
|
|
6
|
+
+ 1 \n3 + 2 \n3 + 1 + 1 \n2 + 2 + 1 \n2 + 1 + 1 + 1 \n1 + 1 + 1 + 1 + 1\n\nHow
|
|
7
|
+
many different ways can one hundred be written as a sum of at least two positive
|
|
8
|
+
integers?\n\n"
|
data/data/problems/77.yml
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
:id: 77
|
|
3
3
|
:name: Prime summations
|
|
4
4
|
:url: http://projecteuler.net/problem=77
|
|
5
|
-
:content: "
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
5
|
+
:content: "It is possible to write ten as the sum of primes in exactly five different
|
|
6
|
+
ways:\n\n7 + 3 \n5 + 5 \n5 + 3 + 2 \n3 + 3 + 2 + 2 \n2 + 2 + 2 + 2 + 2\n\nWhat
|
|
7
|
+
is the first value which can be written as the sum of primes in over five thousand
|
|
8
|
+
different ways?\n\n"
|
data/data/problems/78.yml
CHANGED
|
@@ -2,11 +2,16 @@
|
|
|
2
2
|
:id: 78
|
|
3
3
|
:name: Coin partitions
|
|
4
4
|
:url: http://projecteuler.net/problem=78
|
|
5
|
-
:content:
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
5
|
+
:content: |+
|
|
6
|
+
Let p(_n_) represent the number of different ways in which _n_ coins can be separated into piles. For example, five coins can separated into piles in exactly seven different ways, so p(5)=7.
|
|
7
|
+
|
|
8
|
+
| OOOOO |
|
|
9
|
+
| OOOO O |
|
|
10
|
+
| OOO OO |
|
|
11
|
+
| OOO O O |
|
|
12
|
+
| OO OO O |
|
|
13
|
+
| OO O O O |
|
|
14
|
+
| O O O O O |
|
|
15
|
+
|
|
16
|
+
Find the least value of _n_ for which p(_n_) is divisible by one million.
|
|
17
|
+
|
data/data/problems/79.yml
CHANGED
|
@@ -2,10 +2,10 @@
|
|
|
2
2
|
:id: 79
|
|
3
3
|
:name: Passcode derivation
|
|
4
4
|
:url: http://projecteuler.net/problem=79
|
|
5
|
-
:content:
|
|
6
|
-
for three random characters from a passcode. For example, if the passcode was 531278,
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
asked for in order, analyse the file so as to determine the shortest possible secret
|
|
11
|
-
|
|
5
|
+
:content: |+
|
|
6
|
+
A common security method used for online banking is to ask the user for three random characters from a passcode. For example, if the passcode was 531278, they may ask for the 2nd, 3rd, and 5th characters; the expected reply would be: 317.
|
|
7
|
+
|
|
8
|
+
The text file, [keylog.txt](project/keylog.txt), contains fifty successful login attempts.
|
|
9
|
+
|
|
10
|
+
Given that the three characters are always asked for in order, analyse the file so as to determine the shortest possible secret passcode of unknown length.
|
|
11
|
+
|
data/data/problems/8.yml
CHANGED
|
@@ -2,12 +2,18 @@
|
|
|
2
2
|
:id: 8
|
|
3
3
|
:name: Largest product in a series
|
|
4
4
|
:url: http://projecteuler.net/problem=8
|
|
5
|
-
:content: "
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
5
|
+
:content: "The four adjacent digits in the 1000-digit number that have the greatest
|
|
6
|
+
product are 9 
|
|
7
|
+
9  8 
|
|
8
|
+
9 = 5832.\n\n73167176531330624919225119674426574742355349194934 \n\r96983520312774506326239578318016984801869478851843
|
|
9
|
+
\ \n\r85861560789112949495459501737958331952853208805511 \n\r12540698747158523863050715693290963295227443043557
|
|
10
|
+
\ \n\r66896648950445244523161731856403098711121722383113 \n\r62229893423380308135336276614282806444486645238749
|
|
11
|
+
\ \n\r30358907296290491560440772390713810515859307960866 \n\r70172427121883998797908792274921901699720888093776
|
|
12
|
+
\ \n\r65727333001053367881220235421809751254540594752243 \n\r52584907711670556013604839586446706324415722155397
|
|
13
|
+
\ \n\r53697817977846174064955149290862569321978468622482 \n\r83972241375657056057490261407972968652414535100474
|
|
14
|
+
\ \n\r82166370484403199890008895243450658541227588666881 \n\r16427171479924442928230863465674813919123162824586
|
|
15
|
+
\ \n\r17866458359124566529476545682848912883142607690042 \n\r24219022671055626321111109370544217506941658960408
|
|
16
|
+
\ \n\r07198403850962455444362981230987879927244284909188 \n\r84580156166097919133875499200524063689912560717606
|
|
17
|
+
\ \n\r05886116467109405077541002256983155200055935729725 \n\r71636269561882670428252483600823257530420752963450\n\nFind
|
|
12
18
|
the thirteen adjacent digits in the 1000-digit number that have the greatest product.
|
|
13
|
-
What is the value of this product
|
|
19
|
+
What is the value of this product?\n\n"
|
data/data/problems/80.yml
CHANGED
|
@@ -2,10 +2,10 @@
|
|
|
2
2
|
:id: 80
|
|
3
3
|
:name: Square root digital expansion
|
|
4
4
|
:url: http://projecteuler.net/problem=80
|
|
5
|
-
:content:
|
|
6
|
-
not an integer, then it is irrational. The decimal expansion of such square roots
|
|
7
|
-
|
|
8
|
-
is 1.41421356237309504880..., and the digital sum of the first one hundred decimal
|
|
9
|
-
|
|
10
|
-
of the digital sums of the first one hundred decimal digits for all the irrational
|
|
11
|
-
|
|
5
|
+
:content: |+
|
|
6
|
+
It is well known that if the square root of a natural number is not an integer, then it is irrational. The decimal expansion of such square roots is infinite without any repeating pattern at all.
|
|
7
|
+
|
|
8
|
+
The square root of two is 1.41421356237309504880..., and the digital sum of the first one hundred decimal digits is 475.
|
|
9
|
+
|
|
10
|
+
For the first one hundred natural numbers, find the total of the digital sums of the first one hundred decimal digits for all the irrational square roots.
|
|
11
|
+
|
data/data/problems/81.yml
CHANGED
|
@@ -2,18 +2,12 @@
|
|
|
2
2
|
:id: 81
|
|
3
3
|
:name: 'Path sum: two ways'
|
|
4
4
|
:url: http://projecteuler.net/problem=81
|
|
5
|
-
:content: "
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
style=\"color:#dd0000;\"><b>121</b></span></td>\n<td>956</td>\r\n</tr>\n<tr>\n<td>805</td>\n<td>732</td>\n<td>524</td>\n<td><span
|
|
15
|
-
style=\"color:#dd0000;\"><b>37</b></span></td>\n<td><span style=\"color:#dd0000;\"><b>331</b></span></td>\r\n</tr>\n</table>\n</td>\r\n<td>\n<img
|
|
16
|
-
src=\"images/bracket_right.gif\" width=\"8\" height=\"120\" alt=\"\" align=\"middle\"><br>\n</td>\r\n</tr></table>\n</div>\r\n<p>Find
|
|
17
|
-
the minimal path sum, in <a href=\"project/matrix.txt\">matrix.txt</a> (right click
|
|
18
|
-
and 'Save Link/Target As...'), a 31K text file containing a 80 by 80 matrix, from
|
|
19
|
-
the top left to the bottom right by only moving right and down.</p>\r\n\r\n"
|
|
5
|
+
:content: "In the 5 by 5 matrix below, the minimal path sum from the top left to the
|
|
6
|
+
bottom right, by **only moving to the right and down** , is indicated in bold red
|
|
7
|
+
and is equal to 2427.\n\n| 
|
|
8
|
+
\ \n | \n\n| **131** | 673 | 234 | 103 | 18 |\n| **201** | **96** | **342** | 965
|
|
9
|
+
| 150 |\n| 630 | 803 | **746** | **422** | 111 |\n| 537 | 699 | 497 | **121** |
|
|
10
|
+
956 |\n| 805 | 732 | 524 | **37** | **331** |\n\n | 
|
|
11
|
+
\ \n |\n\nFind the minimal path sum, in [matrix.txt](project/matrix.txt) (right
|
|
12
|
+
click and 'Save Link/Target As...'), a 31K text file containing a 80 by 80 matrix,
|
|
13
|
+
from the top left to the bottom right by only moving right and down.\n\n"
|
data/data/problems/82.yml
CHANGED
|
@@ -2,18 +2,13 @@
|
|
|
2
2
|
:id: 82
|
|
3
3
|
:name: 'Path sum: three ways'
|
|
4
4
|
:url: http://projecteuler.net/problem=82
|
|
5
|
-
:content: "
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
style=\"color:#dd0000;\"><b>96</b></span></td>\n<td><span style=\"color:#dd0000;\"><b>342</b></span></td>\n<td>965</td>\n<td>150</td>\r\n</tr>\n<tr>\n<td>630</td>\n<td>803</td>\n<td>746</td>\n<td>422</td>\n<td>111</td>\r\n</tr>\n<tr>\n<td>537</td>\n<td>699</td>\n<td>497</td>\n<td>121</td>\n<td>956</td>\r\n</tr>\n<tr>\n<td>805</td>\n<td>732</td>\n<td>524</td>\n<td>37</td>\n<td>331</td>\r\n</tr>\n</table>\n</td>\r\n<td>\n<img
|
|
16
|
-
src=\"images/bracket_right.gif\" width=\"8\" height=\"120\" alt=\"\" align=\"middle\"><br>\n</td>\r\n</tr></table>\n</div>\r\n<p>Find
|
|
17
|
-
the minimal path sum, in <a href=\"project/matrix.txt\">matrix.txt</a> (right click
|
|
18
|
-
and 'Save Link/Target As...'), a 31K text file containing a 80 by 80 matrix, from
|
|
19
|
-
the left column to the right column.</p>\r\n\r\n"
|
|
5
|
+
:content: "NOTE: This problem is a more challenging version of [Problem 81](problem=81).\n\nThe
|
|
6
|
+
minimal path sum in the 5 by 5 matrix below, by starting in any cell in the left
|
|
7
|
+
column and finishing in any cell in the right column, and only moving up, down,
|
|
8
|
+
and right, is indicated in red and bold; the sum is equal to 994.\n\n| 
|
|
9
|
+
\ \n | \n\n| 131 | 673 | **234** | **103** | **18** |\n| **201** | **96** | **342**
|
|
10
|
+
| 965 | 150 |\n| 630 | 803 | 746 | 422 | 111 |\n| 537 | 699 | 497 | 121 | 956 |\n|
|
|
11
|
+
805 | 732 | 524 | 37 | 331 |\n\n | 
|
|
12
|
+
\ \n |\n\nFind the minimal path sum, in [matrix.txt](project/matrix.txt) (right
|
|
13
|
+
click and 'Save Link/Target As...'), a 31K text file containing a 80 by 80 matrix,
|
|
14
|
+
from the left column to the right column.\n\n"
|
data/data/problems/83.yml
CHANGED
|
@@ -2,22 +2,13 @@
|
|
|
2
2
|
:id: 83
|
|
3
3
|
:name: 'Path sum: four ways'
|
|
4
4
|
:url: http://projecteuler.net/problem=83
|
|
5
|
-
:content: "
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
style=\"color:#dd0000;\"><b>96</b></span></td>\n<td><span style=\"color:#dd0000;\"><b>342</b></span></td>\n<td>965</td>\n<td><span
|
|
16
|
-
style=\"color:#dd0000;\"><b>150</b></span></td>\r\n</tr>\n<tr>\n<td>630</td>\n<td>803</td>\n<td>746</td>\n<td><span
|
|
17
|
-
style=\"color:#dd0000;\"><b>422</b></span></td>\n<td><span style=\"color:#dd0000;\"><b>111</b></span></td>\r\n</tr>\n<tr>\n<td>537</td>\n<td>699</td>\n<td>497</td>\n<td><span
|
|
18
|
-
style=\"color:#dd0000;\"><b>121</b></span></td>\n<td>956</td>\r\n</tr>\n<tr>\n<td>805</td>\n<td>732</td>\n<td>524</td>\n<td><span
|
|
19
|
-
style=\"color:#dd0000;\"><b>37</b></span></td>\n<td><span style=\"color:#dd0000;\"><b>331</b></span></td>\r\n</tr>\n</table>\n</td>\r\n<td>\n<img
|
|
20
|
-
src=\"images/bracket_right.gif\" width=\"8\" height=\"120\" alt=\"\" align=\"middle\"><br>\n</td>\r\n</tr></table>\n</div>\r\n<p>Find
|
|
21
|
-
the minimal path sum, in <a href=\"project/matrix.txt\">matrix.txt</a> (right click
|
|
22
|
-
and 'Save Link/Target As...'), a 31K text file containing a 80 by 80 matrix, from
|
|
23
|
-
the top left to the bottom right by moving left, right, up, and down.</p>\r\n\r\n"
|
|
5
|
+
:content: "NOTE: This problem is a significantly more challenging version of [Problem
|
|
6
|
+
81](problem=81).\n\nIn the 5 by 5 matrix below, the minimal path sum from the top
|
|
7
|
+
left to the bottom right, by moving left, right, up, and down, is indicated in bold
|
|
8
|
+
red and is equal to 2297.\n\n| 
|
|
9
|
+
\ \n | \n\n| **131** | 673 | **234** | **103** | **18** |\n| **201** | **96** |
|
|
10
|
+
**342** | 965 | **150** |\n| 630 | 803 | 746 | **422** | **111** |\n| 537 | 699
|
|
11
|
+
| 497 | **121** | 956 |\n| 805 | 732 | 524 | **37** | **331** |\n\n | 
|
|
12
|
+
\ \n |\n\nFind the minimal path sum, in [matrix.txt](project/matrix.txt) (right
|
|
13
|
+
click and 'Save Link/Target As...'), a 31K text file containing a 80 by 80 matrix,
|
|
14
|
+
from the top left to the bottom right by moving left, right, up, and down.\n\n"
|
data/data/problems/84.yml
CHANGED
|
@@ -2,62 +2,39 @@
|
|
|
2
2
|
:id: 84
|
|
3
3
|
:name: Monopoly odds
|
|
4
4
|
:url: http://projecteuler.net/problem=84
|
|
5
|
-
:content: "
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
the
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
in each pile, but for the purpose of this problem we are only concerned with cards
|
|
42
|
-
that order a movement; any instruction not concerned with movement will be ignored
|
|
43
|
-
and the player will remain on the CC/CH square.</p>\r\n<ul>\n<li>Community Chest
|
|
44
|
-
(2/16 cards):\r\n<ol>\n<li>Advance to GO</li>\r\n<li>Go to JAIL</li>\r\n</ol>\n</li>\r\n<li>Chance
|
|
45
|
-
(10/16 cards):\r\n<ol>\n<li>Advance to GO</li>\r\n<li>Go to JAIL</li>\r\n<li>Go
|
|
46
|
-
to C1</li>\r\n<li>Go to E3</li>\r\n<li>Go to H2</li>\r\n<li>Go to R1</li>\r\n<li>Go
|
|
47
|
-
to next R (railway company)</li>\r\n<li>Go to next R</li>\r\n<li>Go to next U (utility
|
|
48
|
-
company)</li>\r\n<li>Go back 3 squares.</li>\r\n</ol>\n</li>\r\n</ul>\n<p>The heart
|
|
49
|
-
of this problem concerns the likelihood of visiting a particular square. That is,
|
|
50
|
-
the probability of finishing at that square after a roll. For this reason it should
|
|
51
|
-
be clear that, with the exception of G2J for which the probability of finishing
|
|
52
|
-
on it is zero, the CH squares will have the lowest probabilities, as 5/8 request
|
|
53
|
-
a movement to another square, and it is the final square that the player finishes
|
|
54
|
-
at on each roll that we are interested in. We shall make no distinction between
|
|
55
|
-
\"Just Visiting\" and being sent to JAIL, and we shall also ignore the rule about
|
|
56
|
-
requiring a double to \"get out of jail\", assuming that they pay to get out on
|
|
57
|
-
their next turn.</p>\r\n<p>By starting at GO and numbering the squares sequentially
|
|
58
|
-
from 00 to 39 we can concatenate these two-digit numbers to produce strings that
|
|
59
|
-
correspond with sets of squares.</p>\r\n<p>Statistically it can be shown that the
|
|
60
|
-
three most popular squares, in order, are JAIL (6.24%) = Square 10, E3 (3.18%) =
|
|
61
|
-
Square 24, and GO (3.09%) = Square 00. So these three most popular squares can be
|
|
62
|
-
listed with the six-digit modal string: 102400.</p>\r\n<p>If, instead of using two
|
|
63
|
-
6-sided dice, two 4-sided dice are used, find the six-digit modal string.</p>\r\n\r\n"
|
|
5
|
+
:content: "In the game, _Monopoly_, the standard board is set up in the following
|
|
6
|
+
way:\n\n| GO | A1 | CC1 | A2 | T1 | R1 | B1 | CH1 | B2 | B3 | JAIL |\n| H2 | |
|
|
7
|
+
C1 |\n| T2 | | U1 |\n| H1 | | C2 |\n| CH3 | | C3 |\n| R4 | | R2 |\n| G3
|
|
8
|
+
| | D1 |\n| CC3 | | CC2 |\n| G2 | | D2 |\n| G1 | | D3 |\n| G2J | F3 | U2
|
|
9
|
+
| F2 | F1 | R3 | E3 | E2 | CH2 | E1 | FP |\n\nA player starts on the GO square and
|
|
10
|
+
adds the scores on two 6-sided dice to determine the number of squares they advance
|
|
11
|
+
in a clockwise direction. Without any further rules we would expect to visit each
|
|
12
|
+
square with equal probability: 2.5%. However, landing on G2J (Go To Jail), CC (community
|
|
13
|
+
chest), and CH (chance) changes this distribution.\n\nIn addition to G2J, and one
|
|
14
|
+
card from each of CC and CH, that orders the player to go directly to jail, if a
|
|
15
|
+
player rolls three consecutive doubles, they do not advance the result of their
|
|
16
|
+
3rd roll. Instead they proceed directly to jail.\n\nAt the beginning of the game,
|
|
17
|
+
the CC and CH cards are shuffled. When a player lands on CC or CH they take a card
|
|
18
|
+
from the top of the respective pile and, after following the instructions, it is
|
|
19
|
+
returned to the bottom of the pile. There are sixteen cards in each pile, but for
|
|
20
|
+
the purpose of this problem we are only concerned with cards that order a movement;
|
|
21
|
+
any instruction not concerned with movement will be ignored and the player will
|
|
22
|
+
remain on the CC/CH square.\n\n- Community Chest (2/16 cards):\r\n 1. Advance to
|
|
23
|
+
GO\n 2. Go to JAIL\n\n- Chance (10/16 cards):\r\n 1. Advance to GO\n 2. Go to
|
|
24
|
+
JAIL\n 3. Go to C1\n 4. Go to E3\n 5. Go to H2\n 6. Go to R1\n 7. Go to next
|
|
25
|
+
R (railway company)\n 8. Go to next R\n 9. Go to next U (utility company)\n 10.
|
|
26
|
+
Go back 3 squares.\n\nThe heart of this problem concerns the likelihood of visiting
|
|
27
|
+
a particular square. That is, the probability of finishing at that square after
|
|
28
|
+
a roll. For this reason it should be clear that, with the exception of G2J for which
|
|
29
|
+
the probability of finishing on it is zero, the CH squares will have the lowest
|
|
30
|
+
probabilities, as 5/8 request a movement to another square, and it is the final
|
|
31
|
+
square that the player finishes at on each roll that we are interested in. We shall
|
|
32
|
+
make no distinction between \"Just Visiting\" and being sent to JAIL, and we shall
|
|
33
|
+
also ignore the rule about requiring a double to \"get out of jail\", assuming that
|
|
34
|
+
they pay to get out on their next turn.\n\nBy starting at GO and numbering the squares
|
|
35
|
+
sequentially from 00 to 39 we can concatenate these two-digit numbers to produce
|
|
36
|
+
strings that correspond with sets of squares.\n\nStatistically it can be shown that
|
|
37
|
+
the three most popular squares, in order, are JAIL (6.24%) = Square 10, E3 (3.18%)
|
|
38
|
+
= Square 24, and GO (3.09%) = Square 00. So these three most popular squares can
|
|
39
|
+
be listed with the six-digit modal string: 102400.\n\nIf, instead of using two 6-sided
|
|
40
|
+
dice, two 4-sided dice are used, find the six-digit modal string.\n\n"
|
data/data/problems/85.yml
CHANGED
|
@@ -2,8 +2,10 @@
|
|
|
2
2
|
:id: 85
|
|
3
3
|
:name: Counting rectangles
|
|
4
4
|
:url: http://projecteuler.net/problem=85
|
|
5
|
-
:content:
|
|
6
|
-
3 by 2 contains eighteen rectangles
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
5
|
+
:content: |+
|
|
6
|
+
By counting carefully it can be seen that a rectangular grid measuring 3 by 2 contains eighteen rectangles:
|
|
7
|
+
|
|
8
|
+

|
|
9
|
+
|
|
10
|
+
Although there exists no rectangular grid that contains exactly two million rectangles, find the area of the grid with the nearest solution.
|
|
11
|
+
|
data/data/problems/86.yml
CHANGED
|
@@ -2,14 +2,14 @@
|
|
|
2
2
|
:id: 86
|
|
3
3
|
:name: Cuboid route
|
|
4
4
|
:url: http://projecteuler.net/problem=86
|
|
5
|
-
:content: "
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
5
|
+
:content: "A spider, S, sits in one corner of a cuboid room, measuring 6 by 5 by 3,
|
|
6
|
+
and a fly, F, sits in the opposite corner. By travelling on the surfaces of the
|
|
7
|
+
room the shortest \"straight line\" distance from S to F is 10 and the path is shown
|
|
8
|
+
on the diagram.\n\n 
|
|
9
|
+
\ \n\nHowever, there are up to three \"shortest\" path candidates for any given
|
|
10
|
+
cuboid and the shortest route doesn't always have integer length.\n\nBy considering
|
|
11
|
+
all cuboid rooms with integer dimensions, up to a maximum size of M by M by M, there
|
|
12
|
+
are exactly 2060 cuboids for which the shortest route has integer length when M=100,
|
|
13
|
+
and this is the least value of M for which the number of solutions first exceeds
|
|
14
|
+
two thousand; the number of solutions is 1975 when M=99.\n\nFind the least value
|
|
15
|
+
of M such that the number of solutions first exceeds one million.\n\n"
|
data/data/problems/87.yml
CHANGED
|
@@ -2,11 +2,10 @@
|
|
|
2
2
|
:id: 87
|
|
3
3
|
:name: Prime power triples
|
|
4
4
|
:url: http://projecteuler.net/problem=87
|
|
5
|
-
:content: "
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
=
|
|
9
|
-
+ 2<sup>4</sup
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
power?</p>\n\r\n"
|
|
5
|
+
:content: "The smallest number expressible as the sum of a prime square, prime cube,
|
|
6
|
+
and prime fourth power is 28. In fact, there are exactly four numbers below fifty
|
|
7
|
+
that can be expressed in such a way:\n\n28 = 2<sup>2</sup> + 2<sup>3</sup> + 2<sup>4</sup>
|
|
8
|
+
\ \n33 = 3<sup>2</sup> + 2<sup>3</sup> + 2<sup>4</sup> \n49 = 5<sup>2</sup> + 2<sup>3</sup>
|
|
9
|
+
+ 2<sup>4</sup> \n47 = 2<sup>2</sup> + 3<sup>3</sup> + 2<sup>4</sup>\n\nHow many
|
|
10
|
+
numbers below fifty million can be expressed as the sum of a prime square, prime
|
|
11
|
+
cube, and prime fourth power?\n\n"
|