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/316.yml
CHANGED
|
@@ -1,23 +1,24 @@
|
|
|
1
1
|
---
|
|
2
2
|
:id: 316
|
|
3
3
|
:name: Numbers in decimal expansions
|
|
4
|
-
:url:
|
|
4
|
+
:url: https://projecteuler.net/problem=316
|
|
5
5
|
:content: "Let <var>p</var> = <var>p<sub><font size=\"-2\">1</font></sub> p<sub><font
|
|
6
6
|
size=\"-2\">2</font></sub> p<sub><font size=\"-2\">3</font></sub></var> ... be an
|
|
7
7
|
infinite sequence of random digits, selected from {0,1,2,3,4,5,6,7,8,9} with equal
|
|
8
|
-
probability. \
|
|
8
|
+
probability. \nIt can be seen that <var>p</var> corresponds to the real number
|
|
9
9
|
0.<var>p<sub><font size=\"-2\">1</font></sub> p<sub><font size=\"-2\">2</font></sub>
|
|
10
|
-
p<sub><font size=\"-2\">3</font></sub></var> .... \
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
10
|
+
p<sub><font size=\"-2\">3</font></sub></var> .... \nIt can also be seen that choosing
|
|
11
|
+
a random real number from the interval [0,1) is equivalent to choosing an infinite
|
|
12
|
+
sequence of random digits selected from {0,1,2,3,4,5,6,7,8,9} with equal probability.\n\nFor
|
|
13
|
+
any positive integer <var>n</var> with <var>d</var> decimal digits, let <var>k</var>
|
|
14
|
+
be the smallest index such that \n<var>p<sub><small>k</small>, </sub></var><var>p<sub><small>k+1</small></sub></var>,
|
|
15
|
+
...<var>p<sub><small>k+d-1</small></sub></var> are the decimal digits of <var>n</var>,
|
|
16
|
+
in the same order. \nAlso, let <var>g</var>(<var>n</var>) be the expected value
|
|
17
|
+
of <var>k</var>; it can be proven that <var>g</var>(<var>n</var>) is always finite
|
|
18
|
+
and, interestingly, always an integer number.\n\nFor example, if <var>n</var> =
|
|
19
|
+
535, then \nfor <var>p</var> = 31415926 **535** 897...., we get <var>k</var> =
|
|
20
|
+
9 \nfor <var>p</var> = 35528714365004956000049084876408468 **535** 4..., we get
|
|
21
|
+
<var>k</var> = 36 \netc and we find that <var>g</var>(535) = 1008.\n\nGiven that
|
|
22
|
+
, find \n\n<u><i>Note</i></u>:  represents the floor function.\n"
|
data/data/problems/317.yml
CHANGED
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
---
|
|
2
2
|
:id: 317
|
|
3
3
|
:name: Firecracker
|
|
4
|
-
:url:
|
|
5
|
-
:content:
|
|
6
|
-
into a large number of very small fragments, which move in every direction; all
|
|
7
|
-
|
|
8
|
-
move without air resistance, in a uniform gravitational field with g=9.81 m/s<sup>2</sup
|
|
9
|
-
|
|
10
|
-
reaching the ground.
|
|
4
|
+
:url: https://projecteuler.net/problem=317
|
|
5
|
+
:content: |+
|
|
6
|
+
A firecracker explodes at a height of 100 m above level ground. It breaks into a large number of very small fragments, which move in every direction; all of them have the same initial velocity of 20 m/s.
|
|
7
|
+
|
|
8
|
+
We assume that the fragments move without air resistance, in a uniform gravitational field with g=9.81 m/s<sup>2</sup>.
|
|
9
|
+
|
|
10
|
+
Find the volume (in m<sup>3</sup>) of the region through which the fragments move before reaching the ground. Give your answer rounded to four decimal places.
|
|
11
|
+
|
data/data/problems/318.yml
CHANGED
|
@@ -1,32 +1,17 @@
|
|
|
1
1
|
---
|
|
2
2
|
:id: 318
|
|
3
3
|
:name: 2011 nines
|
|
4
|
-
:url:
|
|
5
|
-
:content: "Consider the real number
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
=
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
= 9313929.99999989263... \n\r( 2+ 3)<sup>16</sup> = 92198401.99999998915...\n\nIt looks
|
|
20
|
-
like that the number of consecutive nines at the beginning of the fractional part
|
|
21
|
-
of these powers is non-decreasing. \n\rIn fact it can be proven that the fractional
|
|
22
|
-
part of ( 2+ 3)<sup>2n</sup>
|
|
23
|
-
approaches 1 for large n.\n\nConsider all real numbers of the form p+ q with p and q positive
|
|
25
|
-
integers and p q, such that the fractional part
|
|
26
|
-
\rof ( p+ q)<sup>2n</sup>
|
|
27
|
-
approaches 1 for large n.\n\nLet C(p,q,n) be the number of consecutive nines at
|
|
28
|
-
the beginning of the fractional part of \n ( p+
|
|
29
|
-
q)<sup>2n</sup>.\n\nLet N(p,q) be the minimal
|
|
30
|
-
value of n such that C(p,q,n)  2011.\n\nFind
|
|
31
|
-
N(p,q) for p+q 
|
|
32
|
-
2011.\n\n"
|
|
4
|
+
:url: https://projecteuler.net/problem=318
|
|
5
|
+
:content: "Consider the real number √2+√3. \nWhen we calculate the even powers of
|
|
6
|
+
√2+√3 we get: \n(√2+√3)<sup>2</sup> = 9.898979485566356... \n(√2+√3)<sup>4</sup>
|
|
7
|
+
= 97.98979485566356... \n(√2+√3)<sup>6</sup> = 969.998969071069263... \n(√2+√3)<sup>8</sup>
|
|
8
|
+
= 9601.99989585502907... \n(√2+√3)<sup>10</sup> = 95049.999989479221... \n(√2+√3)<sup>12</sup>
|
|
9
|
+
= 940897.9999989371855... \n(√2+√3)<sup>14</sup> = 9313929.99999989263... \n(√2+√3)<sup>16</sup>
|
|
10
|
+
= 92198401.99999998915...\n\nIt looks like that the number of consecutive nines
|
|
11
|
+
at the beginning of the fractional part of these powers is non-decreasing. \nIn
|
|
12
|
+
fact it can be proven that the fractional part of (√2+√3)<sup>2n</sup> approaches
|
|
13
|
+
1 for large n.\n\nConsider all real numbers of the form √p+√q with p and q positive
|
|
14
|
+
integers and p\\<q, such that the fractional part of (√p+√q)<sup>2n</sup> approaches
|
|
15
|
+
1 for large n.\n\nLet C(p,q,n) be the number of consecutive nines at the beginning
|
|
16
|
+
of the fractional part of \n (√p+√q)<sup>2n</sup>.\n\nLet N(p,q) be the minimal
|
|
17
|
+
value of n such that C(p,q,n) ≥ 2011.\n\nFind ∑N(p,q) for p+q ≤ 2011.\n\n"
|
data/data/problems/319.yml
CHANGED
|
@@ -1,18 +1,16 @@
|
|
|
1
1
|
---
|
|
2
2
|
:id: 319
|
|
3
3
|
:name: Bounded Sequences
|
|
4
|
-
:url:
|
|
4
|
+
:url: https://projecteuler.net/problem=319
|
|
5
5
|
:content: "Let <var>x</var><sub>1</sub>, <var>x</var><sub>2</sub>,..., <var>x<sub>n</sub></var>
|
|
6
6
|
be a sequence of length <var>n</var> such that:\n\n- <var>x</var><sub>1</sub> =
|
|
7
|
-
2\n- for all 1
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
<var>j</var>
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
denote the number of such sequences of length <var>n</var>. \n\rYou are given that
|
|
17
|
-
<var>t</var>(10) = 86195 and <var>t</var>(20) = 5227991891.\n\nFind <var>t</var>(10<sup>10</sup>)
|
|
7
|
+
2\n- for all 1 \\< <var>i</var> ≤ <var>n</var> : <var>x</var><sub><var>i</var>-<i>1</i></sub>
|
|
8
|
+
\\< <var>x<sub>i</sub></var>\n- for all <var>i</var> and <var>j</var> with 1 ≤ <var>i</var>,
|
|
9
|
+
<var>j</var> ≤ <var>n</var> : (<var>x<sub>i</sub></var>)<var><sup> j</sup></var>
|
|
10
|
+
\\< (<var>x<sub>j</sub></var> + 1)<var><sup>i</sup></var>\n\nThere are only five
|
|
11
|
+
such sequences of length 2, namely: {2,4}, {2,5}, {2,6}, {2,7} and {2,8}. \nThere
|
|
12
|
+
are 293 such sequences of length 5; three examples are given below: \n{2,5,11,25,55},
|
|
13
|
+
{2,6,14,36,88}, {2,8,22,64,181}.\n\nLet <var>t</var>(<var>n</var>) denote the number
|
|
14
|
+
of such sequences of length <var>n</var>. \nYou are given that <var>t</var>(10)
|
|
15
|
+
= 86195 and <var>t</var>(20) = 5227991891.\n\nFind <var>t</var>(10<sup>10</sup>)
|
|
18
16
|
and give your answer modulo 10<sup>9</sup>.\n\n"
|
data/data/problems/32.yml
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
---
|
|
2
2
|
:id: 32
|
|
3
3
|
:name: Pandigital products
|
|
4
|
-
:url:
|
|
4
|
+
:url: https://projecteuler.net/problem=32
|
|
5
5
|
:content: |+
|
|
6
6
|
We shall say that an <var>n</var>-digit number is pandigital if it makes use of all the digits 1 to <var>n</var> exactly once; for example, the 5-digit number, 15234, is 1 through 5 pandigital.
|
|
7
7
|
|
|
8
|
-
The product 7254 is unusual, as the identity, 39
|
|
8
|
+
The product 7254 is unusual, as the identity, 39 × 186 = 7254, containing multiplicand, multiplier, and product is 1 through 9 pandigital.
|
|
9
9
|
|
|
10
10
|
Find the sum of all products whose multiplicand/multiplier/product identity can be written as a 1 through 9 pandigital.
|
|
11
11
|
|
data/data/problems/320.yml
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
---
|
|
2
2
|
:id: 320
|
|
3
3
|
:name: Factorials divisible by a huge integer
|
|
4
|
-
:url:
|
|
4
|
+
:url: https://projecteuler.net/problem=320
|
|
5
5
|
:content: |+
|
|
6
6
|
Let N(<var>i</var>) be the smallest integer <var>n</var> such that <var>n</var>! is divisible by (<var>i</var>!)<sup>1234567890</sup>
|
|
7
7
|
|
|
8
|
-
Let S(<var>u</var>)
|
|
8
|
+
Let S(<var>u</var>)=∑N(<var>i</var>) for 10 ≤ <var>i</var> ≤ <var>u</var>.
|
|
9
9
|
|
|
10
10
|
S(1000)=614538266565663.
|
|
11
11
|
|
data/data/problems/321.yml
CHANGED
|
@@ -1,17 +1,18 @@
|
|
|
1
1
|
---
|
|
2
2
|
:id: 321
|
|
3
3
|
:name: Swapping Counters
|
|
4
|
-
:url:
|
|
4
|
+
:url: https://projecteuler.net/problem=321
|
|
5
5
|
:content: "A horizontal row comprising of 2<var>n</var> + 1 squares has <var>n</var>
|
|
6
6
|
red counters placed at one end and <var>n</var> blue counters at the other end,
|
|
7
7
|
being separated by a single empty square in the centre. For example, when <var>n</var>
|
|
8
|
-
= 3.\n\n  or can jump over another counter
|
|
10
|
-
as the square next to that counter is unoccupied.\n\n  represent the
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
of <var>n</var> for which
|
|
16
|
-
|
|
17
|
-
sum of the first forty terms
|
|
8
|
+
= 3.\n\n \n\nA
|
|
9
|
+
counter can move from one square to the next (slide) or can jump over another counter
|
|
10
|
+
(hop) as long as the square next to that counter is unoccupied.\n\n \n\nLet M(<var>n</var>) represent the
|
|
12
|
+
minimum number of moves/actions to completely reverse the positions of the coloured
|
|
13
|
+
counters; that is, move all the red counters to the right and all the blue counters
|
|
14
|
+
to the left.\n\nIt can be verified M(3) = 15, which also happens to be a triangle
|
|
15
|
+
number.\n\nIf we create a sequence based on the values of <var>n</var> for which
|
|
16
|
+
M(<var>n</var>) is a triangle number then the first five terms would be: \n1, 3,
|
|
17
|
+
10, 22, and 63, and their sum would be 99.\n\nFind the sum of the first forty terms
|
|
18
|
+
of this sequence.\n\n"
|
data/data/problems/322.yml
CHANGED
|
@@ -1,10 +1,9 @@
|
|
|
1
1
|
---
|
|
2
2
|
:id: 322
|
|
3
3
|
:name: Binomial coefficients divisible by 10
|
|
4
|
-
:url:
|
|
4
|
+
:url: https://projecteuler.net/problem=322
|
|
5
5
|
:content: "Let T(<var>m</var>, <var>n</var>) be the number of the binomial coefficients
|
|
6
6
|
<sup><var>i</var></sup>C<sub><var>n</var></sub> that are divisible by 10 for <var>n</var>
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
T(10<sup>18</sup>, 10<sup>12</sup>-10).\n\n"
|
|
7
|
+
≤ <var>i</var> \\< <var>m</var>(<var>i</var>, <var>m</var> and <var>n</var> are
|
|
8
|
+
positive integers). \nYou are given that T(10<sup>9</sup>, 10<sup>7</sup>-10) =
|
|
9
|
+
989697000.\n\nFind T(10<sup>18</sup>, 10<sup>12</sup>-10).\n\n"
|
data/data/problems/323.yml
CHANGED
|
@@ -1,15 +1,13 @@
|
|
|
1
1
|
---
|
|
2
2
|
:id: 323
|
|
3
3
|
:name: Bitwise-OR operations on random integers
|
|
4
|
-
:url:
|
|
4
|
+
:url: https://projecteuler.net/problem=323
|
|
5
5
|
:content: "Let <var>y</var><sub>0</sub>, <var>y</var><sub>1</sub>, <var>y</var><sub>2</sub>,...
|
|
6
|
-
be a sequence of random unsigned 32 bit integers \n
|
|
7
|
-
|
|
8
|
-
2<sup>32</sup>, every value equally likely).\n\nFor the sequence <var>x<sub>i</sub></var>
|
|
6
|
+
be a sequence of random unsigned 32 bit integers \n(i.e. 0 ≤ <var>y<sub>i</sub></var>
|
|
7
|
+
\\< 2<sup>32</sup>, every value equally likely).\n\nFor the sequence <var>x<sub>i</sub></var>
|
|
9
8
|
the following recursion is given:\n\n- <var>x</var><sub>0</sub> = 0 and\n- <var>x<sub>i</sub></var>
|
|
10
9
|
= <var>x</var><sub><var>i</var>-<i>1</i></sub> **|** <var>y</var><sub><var>i</var>-<i>1</i></sub>,
|
|
11
|
-
for <var>i</var>
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
to 10 digits after the decimal point.\n\n"
|
|
10
|
+
for <var>i</var> \\> 0. ( **|** is the bitwise-OR operator)\n\nIt can be seen that
|
|
11
|
+
eventually there will be an index N such that <var>x<sub>i</sub></var> = 2<sup>32</sup>
|
|
12
|
+
-1 (a bit-pattern of all ones) for all <var>i</var> ≥ N.\n\nFind the expected value
|
|
13
|
+
of N. \nGive your answer rounded to 10 digits after the decimal point.\n\n"
|
data/data/problems/324.yml
CHANGED
|
@@ -1,13 +1,11 @@
|
|
|
1
1
|
---
|
|
2
2
|
:id: 324
|
|
3
3
|
:name: Building a tower
|
|
4
|
-
:url:
|
|
4
|
+
:url: https://projecteuler.net/problem=324
|
|
5
5
|
:content: "Let <var>f</var>(<var>n</var>) represent the number of ways one can fill
|
|
6
|
-
a 3
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
mod <var>q</var> = 24806056, \n<var>f</var>(10<sup>6</sup>) mod <var>q</var> =
|
|
13
|
-
30808124.\n\nFind <var>f</var>(10<sup>10000</sup>) mod 100000007.\n\n"
|
|
6
|
+
a 3×3×<var>n</var> tower with blocks of 2×1×1. \nYou're allowed to rotate the
|
|
7
|
+
blocks in any way you like; however, rotations, reflections etc of the tower itself
|
|
8
|
+
are counted as distinct.\n\nFor example (with <var>q</var> = 100000007) : \n<var>f</var>(2)
|
|
9
|
+
= 229, \n<var>f</var>(4) = 117805, \n<var>f</var>(10) mod <var>q</var> = 96149360,
|
|
10
|
+
\ \n<var>f</var>(10<sup>3</sup>) mod <var>q</var> = 24806056, \n<var>f</var>(10<sup>6</sup>)
|
|
11
|
+
mod <var>q</var> = 30808124.\n\nFind <var>f</var>(10<sup>10000</sup>) mod 100000007.\n\n"
|
data/data/problems/325.yml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
:id: 325
|
|
3
3
|
:name: Stone Game II
|
|
4
|
-
:url:
|
|
4
|
+
:url: https://projecteuler.net/problem=325
|
|
5
5
|
:content: |+
|
|
6
6
|
A game is played with two piles of stones and two players. At her turn, a player removes a number of stones from the larger pile. The number of stones she removes must be a positive multiple of the number of stones in the smaller pile.
|
|
7
7
|
|
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
|
|
14
14
|
A _losing configuration_ is one where the second player can force a win, no matter what the first player does. For example, (2,3) and (3,4) are losing configurations: any legal move leaves a winning configuration for the second player.
|
|
15
15
|
|
|
16
|
-
Define S(<var>N</var>) as the sum of (<var>x</var><sub><var>i</var></sub>+<var>y</var><sub><var>i</var></sub>) for all losing configurations (<var>x</var><sub><var>i</var></sub>,<var>y</var><sub><var>i</var></sub>), 0
|
|
16
|
+
Define S(<var>N</var>) as the sum of (<var>x</var><sub><var>i</var></sub>+<var>y</var><sub><var>i</var></sub>) for all losing configurations (<var>x</var><sub><var>i</var></sub>,<var>y</var><sub><var>i</var></sub>), 0 \< <var>x</var><sub><var>i</var></sub> \< <var>y</var><sub><var>i</var></sub> ≤ <var>N</var>. We can verify that S(10) = 211 and S(10<sup>4</sup>) = 230312207313.
|
|
17
17
|
|
|
18
18
|
Find S(10<sup>16</sup>) mod 7<sup>10</sup>.
|
|
19
19
|
|
data/data/problems/326.yml
CHANGED
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
---
|
|
2
2
|
:id: 326
|
|
3
3
|
:name: Modulo Summations
|
|
4
|
-
:url:
|
|
4
|
+
:url: https://projecteuler.net/problem=326
|
|
5
5
|
:content: |+
|
|
6
|
-
Let <var>a<sub>n</sub></var> be a sequence recursively defined by: .
|
|
7
7
|
|
|
8
8
|
So the first 10 elements of <var>a<sub>n</sub></var> are: 1,1,0,3,0,3,5,4,1,9.
|
|
9
9
|
|
|
10
10
|
Let <var>f</var>(<var>N,M</var>) represent the number of pairs (<var>p,q</var>) such that:
|
|
11
11
|
|
|
12
|
-

