euler-manager 0.1.1 → 0.2.0
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/.gitignore +3 -0
- data/.travis.yml +2 -1
- data/README.md +27 -21
- data/Rakefile +3 -2
- data/config/config.rb +6 -2
- data/data/answers.yml +431 -430
- data/data/images/{p_015.gif → p015.gif} +0 -0
- data/data/images/{p_068_1.gif → p068_1.gif} +0 -0
- data/data/images/{p_068_2.gif → p068_2.gif} +0 -0
- data/data/images/{p_085.gif → p085.gif} +0 -0
- data/data/images/{p_086.gif → p086.gif} +0 -0
- data/data/images/{p_090.gif → p090.gif} +0 -0
- data/data/images/{p_091_1.gif → p091_1.gif} +0 -0
- data/data/images/{p_091_2.gif → p091_2.gif} +0 -0
- data/data/images/{p_107_1.gif → p107_1.gif} +0 -0
- data/data/images/{p_107_2.gif → p107_2.gif} +0 -0
- data/data/images/{p_109.gif → p109.gif} +0 -0
- data/data/images/{p_126.gif → p126.gif} +0 -0
- data/data/images/{p_128.gif → p128.gif} +0 -0
- data/data/images/{p_138.gif → p138.gif} +0 -0
- data/data/images/{p_139.gif → p139.gif} +0 -0
- data/data/images/{p_143_torricelli.gif → p143_torricelli.gif} +0 -0
- data/data/images/{p_144_1.gif → p144_1.gif} +0 -0
- data/data/images/{p_144_2.gif → p144_2.gif} +0 -0
- data/data/images/{p_147.gif → p147.gif} +0 -0
- data/data/images/{p_150.gif → p150.gif} +0 -0
- data/data/images/{p_151.gif → p151.gif} +0 -0
- data/data/images/{p_152_sum.gif → p152_sum.gif} +0 -0
- data/data/images/{p_153_formule1.gif → p153_formule1.gif} +0 -0
- data/data/images/{p_153_formule2.gif → p153_formule2.gif} +0 -0
- data/data/images/{p_153_formule5.gif → p153_formule5.gif} +0 -0
- data/data/images/{p_153_formule6.gif → p153_formule6.gif} +0 -0
- data/data/images/{p_154_pyramid.gif → p154_pyramid.gif} +0 -0
- data/data/images/{p_155_capacitors1.gif → p155_capacitors1.gif} +0 -0
- data/data/images/{p_155_capsform.gif → p155_capsform.gif} +0 -0
- data/data/images/{p_155_capsmu.gif → p155_capsmu.gif} +0 -0
- data/data/images/{p_161_k9.gif → p161_k9.gif} +0 -0
- data/data/images/{p_161_trio1.gif → p161_trio1.gif} +0 -0
- data/data/images/{p_161_trio3.gif → p161_trio3.gif} +0 -0
- data/data/images/{p_163.gif → p163.gif} +0 -0
- data/data/images/{p_173_square_laminas.gif → p173_square_laminas.gif} +0 -0
- data/data/images/{p_177_quad.gif → p177_quad.gif} +0 -0
- data/data/images/{p_184.gif → p184.gif} +0 -0
- data/data/images/{p_189_colours.gif → p189_colours.gif} +0 -0
- data/data/images/{p_189_grid.gif → p189_grid.gif} +0 -0
- data/data/images/{p_194_Fig.png → p194_Fig.png} +0 -0
- data/data/images/{p_194_GraphA.png → p194_GraphA.png} +0 -0
- data/data/images/{p_194_GraphB.png → p194_GraphB.png} +0 -0
- data/data/images/{p_199_circles_in_circles.gif → p199_circles_in_circles.gif} +0 -0
- data/data/images/{p_201_laserbeam.gif → p201_laserbeam.gif} +0 -0
- data/data/images/{p_208_robotwalk.gif → p208_robotwalk.gif} +0 -0
- data/data/images/{p_215_crackfree.gif → p215_crackfree.gif} +0 -0
- data/data/images/{p_220.gif → p220.gif} +0 -0
- data/data/images/{p_226_formula.gif → p226_formula.gif} +0 -0
- data/data/images/{p_226_scoop2.gif → p226_scoop2.gif} +0 -0
- data/data/images/{p_228.png → p228.png} +0 -0
- data/data/images/{p_237.gif → p237.gif} +0 -0
- data/data/images/{p_244_example.gif → p244_example.gif} +0 -0
- data/data/images/{p_244_start.gif → p244_start.gif} +0 -0
- data/data/images/{p_244_target.gif → p244_target.gif} +0 -0
- data/data/images/{p_246_anim.gif → p246_anim.gif} +0 -0
- data/data/images/{p_246_ellipse.gif → p246_ellipse.gif} +0 -0
- data/data/images/{p_247_hypersquares.gif → p247_hypersquares.gif} +0 -0
- data/data/images/{p_251_cardano.gif → p251_cardano.gif} +0 -0
- data/data/images/{p_252_convexhole.gif → p252_convexhole.gif} +0 -0
- data/data/images/{p_255_Example.gif → p255_Example.gif} +0 -0
- data/data/images/{p_255_Heron.gif → p255_Heron.gif} +0 -0
- data/data/images/{p_256_tatami3.gif → p256_tatami3.gif} +0 -0
- data/data/images/{p_257_bisector.gif → p257_bisector.gif} +0 -0
- data/data/images/{p_262_formula1.gif → p262_formula1.gif} +0 -0
- data/data/images/{p_264_TriangleCentres.gif → p264_TriangleCentres.gif} +0 -0
- data/data/images/{p_265_BinaryCircles.gif → p265_BinaryCircles.gif} +0 -0
- data/data/images/{p_270_CutSquare.gif → p270_CutSquare.gif} +0 -0
- data/data/images/{p_275_sculptures2.gif → p275_sculptures2.gif} +0 -0
- data/data/images/{p_281_pizza.gif → p281_pizza.gif} +0 -0
- data/data/images/{p_282_formula.gif → p282_formula.gif} +0 -0
- data/data/images/{p_282formula3.gif → p282formula3.gif} +0 -0
- data/data/images/{p_287_quadtree.gif → p287_quadtree.gif} +0 -0
- data/data/images/{p_289_euler.gif → p289_euler.gif} +0 -0
- data/data/images/{p_291_formula.gif → p291_formula.gif} +0 -0
- data/data/images/{p_299_ThreeSimTri.gif → p299_ThreeSimTri.gif} +0 -0
- data/data/images/{p_300_protein.gif → p300_protein.gif} +0 -0
- data/data/images/{p_306_pstrip.gif → p306_pstrip.gif} +0 -0
- data/data/images/{p_309_ladders.gif → p309_ladders.gif} +0 -0
- data/data/images/{p_311_biclinic.gif → p311_biclinic.gif} +0 -0
- data/data/images/{p_312_sierpinsky8t.gif → p312_sierpinsky8t.gif} +0 -0
- data/data/images/{p_312_sierpinskyAt.gif → p312_sierpinskyAt.gif} +0 -0
- data/data/images/{p_313_sliding_game_1.gif → p313_sliding_game_1.gif} +0 -0
- data/data/images/{p_313_sliding_game_2.gif → p313_sliding_game_2.gif} +0 -0
- data/data/images/{p_314_landgrab.gif → p314_landgrab.gif} +0 -0
- data/data/images/{p_315_clocks.gif → p315_clocks.gif} +0 -0
- data/data/images/{p_316_decexp1.gif → p316_decexp1.gif} +0 -0
- data/data/images/{p_316_decexp2.gif → p316_decexp2.gif} +0 -0
- data/data/images/{p_316_decexp3.gif → p316_decexp3.gif} +0 -0
- data/data/images/{p_321_swapping_counters_1.gif → p321_swapping_counters_1.gif} +0 -0
- data/data/images/{p_321_swapping_counters_2.gif → p321_swapping_counters_2.gif} +0 -0
- data/data/images/{p_326_formula1.gif → p326_formula1.gif} +0 -0
- data/data/images/{p_326_formula2.gif → p326_formula2.gif} +0 -0
- data/data/images/{p_327_rooms_of_doom.gif → p327_rooms_of_doom.gif} +0 -0
- data/data/images/{p_328_sum1.gif → p328_sum1.gif} +0 -0
- data/data/images/{p_328_sum2.gif → p328_sum2.gif} +0 -0
- data/data/images/{p_330_formula.gif → p330_formula.gif} +0 -0
- data/data/images/{p_331_crossflips1.gif → p331_crossflips1.gif} +0 -0
- data/data/images/{p_331_crossflips2.gif → p331_crossflips2.gif} +0 -0
- data/data/images/{p_331_crossflips3.gif → p331_crossflips3.gif} +0 -0
- data/data/images/{p_332_spherical.jpg → p332_spherical.jpg} +0 -0
- data/data/images/{p_332_sum.gif → p332_sum.gif} +0 -0
- data/data/images/{p_334_beans.gif → p334_beans.gif} +0 -0
- data/data/images/{p_334_cases.gif → p334_cases.gif} +0 -0
- data/data/images/{p_334_lfloor.gif → p334_lfloor.gif} +0 -0
- data/data/images/{p_334_oplus.gif → p334_oplus.gif} +0 -0
- data/data/images/{p_334_rfloor.gif → p334_rfloor.gif} +0 -0
- data/data/images/{p_335_mancala.gif → p335_mancala.gif} +0 -0
- data/data/images/{p_335_sum.gif → p335_sum.gif} +0 -0
- data/data/images/{p_336_maximix.gif → p336_maximix.gif} +0 -0
- data/data/images/{p_338_gridpaper.gif → p338_gridpaper.gif} +0 -0
- data/data/images/{p_340_formula.gif → p340_formula.gif} +0 -0
- data/data/images/{p_344_silverdollar.gif → p344_silverdollar.gif} +0 -0
- data/data/images/{p_351_hexorchard.png → p351_hexorchard.png} +0 -0
- data/data/images/{p_354_bee_honeycomb.png → p354_bee_honeycomb.png} +0 -0
- data/data/images/{p_356_cubicpoly1.gif → p356_cubicpoly1.gif} +0 -0
- data/data/images/{p_356_cubicpoly2.gif → p356_cubicpoly2.gif} +0 -0
- data/data/images/{p_361_Thue-Morse1.gif → p361_Thue-Morse1.gif} +0 -0
- data/data/images/p363_bezier.png +0 -0
- data/data/images/{p_364_comf_dist.gif → p364_comf_dist.gif} +0 -0
- data/data/images/{p_372_pencilray1.jpg → p372_pencilray1.jpg} +0 -0
- data/data/images/{p_372_pencilray2.gif → p372_pencilray2.gif} +0 -0
- data/data/images/{p_380_mazes.gif → p380_mazes.gif} +0 -0
- data/data/images/{p_384_formula.gif → p384_formula.gif} +0 -0
- data/data/images/{p_385_ellipsetriangle.png → p385_ellipsetriangle.png} +0 -0
- data/data/images/{p_394_eatpie.gif → p394_eatpie.gif} +0 -0
- data/data/images/{p_395_pythagorean.gif → p395_pythagorean.gif} +0 -0
- data/data/images/{p_404_c_ellipse.gif → p404_c_ellipse.gif} +0 -0
- data/data/images/{p_405_tile1.png → p405_tile1.png} +0 -0
- data/data/images/{p_405_tile2.gif → p405_tile2.gif} +0 -0
- data/data/images/{p_420_matrix.gif → p420_matrix.gif} +0 -0
- data/data/images/{p_424_kakuro1.gif → p424_kakuro1.gif} +0 -0
- data/data/images/{p_426_baxball1.gif → p426_baxball1.gif} +0 -0
- data/data/images/{p_426_baxball2.gif → p426_baxball2.gif} +0 -0
- data/data/images/{p_430_flips.gif → p430_flips.gif} +0 -0
- data/data/problems/1.yml +1 -1
- data/data/problems/10.yml +6 -4
- data/data/problems/100.yml +2 -2
- data/data/problems/101.yml +15 -19
- data/data/problems/102.yml +9 -10
- data/data/problems/103.yml +7 -8
- data/data/problems/104.yml +2 -2
- data/data/problems/105.yml +4 -4
- data/data/problems/106.yml +3 -3
- data/data/problems/107.yml +12 -12
- data/data/problems/108.yml +8 -14
- data/data/problems/109.yml +12 -11
- data/data/problems/11.yml +21 -24
- data/data/problems/110.yml +9 -10
- data/data/problems/111.yml +1 -1
- data/data/problems/112.yml +1 -1
- data/data/problems/113.yml +1 -1
- data/data/problems/114.yml +2 -2
- data/data/problems/115.yml +1 -1
- data/data/problems/116.yml +11 -11
- data/data/problems/117.yml +3 -3
- data/data/problems/118.yml +1 -1
- data/data/problems/119.yml +1 -1
- data/data/problems/12.yml +6 -6
- data/data/problems/120.yml +4 -4
- data/data/problems/121.yml +1 -1
- data/data/problems/122.yml +10 -18
- data/data/problems/123.yml +3 -3
- data/data/problems/124.yml +17 -19
- data/data/problems/125.yml +1 -1
- data/data/problems/126.yml +12 -11
- data/data/problems/127.yml +8 -8
- data/data/problems/128.yml +3 -3
- data/data/problems/129.yml +1 -1
- data/data/problems/13.yml +1 -1
- data/data/problems/130.yml +6 -7
- data/data/problems/131.yml +2 -2
- data/data/problems/132.yml +2 -2
- data/data/problems/133.yml +2 -2
- data/data/problems/134.yml +3 -3
- data/data/problems/135.yml +3 -3
- data/data/problems/136.yml +3 -3
- data/data/problems/137.yml +9 -9
- data/data/problems/138.yml +5 -5
- data/data/problems/139.yml +2 -2
- data/data/problems/14.yml +8 -13
- data/data/problems/140.yml +5 -5
- data/data/problems/141.yml +2 -2
- data/data/problems/142.yml +3 -4
- data/data/problems/143.yml +3 -3
- data/data/problems/144.yml +4 -4
- data/data/problems/145.yml +1 -1
- data/data/problems/146.yml +1 -1
- data/data/problems/147.yml +6 -6
- data/data/problems/148.yml +8 -8
- data/data/problems/149.yml +12 -25
- data/data/problems/15.yml +4 -4
- data/data/problems/150.yml +16 -17
- data/data/problems/151.yml +3 -3
- data/data/problems/152.yml +2 -2
- data/data/problems/153.yml +30 -35
- data/data/problems/154.yml +16 -12
- data/data/problems/155.yml +7 -6
- data/data/problems/156.yml +8 -9
- data/data/problems/157.yml +4 -6
- data/data/problems/158.yml +12 -12
- data/data/problems/159.yml +14 -16
- data/data/problems/16.yml +1 -1
- data/data/problems/160.yml +3 -3
- data/data/problems/161.yml +6 -6
- data/data/problems/162.yml +3 -3
- data/data/problems/163.yml +3 -3
- data/data/problems/164.yml +3 -4
- data/data/problems/165.yml +12 -12
- data/data/problems/166.yml +6 -8
- data/data/problems/167.yml +6 -7
- data/data/problems/168.yml +5 -7
- data/data/problems/169.yml +2 -2
- data/data/problems/17.yml +5 -5
- data/data/problems/170.yml +9 -10
- data/data/problems/171.yml +4 -5
- data/data/problems/172.yml +3 -4
- data/data/problems/173.yml +2 -2
- data/data/problems/174.yml +4 -4
- data/data/problems/175.yml +12 -13
- data/data/problems/176.yml +1 -1
- data/data/problems/177.yml +2 -2
- data/data/problems/178.yml +6 -6
- data/data/problems/179.yml +4 -4
- data/data/problems/18.yml +11 -12
- data/data/problems/180.yml +9 -12
- data/data/problems/181.yml +1 -1
- data/data/problems/182.yml +14 -16
- data/data/problems/183.yml +12 -15
- data/data/problems/184.yml +3 -3
- data/data/problems/185.yml +11 -11
- data/data/problems/186.yml +10 -11
- data/data/problems/187.yml +8 -8
- data/data/problems/188.yml +4 -4
- data/data/problems/189.yml +4 -4
- data/data/problems/19.yml +1 -1
- data/data/problems/190.yml +2 -2
- data/data/problems/191.yml +5 -5
- data/data/problems/192.yml +10 -14
- data/data/problems/193.yml +1 -1
- data/data/problems/194.yml +10 -10
- data/data/problems/195.yml +5 -6
- data/data/problems/196.yml +15 -14
- data/data/problems/197.yml +7 -8
- data/data/problems/198.yml +8 -14
- data/data/problems/199.yml +3 -3
- data/data/problems/2.yml +8 -7
- data/data/problems/20.yml +4 -9
- data/data/problems/200.yml +7 -8
- data/data/problems/201.yml +14 -14
- data/data/problems/202.yml +2 -2
- data/data/problems/203.yml +21 -13
- data/data/problems/204.yml +7 -7
- data/data/problems/205.yml +6 -6
- data/data/problems/206.yml +1 -1
- data/data/problems/207.yml +10 -10
- data/data/problems/208.yml +4 -5
- data/data/problems/209.yml +6 -6
- data/data/problems/21.yml +7 -7
- data/data/problems/210.yml +6 -6
- data/data/problems/211.yml +2 -2
- data/data/problems/212.yml +16 -20
- data/data/problems/213.yml +6 -6
- data/data/problems/214.yml +9 -10
- data/data/problems/215.yml +5 -5
- data/data/problems/216.yml +5 -6
- data/data/problems/217.yml +7 -12
- data/data/problems/218.yml +9 -10
- data/data/problems/219.yml +5 -5
- data/data/problems/22.yml +3 -3
- data/data/problems/220.yml +15 -16
- data/data/problems/221.yml +8 -8
- data/data/problems/222.yml +1 -1
- data/data/problems/223.yml +5 -6
- data/data/problems/224.yml +5 -6
- data/data/problems/225.yml +2 -2
- data/data/problems/226.yml +8 -9
- data/data/problems/227.yml +3 -3
- data/data/problems/228.yml +17 -16
- data/data/problems/229.yml +16 -19
- data/data/problems/23.yml +1 -3
- data/data/problems/230.yml +9 -11
- data/data/problems/231.yml +5 -8
- data/data/problems/232.yml +1 -1
- data/data/problems/233.yml +2 -2
- data/data/problems/234.yml +11 -13
- data/data/problems/235.yml +2 -2
- data/data/problems/236.yml +13 -19
- data/data/problems/237.yml +4 -4
- data/data/problems/238.yml +16 -19
- data/data/problems/239.yml +2 -2
- data/data/problems/24.yml +2 -2
- data/data/problems/240.yml +7 -7
- data/data/problems/241.yml +4 -7
- data/data/problems/242.yml +5 -6
- data/data/problems/243.yml +13 -13
- data/data/problems/244.yml +15 -15
- data/data/problems/245.yml +8 -20
- data/data/problems/246.yml +11 -12
- data/data/problems/247.yml +11 -12
- data/data/problems/248.yml +1 -1
- data/data/problems/249.yml +2 -2
- data/data/problems/25.yml +8 -12
- data/data/problems/250.yml +4 -4
- data/data/problems/251.yml +4 -4
- data/data/problems/252.yml +13 -20
- data/data/problems/253.yml +9 -8
- data/data/problems/254.yml +3 -3
- data/data/problems/255.yml +15 -37
- data/data/problems/256.yml +19 -24
- data/data/problems/257.yml +8 -10
- data/data/problems/258.yml +9 -7
- data/data/problems/259.yml +1 -1
- data/data/problems/26.yml +11 -11
- data/data/problems/260.yml +15 -18
- data/data/problems/261.yml +15 -13
- data/data/problems/262.yml +15 -14
- data/data/problems/263.yml +13 -13
- data/data/problems/264.yml +10 -11
- data/data/problems/265.yml +2 -2
- data/data/problems/266.yml +7 -7
- data/data/problems/267.yml +1 -1
- data/data/problems/268.yml +1 -1
- data/data/problems/269.yml +3 -3
- data/data/problems/27.yml +12 -15
- data/data/problems/270.yml +4 -4
- data/data/problems/271.yml +5 -6
- data/data/problems/272.yml +5 -7
- data/data/problems/273.yml +4 -4
- data/data/problems/274.yml +4 -5
- data/data/problems/275.yml +4 -4
- data/data/problems/276.yml +5 -6
- data/data/problems/277.yml +7 -8
- data/data/problems/278.yml +16 -19
- data/data/problems/279.yml +3 -4
- data/data/problems/28.yml +6 -6
- data/data/problems/280.yml +2 -2
- data/data/problems/281.yml +4 -6
- data/data/problems/282.yml +3 -3
- data/data/problems/283.yml +6 -7
- data/data/problems/284.yml +7 -8
- data/data/problems/285.yml +4 -4
- data/data/problems/286.yml +2 -2
- data/data/problems/287.yml +19 -24
- data/data/problems/288.yml +7 -8
- data/data/problems/289.yml +11 -11
- data/data/problems/29.yml +10 -13
- data/data/problems/290.yml +3 -4
- data/data/problems/291.yml +4 -4
- data/data/problems/292.yml +5 -6
- data/data/problems/293.yml +9 -10
- data/data/problems/294.yml +12 -7
- data/data/problems/295.yml +11 -13
- data/data/problems/296.yml +9 -9
- data/data/problems/297.yml +7 -9
- data/data/problems/298.yml +32 -40
- data/data/problems/299.yml +17 -19
- data/data/problems/3.yml +6 -4
- data/data/problems/30.yml +1 -1
- data/data/problems/300.yml +14 -14
- data/data/problems/301.yml +9 -10
- data/data/problems/302.yml +5 -5
- data/data/problems/303.yml +4 -4
- data/data/problems/304.yml +7 -9
- data/data/problems/305.yml +4 -5
- data/data/problems/306.yml +10 -12
- data/data/problems/307.yml +4 -4
- data/data/problems/308.yml +4 -4
- data/data/problems/309.yml +11 -9
- data/data/problems/31.yml +2 -2
- data/data/problems/310.yml +6 -9
- data/data/problems/311.yml +10 -12
- data/data/problems/312.yml +10 -9
- data/data/problems/313.yml +5 -5
- data/data/problems/314.yml +8 -9
- data/data/problems/315.yml +35 -38
- data/data/problems/316.yml +17 -16
- data/data/problems/317.yml +8 -7
- data/data/problems/318.yml +14 -29
- data/data/problems/319.yml +10 -12
- data/data/problems/32.yml +2 -2
- data/data/problems/320.yml +2 -2
- data/data/problems/321.yml +12 -11
- data/data/problems/322.yml +4 -5
- data/data/problems/323.yml +7 -9
- data/data/problems/324.yml +7 -9
- data/data/problems/325.yml +2 -2
- data/data/problems/326.yml +3 -3
- data/data/problems/327.yml +19 -22
- data/data/problems/328.yml +23 -23
- data/data/problems/329.yml +6 -6
- data/data/problems/33.yml +2 -2
- data/data/problems/330.yml +12 -16
- data/data/problems/331.yml +16 -18
- data/data/problems/332.yml +10 -10
- data/data/problems/333.yml +15 -16
- data/data/problems/334.yml +17 -19
- data/data/problems/335.yml +3 -3
- data/data/problems/336.yml +5 -5
- data/data/problems/337.yml +7 -8
- data/data/problems/338.yml +18 -24
- data/data/problems/339.yml +3 -3
- data/data/problems/34.yml +1 -1
- data/data/problems/340.yml +7 -7
- data/data/problems/341.yml +4 -5
- data/data/problems/342.yml +6 -9
- data/data/problems/343.yml +8 -13
- data/data/problems/344.yml +8 -8
- data/data/problems/345.yml +17 -16
- data/data/problems/346.yml +6 -6
- data/data/problems/347.yml +8 -10
- data/data/problems/348.yml +5 -5
- data/data/problems/349.yml +4 -4
- data/data/problems/35.yml +1 -1
- data/data/problems/350.yml +5 -6
- data/data/problems/351.yml +7 -7
- data/data/problems/352.yml +13 -14
- data/data/problems/353.yml +2 -2
- data/data/problems/354.yml +6 -8
- data/data/problems/355.yml +4 -4
- data/data/problems/356.yml +5 -4
- data/data/problems/357.yml +3 -3
- data/data/problems/358.yml +11 -16
- data/data/problems/359.yml +12 -12
- data/data/problems/36.yml +1 -1
- data/data/problems/360.yml +4 -4
- data/data/problems/361.yml +9 -9
- data/data/problems/362.yml +8 -15
- data/data/problems/363.yml +29 -29
- data/data/problems/364.yml +4 -4
- data/data/problems/365.yml +3 -3
- data/data/problems/366.yml +16 -19
- data/data/problems/367.yml +11 -11
- data/data/problems/368.yml +14 -18
- data/data/problems/369.yml +2 -2
- data/data/problems/37.yml +1 -1
- data/data/problems/370.yml +4 -4
- data/data/problems/371.yml +5 -5
- data/data/problems/372.yml +6 -7
- data/data/problems/373.yml +10 -6
- data/data/problems/374.yml +11 -13
- data/data/problems/375.yml +11 -14
- data/data/problems/376.yml +19 -19
- data/data/problems/377.yml +5 -5
- data/data/problems/378.yml +8 -9
- data/data/problems/379.yml +10 -9
- data/data/problems/38.yml +9 -11
- data/data/problems/380.yml +8 -10
- data/data/problems/381.yml +6 -10
- data/data/problems/382.yml +12 -13
- data/data/problems/383.yml +5 -6
- data/data/problems/384.yml +14 -18
- data/data/problems/385.yml +12 -14
- data/data/problems/386.yml +4 -5
- data/data/problems/387.yml +13 -14
- data/data/problems/388.yml +6 -6
- data/data/problems/389.yml +3 -3
- data/data/problems/39.yml +2 -2
- data/data/problems/390.yml +12 -8
- data/data/problems/391.yml +18 -20
- data/data/problems/392.yml +9 -9
- data/data/problems/393.yml +8 -8
- data/data/problems/394.yml +14 -15
- data/data/problems/395.yml +16 -15
- data/data/problems/396.yml +13 -16
- data/data/problems/397.yml +4 -6
- data/data/problems/398.yml +8 -9
- data/data/problems/399.yml +18 -19
- data/data/problems/4.yml +2 -2
- data/data/problems/40.yml +2 -2
- data/data/problems/400.yml +10 -9
- data/data/problems/401.yml +6 -7
- data/data/problems/402.yml +7 -9
- data/data/problems/403.yml +9 -10
- data/data/problems/404.yml +8 -10
- data/data/problems/405.yml +10 -10
- data/data/problems/406.yml +24 -30
- data/data/problems/407.yml +6 -10
- data/data/problems/408.yml +10 -10
- data/data/problems/409.yml +12 -7
- data/data/problems/41.yml +1 -1
- data/data/problems/410.yml +5 -6
- data/data/problems/411.yml +10 -13
- data/data/problems/412.yml +10 -10
- data/data/problems/413.yml +6 -7
- data/data/problems/414.yml +26 -28
- data/data/problems/415.yml +12 -13
- data/data/problems/416.yml +4 -4
- data/data/problems/417.yml +12 -14
- data/data/problems/418.yml +13 -10
- data/data/problems/419.yml +11 -13
- data/data/problems/42.yml +2 -2
- data/data/problems/420.yml +8 -8
- data/data/problems/421.yml +8 -13
- data/data/problems/422.yml +8 -8
- data/data/problems/423.yml +11 -12
- data/data/problems/424.yml +10 -10
- data/data/problems/425.yml +7 -7
- data/data/problems/426.yml +9 -9
- data/data/problems/427.yml +12 -13
- data/data/problems/428.yml +17 -20
- data/data/problems/429.yml +5 -5
- data/data/problems/43.yml +1 -1
- data/data/problems/430.yml +6 -7
- data/data/problems/44.yml +4 -4
- data/data/problems/45.yml +4 -4
- data/data/problems/46.yml +6 -9
- data/data/problems/47.yml +5 -8
- data/data/problems/48.yml +1 -1
- data/data/problems/49.yml +1 -1
- data/data/problems/5.yml +1 -1
- data/data/problems/50.yml +1 -1
- data/data/problems/51.yml +1 -3
- data/data/problems/52.yml +1 -1
- data/data/problems/53.yml +6 -12
- data/data/problems/54.yml +17 -16
- data/data/problems/55.yml +3 -3
- data/data/problems/56.yml +2 -2
- data/data/problems/57.yml +9 -10
- data/data/problems/58.yml +11 -11
- data/data/problems/59.yml +2 -2
- data/data/problems/6.yml +2 -2
- data/data/problems/60.yml +1 -1
- data/data/problems/61.yml +7 -7
- data/data/problems/62.yml +1 -1
- data/data/problems/63.yml +1 -1
- data/data/problems/64.yml +30 -44
- data/data/problems/65.yml +19 -19
- data/data/problems/66.yml +9 -12
- data/data/problems/67.yml +9 -9
- data/data/problems/68.yml +3 -3
- data/data/problems/69.yml +3 -3
- data/data/problems/7.yml +1 -1
- data/data/problems/70.yml +4 -4
- data/data/problems/71.yml +4 -4
- data/data/problems/72.yml +4 -4
- data/data/problems/73.yml +4 -4
- data/data/problems/74.yml +9 -16
- data/data/problems/75.yml +3 -3
- data/data/problems/76.yml +1 -1
- data/data/problems/77.yml +1 -1
- data/data/problems/78.yml +8 -8
- data/data/problems/79.yml +2 -2
- data/data/problems/8.yml +12 -13
- data/data/problems/80.yml +1 -1
- data/data/problems/81.yml +8 -10
- data/data/problems/82.yml +10 -11
- data/data/problems/83.yml +10 -11
- data/data/problems/84.yml +45 -37
- data/data/problems/85.yml +2 -2
- data/data/problems/86.yml +8 -8
- data/data/problems/87.yml +1 -1
- data/data/problems/88.yml +11 -22
- data/data/problems/89.yml +14 -14
- data/data/problems/9.yml +6 -7
- data/data/problems/90.yml +7 -7
- data/data/problems/91.yml +6 -8
- data/data/problems/92.yml +6 -11
- data/data/problems/93.yml +11 -12
- data/data/problems/94.yml +1 -1
- data/data/problems/95.yml +2 -2
- data/data/problems/96.yml +7 -9
- data/data/problems/97.yml +3 -3
- data/data/problems/98.yml +2 -2
- data/data/problems/99.yml +4 -4
- data/euler-manager.gemspec +2 -2
- data/example/1/README.md +1 -1
- data/example/1/ruby/1.rb +7 -1
- data/example/1/scala/1.scala +1 -1
- data/example/15/README.md +4 -4
- data/example/2/README.md +1 -4
- data/languages/c.rb +22 -0
- data/languages/elixir.rb +25 -0
- data/languages/java.rb +3 -2
- data/languages/perl.rb +25 -0
- data/languages/php.rb +25 -0
- data/lib/euler/version.rb +1 -1
- data/rake/clean.rake +0 -2
- data/rake/sha_answers.rake +20 -0
- data/rake/update.rake +5 -2
- data/spec/euler_spec.rb +5 -0
- data/templates/c.c +11 -0
- data/templates/elixir.ex +1 -0
- data/templates/perl.pl +3 -0
- data/templates/php.php +5 -0
- metadata +148 -164
- 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/sod_13.gif +0 -119
- 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/example/1/haskell/1.hs +0 -3
- data/example/12/README.md +0 -20
- data/example/12/haskell/12.hs +0 -3
- data/example/lib/Euler.hs +0 -1
data/data/problems/409.yml
CHANGED
|
@@ -1,10 +1,15 @@
|
|
|
1
1
|
---
|
|
2
2
|
:id: 409
|
|
3
3
|
:name: Nim Extreme
|
|
4
|
-
:url:
|
|
5
|
-
:content:
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
4
|
+
:url: https://projecteuler.net/problem=409
|
|
5
|
+
:content: |+
|
|
6
|
+
Let <var>n</var> be a positive integer. Consider **nim** positions where:
|
|
7
|
+
|
|
8
|
+
- There are <var>n</var> non-empty piles.
|
|
9
|
+
- Each pile has size less than 2<sup><var>n</var></sup>.
|
|
10
|
+
- No two piles have the same size.
|
|
11
|
+
|
|
12
|
+
Let W(<var>n</var>) be the number of winning nim positions satisfying the above conditions (a position is winning if the first player has a winning strategy). For example, W(1) = 1, W(2) = 6, W(3) = 168, W(5) = 19764360 and W(100) mod 1 000 000 007 = 384777056.
|
|
13
|
+
|
|
14
|
+
Find W(10 000 000) mod 1 000 000 007.
|
|
15
|
+
|
data/data/problems/41.yml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
:id: 41
|
|
3
3
|
:name: Pandigital prime
|
|
4
|
-
:url:
|
|
4
|
+
:url: https://projecteuler.net/problem=41
|
|
5
5
|
:content: |+
|
|
6
6
|
We shall say that an _n_-digit number is pandigital if it makes use of all the digits 1 to _n_ exactly once. For example, 2143 is a 4-digit pandigital and is also prime.
|
|
7
7
|
|
data/data/problems/410.yml
CHANGED
|
@@ -1,15 +1,14 @@
|
|
|
1
1
|
---
|
|
2
2
|
:id: 410
|
|
3
3
|
:name: Circle and tangent line
|
|
4
|
-
:url:
|
|
4
|
+
:url: https://projecteuler.net/problem=410
|
|
5
5
|
:content: "Let C be the circle with radius <var>r</var>, <var>x</var><sup>2</sup>
|
|
6
6
|
+ <var>y</var><sup>2</sup> = <var>r</var><sup>2</sup>. We choose two points P(<var>a</var>,
|
|
7
7
|
<var>b</var>) and Q(-<var>a</var>, <var>c</var>) so that the line passing through
|
|
8
8
|
P and Q is tangent to C.\n\nFor example, the quadruplet (<var>r</var>, <var>a</var>,
|
|
9
9
|
<var>b</var>, <var>c</var>) = (2, 6, 2, -7) satisfies this property.\n\nLet F(<var>R</var>,
|
|
10
10
|
<var>X</var>) be the number of the integer quadruplets (<var>r</var>, <var>a</var>,
|
|
11
|
-
<var>b</var>, <var>c</var>) with this property, and with 0
|
|
12
|
-
<var>
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
10<sup>9</sup>) + F(10<sup>9</sup>, 10<sup>8</sup>).\n\n"
|
|
11
|
+
<var>b</var>, <var>c</var>) with this property, and with 0 \\< <var>r</var> ≤ <var>R</var>
|
|
12
|
+
and 0 \\< <var>a</var> ≤ <var>X</var>.\n\nWe can verify that F(1, 5) = 10, F(2,
|
|
13
|
+
10) = 52 and F(10, 100) = 3384. \nFind F(10<sup>8</sup>, 10<sup>9</sup>) + F(10<sup>9</sup>,
|
|
14
|
+
10<sup>8</sup>).\n\n"
|
data/data/problems/411.yml
CHANGED
|
@@ -1,18 +1,15 @@
|
|
|
1
1
|
---
|
|
2
2
|
:id: 411
|
|
3
3
|
:name: Uphill paths
|
|
4
|
-
:url:
|
|
4
|
+
:url: https://projecteuler.net/problem=411
|
|
5
5
|
:content: "Let <var>n</var> be a positive integer. Suppose there are stations at the
|
|
6
6
|
coordinates (<var>x</var>, <var>y</var>) = (2<sup><var>i</var></sup> mod <var>n</var>,
|
|
7
|
-
3<sup><var>i</var></sup> mod <var>n</var>) for 0
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
48.\n\nFind  S(<var>k</var><sup>5</sup>) for
|
|
17
|
-
1  <var>k</var> 
|
|
18
|
-
30.\n\n"
|
|
7
|
+
3<sup><var>i</var></sup> mod <var>n</var>) for 0 ≤ <var>i</var> ≤ 2<var>n</var>.
|
|
8
|
+
We will consider stations with the same coordinates as the same station.\n\nWe wish
|
|
9
|
+
to form a path from (0, 0) to (<var>n</var>, <var>n</var>) such that the x and y
|
|
10
|
+
coordinates never decrease. \nLet S(<var>n</var>) be the maximum number of stations
|
|
11
|
+
such a path can pass through.\n\nFor example, if <var>n</var> = 22, there are 11
|
|
12
|
+
distinct stations, and a valid path can pass through at most 5 stations. Therefore,
|
|
13
|
+
S(22) = 5. The case is illustrated below, with an example of an optimal path:\n\n\n\nIt can also be verified that S(123) = 14 and
|
|
15
|
+
S(10000) = 48.\n\nFind ∑ S(<var>k</var><sup>5</sup>) for 1 ≤ <var>k</var> ≤ 30.\n\n"
|
data/data/problems/412.yml
CHANGED
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
---
|
|
2
2
|
:id: 412
|
|
3
3
|
:name: Gnomon numbering
|
|
4
|
-
:url:
|
|
5
|
-
:content: "For integers <var>m</var>, <var>n</var> (0
|
|
6
|
-
let L(<var>m</var
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
4
|
+
:url: https://projecteuler.net/problem=412
|
|
5
|
+
:content: "For integers <var>m</var>, <var>n</var> (0 ≤ <var>n</var> \\< <var>m</var>),
|
|
6
|
+
let L(<var>m</var>, <var>n</var>) be an <var>m</var>×<var>m</var> grid with
|
|
7
|
+
the top-right <var>n</var>×<var>n</var> grid removed.\n\nFor example, L(5, 3) looks
|
|
8
|
+
like this:\n\n\n\nWe want
|
|
9
|
+
to number each cell of L(<var>m</var>, <var>n</var>) with consecutive integers
|
|
10
10
|
1, 2, 3, ... such that the number in every cell is smaller than the number below
|
|
11
|
-
it and to the left of it.\n\nFor example, here are two valid numberings of L(5
|
|
11
|
+
it and to the left of it.\n\nFor example, here are two valid numberings of L(5, 3):\n\n\n\nLet LC(<var>m</var>, <var>n</var>) be the number
|
|
13
|
-
of valid numberings of L(<var>m</var>, <var>n</var>). \
|
|
14
|
-
LC(3
|
|
15
|
-
= 61251715.\n\nFind LC(10000
|
|
13
|
+
of valid numberings of L(<var>m</var>, <var>n</var>). \nIt can be verified that
|
|
14
|
+
LC(3, 0) = 42, LC(5, 3) = 250250, LC(6, 3) = 406029023400 and LC(10, 5)
|
|
15
|
+
mod 76543217 = 61251715.\n\nFind LC(10000, 5000) mod 76543217.\n\n"
|
data/data/problems/413.yml
CHANGED
|
@@ -1,13 +1,12 @@
|
|
|
1
1
|
---
|
|
2
2
|
:id: 413
|
|
3
3
|
:name: One-child Numbers
|
|
4
|
-
:url:
|
|
4
|
+
:url: https://projecteuler.net/problem=413
|
|
5
5
|
:content: "We say that a <var>d</var>-digit positive number (no leading zeros) is
|
|
6
6
|
a one-child number if exactly one of its sub-strings is divisible by <var>d</var>.\n\nFor
|
|
7
7
|
example, 5671 is a 4-digit one-child number. Among all its sub-strings 5, 6, 7,
|
|
8
|
-
1, 56, 67, 71, 567, 671 and 5671, only 56 is divisible by 4. \
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
F(10<sup>19</sup>).\n\n"
|
|
8
|
+
1, 56, 67, 71, 567, 671 and 5671, only 56 is divisible by 4. \nSimilarly, 104 is
|
|
9
|
+
a 3-digit one-child number because only 0 is divisible by 3. \n1132451 is a 7-digit
|
|
10
|
+
one-child number because only 245 is divisible by 7.\n\nLet F(<var>N</var>) be the
|
|
11
|
+
number of the one-child numbers less than <var>N</var>. \nWe can verify that F(10)
|
|
12
|
+
= 9, F(10<sup>3</sup>) = 389 and F(10<sup>7</sup>) = 277674.\n\nFind F(10<sup>19</sup>).\n\n"
|
data/data/problems/414.yml
CHANGED
|
@@ -1,33 +1,31 @@
|
|
|
1
1
|
---
|
|
2
2
|
:id: 414
|
|
3
3
|
:name: Kaprekar constant
|
|
4
|
-
:url:
|
|
4
|
+
:url: https://projecteuler.net/problem=414
|
|
5
5
|
:content: "6174 is a remarkable number; if we sort its digits in increasing order
|
|
6
6
|
and subtract that number from the number you get when you sort the digits in decreasing
|
|
7
|
-
order, we get 7641-1467=6174. \
|
|
8
|
-
|
|
9
|
-
end up with 6174 or immediately with 0 if all digits are equal. \n
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
\ \
|
|
13
|
-
|
|
14
|
-
is
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
<var>
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
the
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
\
|
|
32
|
-
for 2  k 
|
|
33
|
-
300. \n\rGive the last 18 digits as your answer.\n\n"
|
|
7
|
+
order, we get 7641-1467=6174. \nEven more remarkable is that if we start from any
|
|
8
|
+
4 digit number and repeat this process of sorting and subtracting, we'll eventually
|
|
9
|
+
end up with 6174 or immediately with 0 if all digits are equal. \n This also works
|
|
10
|
+
with numbers that have less than 4 digits if we pad the number with leading zeroes
|
|
11
|
+
until we have 4 digits. \nE.g. let's start with the number 0837: \n8730-0378=8352
|
|
12
|
+
\ \n8532-2358=6174\n\n6174 is called the **Kaprekar constant**. The process of sorting
|
|
13
|
+
and subtracting and repeating this until either 0 or the Kaprekar constant is reached
|
|
14
|
+
is called the **Kaprekar routine**.\n\nWe can consider the Kaprekar routine for
|
|
15
|
+
other bases and number of digits. \n Unfortunately, it is not guaranteed a Kaprekar
|
|
16
|
+
constant exists in all cases; either the routine can end up in a cycle for some
|
|
17
|
+
input numbers or the constant the routine arrives at can be different for different
|
|
18
|
+
input numbers. \nHowever, it can be shown that for 5 digits and a base b = 6t+3≠9,
|
|
19
|
+
a Kaprekar constant exists. \nE.g. base 15: (10,4,14,9,5)<sub>15</sub> \nbase
|
|
20
|
+
21: (14,6,20,13,7)<sub>21</sub>\n\nDefine <var>C<sub>b</sub></var> to be the Kaprekar
|
|
21
|
+
constant in base <var>b</var> for 5 digits. Define the function <var>sb(i)</var>
|
|
22
|
+
to be\n\n- 0 if i = <var>C<sub>b</sub></var> or if <var>i</var> written in base
|
|
23
|
+
<var>b</var> consists of 5 identical digits\n- the number of iterations it takes
|
|
24
|
+
the Kaprekar routine in base <var>b</var> to arrive at <var>C<sub>b</sub></var>,
|
|
25
|
+
otherwise\nNote that we can define <var>sb(i)</var> for all integers <var>i</var>
|
|
26
|
+
\\< <var>b</var><sup>5</sup>. If <var>i</var> written in base <var>b</var> takes
|
|
27
|
+
less than 5 digits, the number is padded with leading zero digits until we have
|
|
28
|
+
5 digits before applying the Kaprekar routine.\n\nDefine <var>S(b)</var> as the
|
|
29
|
+
sum of <var>sb(i)</var> for 0 \\< <var>i</var> \\< <var>b</var><sup>5</sup>. \nE.g.
|
|
30
|
+
S(15) = 5274369 \n S(111) = 400668930299\n\nFind the sum of S(6k+3) for 2 ≤ k ≤
|
|
31
|
+
300. \nGive the last 18 digits as your answer.\n\n"
|
data/data/problems/415.yml
CHANGED
|
@@ -1,16 +1,15 @@
|
|
|
1
1
|
---
|
|
2
2
|
:id: 415
|
|
3
3
|
:name: Titanic sets
|
|
4
|
-
:url:
|
|
5
|
-
:content:
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
1) and (2, 0) does not pass through any other point in S
|
|
9
|
-
|
|
10
|
-
through any two points in the set also passes through the other two
|
|
11
|
-
|
|
12
|
-
sets S whose every point (<var>x</var>, <var>y</var>) satisfies 0
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
<var>T</var>(10<sup>5</sup>) mod 10<sup>8</sup> = 63259062.\n\nFind <var>T</var>(10<sup>11</sup>) mod 10<sup>8</sup>.\n\n"
|
|
4
|
+
:url: https://projecteuler.net/problem=415
|
|
5
|
+
:content: |+
|
|
6
|
+
A set of lattice points S is called a _titanic set_ if there exists a line passing through exactly two points in S.
|
|
7
|
+
|
|
8
|
+
An example of a titanic set is S = {(0, 0), (0, 1), (0, 2), (1, 1), (2, 0), (1, 0)}, where the line passing through (0, 1) and (2, 0) does not pass through any other point in S.
|
|
9
|
+
|
|
10
|
+
On the other hand, the set {(0, 0), (1, 1), (2, 2), (4, 4)} is not a titanic set since the line passing through any two points in the set also passes through the other two.
|
|
11
|
+
|
|
12
|
+
For any positive integer <var>N</var>, let <var>T</var>(<var>N</var>) be the number of titanic sets S whose every point (<var>x</var>, <var>y</var>) satisfies 0 ≤ <var>x</var>, <var>y</var> ≤ <var>N</var>. It can be verified that <var>T</var>(1) = 11, <var>T</var>(2) = 494, <var>T</var>(4) = 33554178, <var>T</var>(111) mod 10<sup>8</sup> = 13500401 and <var>T</var>(10<sup>5</sup>) mod 10<sup>8</sup> = 63259062.
|
|
13
|
+
|
|
14
|
+
Find <var>T</var>(10<sup>11</sup>) mod 10<sup>8</sup>.
|
|
15
|
+
|
data/data/problems/416.yml
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
---
|
|
2
2
|
:id: 416
|
|
3
3
|
:name: A frog's trip
|
|
4
|
-
:url:
|
|
4
|
+
:url: https://projecteuler.net/problem=416
|
|
5
5
|
:content: "A row of <var>n</var> squares contains a frog in the leftmost square. By
|
|
6
6
|
successive jumps the frog goes to the rightmost square and then back to the leftmost
|
|
7
7
|
square. On the outward trip he jumps one, two or three squares to the right, and
|
|
8
8
|
on the homeward trip he jumps to the left in a similar manner. He cannot jump outside
|
|
9
9
|
the squares. He repeats the round-trip travel <var>m</var> times.\n\nLet F(<var>m</var>,
|
|
10
10
|
<var>n</var>) be the number of the ways the frog can travel so that at most one
|
|
11
|
-
square remains unvisited. \
|
|
12
|
-
|
|
13
|
-
|
|
11
|
+
square remains unvisited. \nFor example, F(1, 3) = 4, F(1, 4) = 15, F(1, 5) = 46,
|
|
12
|
+
F(2, 3) = 16 and F(2, 100) mod 10<sup>9</sup> = 429619151.\n\nFind the last 9 digits
|
|
13
|
+
of F(10, 10<sup>12</sup>).\n\n"
|
data/data/problems/417.yml
CHANGED
|
@@ -1,19 +1,17 @@
|
|
|
1
1
|
---
|
|
2
2
|
:id: 417
|
|
3
3
|
:name: Reciprocal cycles II
|
|
4
|
-
:url:
|
|
4
|
+
:url: https://projecteuler.net/problem=417
|
|
5
5
|
:content: "A unit fraction contains 1 in the numerator. The decimal representation
|
|
6
6
|
of the unit fractions with denominators 2 to 10 are given:\n\n> | <sup>1</sup>/<sub>2</sub>
|
|
7
|
-
|
|
|
8
|
-
|
|
|
9
|
-
|
|
|
10
|
-
|
|
|
11
|
-
|
|
|
12
|
-
It can be seen that <sup>1</sup>/<sub>7</sub>
|
|
13
|
-
fractions whose denominator has no other
|
|
14
|
-
|
|
15
|
-
unit fractions as 0.\n\nLet L(n)
|
|
16
|
-
are given that
|
|
17
|
-
|
|
18
|
-
L(n) for 3 
|
|
19
|
-
n  100 000 000\n\n"
|
|
7
|
+
| = | 0.5 |\n> | <sup>1</sup>/<sub>3</sub> | = | 0.(3) |\n> | <sup>1</sup>/<sub>4</sub>
|
|
8
|
+
| = | 0.25 |\n> | <sup>1</sup>/<sub>5</sub> | = | 0.2 |\n> | <sup>1</sup>/<sub>6</sub>
|
|
9
|
+
| = | 0.1(6) |\n> | <sup>1</sup>/<sub>7</sub> | = | 0.(142857) |\n>
|
|
10
|
+
| <sup>1</sup>/<sub>8</sub> | = | 0.125 |\n> | <sup>1</sup>/<sub>9</sub> |
|
|
11
|
+
= | 0.(1) |\n> | <sup>1</sup>/<sub>10</sub> | = | 0.1 |\n\nWhere 0.1(6)
|
|
12
|
+
means 0.166666..., and has a 1-digit recurring cycle. It can be seen that <sup>1</sup>/<sub>7</sub>
|
|
13
|
+
has a 6-digit recurring cycle.\n\nUnit fractions whose denominator has no other
|
|
14
|
+
prime factors than 2 and/or 5 are not considered to have a recurring cycle. \nWe
|
|
15
|
+
define the length of the recurring cycle of those unit fractions as 0.\n\nLet L(n)
|
|
16
|
+
denote the length of the recurring cycle of 1/n. You are given that ∑L(n) for 3
|
|
17
|
+
≤ n ≤ 1 000 000 equals 55535191115.\n\nFind ∑L(n) for 3 ≤ n ≤ 100 000 000\n\n"
|
data/data/problems/418.yml
CHANGED
|
@@ -1,13 +1,16 @@
|
|
|
1
1
|
---
|
|
2
2
|
:id: 418
|
|
3
3
|
:name: Factorisation triples
|
|
4
|
-
:url:
|
|
5
|
-
:content:
|
|
6
|
-
<var>b</var>, <var>c</var>) is called a _factorisation triple_ of <var>n</var> if
|
|
7
|
-
|
|
8
|
-
<var>
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
of <var>n</var> which minimises <var>c</var> / <var>a</var>. One can show that this
|
|
12
|
-
|
|
13
|
-
|
|
4
|
+
:url: https://projecteuler.net/problem=418
|
|
5
|
+
:content: |+
|
|
6
|
+
Let <var>n</var> be a positive integer. An integer triple (<var>a</var>, <var>b</var>, <var>c</var>) is called a _factorisation triple_ of <var>n</var> if:
|
|
7
|
+
|
|
8
|
+
- 1 ≤ <var>a</var> ≤ <var>b</var> ≤ <var>c</var>
|
|
9
|
+
- <var>a</var>·<var>b</var>·<var>c</var> = <var>n</var>.
|
|
10
|
+
|
|
11
|
+
Define <var>f</var>(<var>n</var>) to be <var>a</var> + <var>b</var> + <var>c</var> for the factorisation triple (<var>a</var>, <var>b</var>, <var>c</var>) of <var>n</var> which minimises <var>c</var> / <var>a</var>. One can show that this triple is unique.
|
|
12
|
+
|
|
13
|
+
For example, <var>f</var>(165) = 19, <var>f</var>(100100) = 142 and <var>f</var>(20!) = 4034872.
|
|
14
|
+
|
|
15
|
+
Find <var>f</var>(43!).
|
|
16
|
+
|
data/data/problems/419.yml
CHANGED
|
@@ -1,17 +1,15 @@
|
|
|
1
1
|
---
|
|
2
2
|
:id: 419
|
|
3
3
|
:name: Look and say sequence
|
|
4
|
-
:url:
|
|
4
|
+
:url: https://projecteuler.net/problem=419
|
|
5
5
|
:content: "The **look and say** sequence goes 1, 11, 21, 1211, 111221, 312211, 13112221,
|
|
6
|
-
1113213211, ... \
|
|
7
|
-
by describing the previous member in terms of consecutive digits. \
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
two and one one'
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
31254,
|
|
16
|
-
\ \n \rGive your answer modulo 2<sup>30</sup> and separate your values for A, B
|
|
17
|
-
and C by a comma. \n \rE.g. for n = 40 the answer would be 31254,20259,11625\n\n"
|
|
6
|
+
1113213211, ... \nThe sequence starts with 1 and all other members are obtained
|
|
7
|
+
by describing the previous member in terms of consecutive digits. \nIt helps to
|
|
8
|
+
do this out loud: \n1 is 'one one' → 11 \n11 is 'two ones' → 21 \n21 is 'one
|
|
9
|
+
two and one one' → 1211 \n1211 is 'one one, one two and two ones' → 111221 \n111221
|
|
10
|
+
is 'three ones, two twos and one one' → 312211 \n...\n\nDefine A(n), B(n) and C(n)
|
|
11
|
+
as the number of ones, twos and threes in the n'th element of the sequence respectively.
|
|
12
|
+
\ \nOne can verify that A(40) = 31254, B(40) = 20259 and C(40) = 11625.\n\nFind
|
|
13
|
+
A(n), B(n) and C(n) for n = 10<sup>12</sup>. \n Give your answer modulo 2<sup>30</sup>
|
|
14
|
+
and separate your values for A, B and C by a comma. \n E.g. for n = 40 the answer
|
|
15
|
+
would be 31254,20259,11625\n\n"
|
data/data/problems/42.yml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
:id: 42
|
|
3
3
|
:name: Coded triangle numbers
|
|
4
|
-
:url:
|
|
4
|
+
:url: https://projecteuler.net/problem=42
|
|
5
5
|
:content: |+
|
|
6
6
|
The _n_<sup>th</sup> term of the sequence of triangle numbers is given by, _t<sub>n</sub>_ = ½_n_(_n_+1); so the first ten triangle numbers are:
|
|
7
7
|
|
|
@@ -9,5 +9,5 @@
|
|
|
9
9
|
|
|
10
10
|
By converting each letter in a word to a number corresponding to its alphabetical position and adding these values we form a word value. For example, the word value for SKY is 19 + 11 + 25 = 55 = _t_<sub>10</sub>. If the word value is a triangle number then we shall call the word a triangle word.
|
|
11
11
|
|
|
12
|
-
Using [words.txt](project/
|
|
12
|
+
Using [words.txt](project/resources/p042_words.txt) (right click and 'Save Link/Target As...'), a 16K text file containing nearly two-thousand common English words, how many are triangle words?
|
|
13
13
|
|
data/data/problems/420.yml
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
---
|
|
2
2
|
:id: 420
|
|
3
3
|
:name: 2x2 positive integer matrix
|
|
4
|
-
:url:
|
|
4
|
+
:url: https://projecteuler.net/problem=420
|
|
5
5
|
:content: "A _positive integer matrix_ is a matrix whose elements are all positive
|
|
6
|
-
integers. \
|
|
7
|
-
|
|
8
|
-
}}/
|
|
9
|
-
integer matrices which have a <dfn title=\"the sum of the elements
|
|
10
|
-
less than <var>N</var> and which can be expressed
|
|
11
|
-
matrix in two different ways. \
|
|
12
|
-
F(10<sup>7</sup>).\n\n"
|
|
6
|
+
integers. \nSome positive integer matrices can be expressed as a square of a positive
|
|
7
|
+
integer matrix in two different ways. Here is an example:\n\n \n\nWe define F(<var>N</var>) as the number of the
|
|
9
|
+
2x2 positive integer matrices which have a <dfn title=\"the sum of the elements
|
|
10
|
+
on the main diagonal\">trace</dfn> less than <var>N</var> and which can be expressed
|
|
11
|
+
as a square of a positive integer matrix in two different ways. \nWe can verify
|
|
12
|
+
that F(50) = 7 and F(1000) = 1019.\n\nFind F(10<sup>7</sup>).\n\n"
|
data/data/problems/421.yml
CHANGED
|
@@ -1,17 +1,12 @@
|
|
|
1
1
|
---
|
|
2
2
|
:id: 421
|
|
3
3
|
:name: Prime factors of <var>n</var><sup>15</sup>+1
|
|
4
|
-
:url:
|
|
4
|
+
:url: https://projecteuler.net/problem=421
|
|
5
5
|
:content: "Numbers of the form <var>n</var><sup>15</sup>+1 are composite for every
|
|
6
|
-
integer <var>n</var>
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
<var>
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
images_dir }}/symbol_times.gif)13 211 241 2161 9091. \n\rSo <var>s</var>(10,100) = 31 and <var>s</var>(10,1000)
|
|
16
|
-
= 483. \n\nFind ∑ <var>s</var>(<var>n</var>,10<sup>8</sup>) for 1  <var>n</var>  10<sup>11</sup>.\n\n"
|
|
6
|
+
integer <var>n</var> \\> 1. \nFor positive integers <var>n</var> and <var>m</var>
|
|
7
|
+
let <var>s</var>(<var>n,m</var>) be defined as the sum of the _distinct_ prime factors
|
|
8
|
+
of <var>n</var><sup>15</sup>+1 not exceeding <var>m</var>.\n\nE.g. 2<sup>15</sup>+1
|
|
9
|
+
= 3×3×11×331. \nSo <var>s</var>(2,10) = 3 and <var>s</var>(2,1000) = 3+11+331 =
|
|
10
|
+
345. \n \nAlso 10<sup>15</sup>+1 = 7×11×13×211×241×2161×9091. \nSo <var>s</var>(10,100)
|
|
11
|
+
= 31 and <var>s</var>(10,1000) = 483. \n\nFind ∑ <var>s</var>(<var>n</var>,10<sup>8</sup>)
|
|
12
|
+
for 1 ≤ <var>n</var> ≤ 10<sup>11</sup>.\n\n"
|
data/data/problems/422.yml
CHANGED
|
@@ -1,20 +1,20 @@
|
|
|
1
1
|
---
|
|
2
2
|
:id: 422
|
|
3
3
|
:name: Sequence of points on a hyperbola
|
|
4
|
-
:url:
|
|
4
|
+
:url: https://projecteuler.net/problem=422
|
|
5
5
|
:content: "Let H be the hyperbola defined by the equation 12<var>x</var><sup>2</sup>
|
|
6
6
|
+ 7<var>x</var><var>y</var> - 12<var>y</var><sup>2</sup> = 625.\n\nNext, define
|
|
7
7
|
X as the point (7, 1). It can be seen that X is in H.\n\nNow we define a sequence
|
|
8
|
-
of points in H, {P<sub><var>i</var></sub> : <var>i</var>
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
8
|
+
of points in H, {P<sub><var>i</var></sub> : <var>i</var> ≥ 1}, as:\n\n- P<sub>1</sub>
|
|
9
|
+
= (13, 61/4).\n- P<sub>2</sub> = (-43/6, -4).\n- For <var>i</var> \\> 2, P<sub><var>i</var></sub>
|
|
10
|
+
is the unique point in H that is different from P<sub><var>i</var>-1</sub> and such
|
|
11
|
+
that line P<sub><var>i</var></sub>P<sub><var>i</var>-1</sub> is parallel to line
|
|
12
|
+
P<sub><var>i</var>-2</sub>X. It can be shown that P<sub><var>i</var></sub> is well-defined,
|
|
13
|
+
and that its coordinates are always rational.\n \n\nYou are given that P<sub>3</sub> = (-19/2, -229/24), P<sub>4</sub>
|
|
15
15
|
= (1267/144, -37/12) and P<sub>7</sub> = (17194218091/143327232, 274748766781/1719926784).\n\nFind
|
|
16
16
|
P<sub><var>n</var></sub> for <var>n</var> = 11<sup>14</sup> in the following format:
|
|
17
17
|
\ \nIf P<sub><var>n</var></sub> = (<var>a</var>/<var>b</var>, <var>c</var>/<var>d</var>)
|
|
18
18
|
where the fractions are in lowest terms and the denominators are positive, then
|
|
19
|
-
the answer is (<var>a</var> + <var>b</var> + <var>c</var> + <var>d</var>) mod 1
|
|
19
|
+
the answer is (<var>a</var> + <var>b</var> + <var>c</var> + <var>d</var>) mod 1 000 000 007.\n\nFor
|
|
20
20
|
<var>n</var> = 7, the answer would have been: 806236837.\n\n"
|
data/data/problems/423.yml
CHANGED
|
@@ -1,18 +1,17 @@
|
|
|
1
1
|
---
|
|
2
2
|
:id: 423
|
|
3
3
|
:name: Consecutive die throws
|
|
4
|
-
:url:
|
|
5
|
-
:content: "Let <var>n</var> be a positive integer. \
|
|
4
|
+
:url: https://projecteuler.net/problem=423
|
|
5
|
+
:content: "Let <var>n</var> be a positive integer. \nA 6-sided die is thrown <var>n</var>
|
|
6
6
|
times. Let <var>c</var> be the number of pairs of consecutive throws that give the
|
|
7
7
|
same value.\n\nFor example, if <var>n</var> = 7 and the values of the die throws
|
|
8
8
|
are (1,1,5,6,6,6,3), then the following pairs of consecutive throws give the same
|
|
9
|
-
value: \n
|
|
10
|
-
\ \
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
π(<var>n</var>) is the number of primes  <var>n</var>.\n\n"
|
|
9
|
+
value: \n(<u>1,1</u>,5,6,6,6,3) \n(1,1,5,<u>6,6</u>,6,3) \n(1,1,5,6,<u>6,6</u>,3)
|
|
10
|
+
\ \nTherefore, <var>c</var> = 3 for (1,1,5,6,6,6,3).\n\nDefine C(<var>n</var>) as
|
|
11
|
+
the number of outcomes of throwing a 6-sided die <var>n</var> times such that <var>c</var>
|
|
12
|
+
does not exceed π(<var>n</var>).<sup>1</sup> \nFor example, C(3) = 216, C(4) =
|
|
13
|
+
1290, C(11) = 361912500 and C(24) = 4727547363281250000.\n\nDefine S(<var>L</var>)
|
|
14
|
+
as ∑ C(<var>n</var>) for 1 ≤ <var>n</var> ≤ <var>L</var>. \nFor example, S(50)
|
|
15
|
+
mod 1 000 000 007 = 832833871.\n\nFind S(50 000 000) mod
|
|
16
|
+
1 000 000 007.\n\n<sup>1</sup> π denotes the **prime-counting function**
|
|
17
|
+
, i.e. π(<var>n</var>) is the number of primes ≤ <var>n</var>.\n\n"
|