|
|
13
13
|
|
|
14
14
|
It can be seen that <var>f</var>(10,10)=4 with the pairs (3,3), (5,5), (7,9) and (9,10).
|
|
15
15
|
|
data/data/problems/327.yml
CHANGED
|
@@ -1,23 +1,23 @@
|
|
|
1
1
|
---
|
|
2
2
|
:id: 327
|
|
3
3
|
:name: Rooms of Doom
|
|
4
|
-
:url:
|
|
4
|
+
:url: https://projecteuler.net/problem=327
|
|
5
5
|
:content: "A series of three rooms are connected to each other by automatic doors.\n\n
|
|
6
|
-
 contains
|
|
10
|
-
detect that you are holding more than three security cards
|
|
11
|
-
unattended security card on the floor, then all the doors will
|
|
12
|
-
locked. However, each room contains a box where you may safely
|
|
13
|
-
of security cards for use at a later stage.\n\nIf you simply tried
|
|
14
|
-
the rooms one at a time then as you entered room 3 you would have
|
|
15
|
-
cards and would be trapped in that room forever!\n\nHowever, if you
|
|
16
|
-
the storage boxes, then escape is possible. For example, you could enter
|
|
17
|
-
using your first card, place one card in the storage box, and use your third
|
|
18
|
-
to exit the room back to the start. Then after collecting three more cards
|
|
19
|
-
the dispensing machine you could use one to enter room 1 and collect the card
|
|
20
|
-
placed in the box a moment ago. You now have three cards again and will be able
|
|
6
|
+
\n\nEach door
|
|
7
|
+
is operated by a security card. Once you enter a room the door automatically closes
|
|
8
|
+
and that security card cannot be used again. A machine at the start will dispense
|
|
9
|
+
an unlimited number of cards, but each room (including the starting room) contains
|
|
10
|
+
scanners and if they detect that you are holding more than three security cards
|
|
11
|
+
or if they detect an unattended security card on the floor, then all the doors will
|
|
12
|
+
become permanently locked. However, each room contains a box where you may safely
|
|
13
|
+
store any number of security cards for use at a later stage.\n\nIf you simply tried
|
|
14
|
+
to travel through the rooms one at a time then as you entered room 3 you would have
|
|
15
|
+
used all three cards and would be trapped in that room forever!\n\nHowever, if you
|
|
16
|
+
make use of the storage boxes, then escape is possible. For example, you could enter
|
|
17
|
+
room 1 using your first card, place one card in the storage box, and use your third
|
|
18
|
+
card to exit the room back to the start. Then after collecting three more cards
|
|
19
|
+
from the dispensing machine you could use one to enter room 1 and collect the card
|
|
20
|
+
you placed in the box a moment ago. You now have three cards again and will be able
|
|
21
21
|
to travel through the remaining three doors. This method allows you to travel through
|
|
22
22
|
all three rooms using six security cards in total.\n\nIt is possible to travel through
|
|
23
23
|
six rooms using a total of 123 security cards while carrying a maximum of 3 cards.\n\nLet
|
|
@@ -25,9 +25,6 @@
|
|
|
25
25
|
<var>R</var> be the number of rooms to travel through.\n\nLet M(<var>C</var>,<var>R</var>)
|
|
26
26
|
be the minimum number of cards required from the dispensing machine to travel through
|
|
27
27
|
<var>R</var> rooms carrying up to a maximum of <var>C</var> cards at any time.\n\nFor
|
|
28
|
-
example, M(3,6)=123 and M(4,6)=23. \nAnd, ΣM(<var>C</var>,6)=146 for 3
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
<var>C</var>  10.\n\nFind ΣM(<var>C</var>,30)
|
|
32
|
-
for 3  <var>C</var> 
|
|
33
|
-
40.\n\n"
|
|
28
|
+
example, M(3,6)=123 and M(4,6)=23. \nAnd, ΣM(<var>C</var>,6)=146 for 3 ≤ <var>C</var>
|
|
29
|
+
≤ 4.\n\nYou are given that ΣM(<var>C</var>,10)=10382 for 3 ≤ <var>C</var> ≤ 10.\n\nFind
|
|
30
|
+
ΣM(<var>C</var>,30) for 3 ≤ <var>C</var> ≤ 40.\n\n"
|
data/data/problems/328.yml
CHANGED
|
@@ -1,33 +1,33 @@
|
|
|
1
1
|
---
|
|
2
2
|
:id: 328
|
|
3
3
|
:name: Lowest-cost Search
|
|
4
|
-
:url:
|
|
4
|
+
:url: https://projecteuler.net/problem=328
|
|
5
5
|
:content: "We are trying to find a hidden number selected from the set of integers
|
|
6
|
-
{1, 2, ..., <var>n</var>} by asking questions.
|
|
7
|
-
|
|
6
|
+
{1, 2, ..., <var>n</var>} by asking questions. Each number (question) we ask, has
|
|
7
|
+
a <u>cost equal to the number asked</u> and we get one of three possible answers:\n\n-
|
|
8
8
|
\"Your guess is lower than the hidden number\", or\n- \"Yes, that's it!\", or\n-
|
|
9
9
|
\"Your guess is higher than the hidden number\".\n\nGiven the value of <var>n</var>,
|
|
10
10
|
an _optimal strategy_ minimizes the total cost (i.e. the sum of all the questions
|
|
11
11
|
asked) <u>for the worst possible case</u>. E.g.\n\nIf <var>n</var>=3, the best we
|
|
12
|
-
can do is obviously to ask the number \" **2
|
|
12
|
+
can do is obviously to ask the number \" **2**\". The answer will immediately lead
|
|
13
13
|
us to find the hidden number (at a total cost = 2).\n\nIf <var>n</var>=8, we might
|
|
14
14
|
decide to use a \"binary search\" type of strategy: Our first question would be
|
|
15
|
-
\" **4
|
|
16
|
-
questions. \
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
15
|
+
\" **4**\" and if the hidden number is higher than 4 we will need one or two additional
|
|
16
|
+
questions. \nLet our second question be \" **6**\". If the hidden number is still
|
|
17
|
+
higher than 6, we will need a third question in order to discriminate between 7
|
|
18
|
+
and 8. \nThus, our third question will be \" **7**\" and the total cost for this
|
|
19
|
+
worst-case scenario will be 4+6+7= **17**.\n\nWe can improve considerably the worst-case
|
|
20
|
+
cost for <var>n</var>=8, by asking \" **5**\" as our first question. \nIf we are
|
|
21
|
+
told that the hidden number is higher than 5, our second question will be \" **7**\",
|
|
22
|
+
then we'll know for certain what the hidden number is (for a total cost of 5+7=
|
|
23
|
+
**12** ). \nIf we are told that the hidden number is lower than 5, our second question
|
|
24
|
+
will be \" **3**\" and if the hidden number is lower than 3 our third question will
|
|
25
|
+
be \" **1**\", giving a total cost of 5+3+1= **9**. \nSince **12** \\> **9** ,
|
|
26
|
+
the worst-case cost for this strategy is **12**. That's better than what we achieved
|
|
27
|
+
previously with the \"binary search\" strategy; it is also better than or equal
|
|
28
|
+
to any other strategy. \nSo, in fact, we have just described an optimal strategy
|
|
29
|
+
for <var>n</var>=8.\n\nLet C(<var>n</var>) be the worst-case cost achieved by an
|
|
30
|
+
optimal strategy for <var>n</var>, as described above. \nThus C(1) = 0, C(2) =
|
|
31
|
+
1, C(3) = 2 and C(8) = 12. \nSimilarly, C(100) = 400 and C(<var>n</var>) = 17575.\n\nFind C(<var>n</var>).\n\n"
|
data/data/problems/329.yml
CHANGED
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
---
|
|
2
2
|
:id: 329
|
|
3
3
|
:name: Prime Frog
|
|
4
|
-
:url:
|
|
5
|
-
:content: "Susan has a prime frog. \
|
|
6
|
-
numbered 1 to 500
|
|
4
|
+
:url: https://projecteuler.net/problem=329
|
|
5
|
+
:content: "Susan has a prime frog. \nHer frog is jumping around over 500 squares
|
|
6
|
+
numbered 1 to 500. He can only jump one square to the left or to the right, with
|
|
7
7
|
equal probability, and he cannot jump outside the range [1;500]. \n(if it lands
|
|
8
8
|
at either end, it automatically jumps to the only available square on the next move.)\n\nWhen
|
|
9
9
|
he is on a square with a prime number on it, he croaks 'P' (PRIME) with probability
|
|
10
10
|
2/3 or 'N' (NOT PRIME) with probability 1/3 just before jumping to the next square.
|
|
11
|
-
\ \
|
|
11
|
+
\ \nWhen he is on a square with a number on it that is not a prime he croaks 'P'
|
|
12
12
|
with probability 1/3 or 'N' with probability 2/3 just before jumping to the next
|
|
13
13
|
square.\n\nGiven that the frog's starting position is random with the same probability
|
|
14
14
|
for every square, and given that she listens to his first 15 croaks, what is the
|
|
15
|
-
probability that she hears the sequence PPPPNNPPPNPPNPN?\n\
|
|
16
|
-
a fraction p/q in reduced form.\
|
|
15
|
+
probability that she hears the sequence PPPPNNPPPNPPNPN?\n\nGive your answer as
|
|
16
|
+
a fraction p/q in reduced form.\n"
|
data/data/problems/33.yml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
:id: 33
|
|
3
|
-
:name: Digit
|
|
4
|
-
:url:
|
|
3
|
+
:name: Digit cancelling fractions
|
|
4
|
+
:url: https://projecteuler.net/problem=33
|
|
5
5
|
:content: |+
|
|
6
6
|
The fraction <sup>49</sup>/<sub>98</sub> is a curious fraction, as an inexperienced mathematician in attempting to simplify it may incorrectly believe that <sup>49</sup>/<sub>98</sub> = <sup>4</sup>/<sub>8</sub>, which is correct, is obtained by cancelling the 9s.
|
|
7
7
|
|