euler-manager 0.1.1 → 0.2.0
Sign up to get free protection for your applications and to get access to all the features.
- 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/330.yml
CHANGED
@@ -1,20 +1,16 @@
|
|
1
1
|
---
|
2
2
|
:id: 330
|
3
3
|
:name: Euler's Number
|
4
|
-
:url:
|
5
|
-
:content: "\
|
6
|
-
for all integers <var>n</var> as follows:\
|
4
|
+
:url: https://projecteuler.net/problem=330
|
5
|
+
:content: "\r An infinite sequence of real numbers <var>a</var>(<var>n</var>) is defined
|
6
|
+
for all integers <var>n</var> as follows:\n ![p330_formula.gif]({{ images_dir }}/p330_formula.gif)\n\nFor
|
7
7
|
example,\n\n| <var>a</var>(0) = | \n\n| 1 |\n| 1! |\n\n | + | \n\n| 1 |\n| 2! |\n\n
|
8
|
-
| + | \n\n| 1 |\n| 3! |\n\n | + ... = e
|
9
|
-
1 |\n
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
A(<var>n</var>) and B(<var>n</var>). \r |\n\n| For example <var>a</var>(10) = \r
|
18
|
-
| \n\n| 328161643 e ![−]({{ images_dir }}/symbol_minus.gif) 652694486 |\n| 10! |\n\n
|
19
|
-
| . |\n\nFind A(10<sup>9</sup>) + B(10<sup>9</sup>) and give your answer mod 77
|
20
|
-
777 777.\n\n"
|
8
|
+
| + | \n\n| 1 |\n| 3! |\n\n | + ... = e − 1 |\n\n| <var>a</var>(1) = | \n\n| e −
|
9
|
+
1 |\n| 1! |\n\n | + | \n\n| 1 |\n| 2! |\n\n | + | \n\n| 1 |\n| 3! |\n\n | + ...
|
10
|
+
= 2e − 3 |\n\n| <var>a</var>(2) = | \n\n| 2e − 3 |\n| 1! |\n\n | + | \n\n| e − 1
|
11
|
+
|\n| 2! |\n\n | + | \n\n| 1 |\n| 3! |\n\n | + ... = | \n\n| 7 |\n| 2 |\n\n | e −
|
12
|
+
6 |\n\nwith e = 2.7182818... being Euler's constant.\n\n| It can be shown that <var>a</var>(<var>n</var>)
|
13
|
+
is of the form | \n\n| A(<var>n</var>) e + B(<var>n</var>) |\n| <var>n</var>! |\n\n
|
14
|
+
| for integers A(<var>n</var>) and B(<var>n</var>). |\n\n| For example <var>a</var>(10)
|
15
|
+
= | \n\n| 328161643 e − 652694486 |\n| 10! |\n\n | . |\n\nFind A(10<sup>9</sup>)
|
16
|
+
+ B(10<sup>9</sup>) and give your answer mod 77 777 777.\n\n"
|
data/data/problems/331.yml
CHANGED
@@ -1,22 +1,20 @@
|
|
1
1
|
---
|
2
2
|
:id: 331
|
3
3
|
:name: Cross flips
|
4
|
-
:url:
|
5
|
-
:content: "<var>N</var
|
6
|
-
|
7
|
-
|
8
|
-
same column as this disk: thus 2 ![×]({{ images_dir }}/symbol_times.gif)<var>N</var>-1
|
4
|
+
:url: https://projecteuler.net/problem=331
|
5
|
+
:content: "<var>N</var>×<var>N</var> disks are placed on a square game board. Each
|
6
|
+
disk has a black side and white side.\n\nAt each turn, you may choose a disk and
|
7
|
+
flip all the disks in the same row and the same column as this disk: thus 2×<var>N</var>-1
|
9
8
|
disks are flipped. The game ends when all disks show their white side. The following
|
10
|
-
example shows a game on a 5 ![
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
and T(1 000)=395253.\n\nFind ![]({{ images_dir }}/p_331_crossflips2.gif).\n\n"
|
9
|
+
example shows a game on a 5×5 board.\n\n ![p331_crossflips3.gif]({{ images_dir }}/p331_crossflips3.gif)\n\nIt
|
10
|
+
can be proven that 3 is the minimal number of turns to finish this game.\n\nThe
|
11
|
+
bottom left disk on the <var>N</var>×<var>N</var> board has coordinates (0,0); \nthe
|
12
|
+
bottom right disk has coordinates (<var>N</var>-1,0) and the top left disk has coordinates
|
13
|
+
(0,<var>N</var>-1).\n\nLet C<sub><var>N</var></sub> be the following configuration
|
14
|
+
of a board with <var>N</var>×<var>N</var> disks: \nA disk at (<var>x</var>,<var>y</var>)
|
15
|
+
satisfying ![p331_crossflips1.gif]({{ images_dir }}/p331_crossflips1.gif), shows
|
16
|
+
its black side; otherwise, it shows its white side. C<sub>5</sub> is shown above.\n\nLet
|
17
|
+
T(<var>N</var>) be the minimal number of turns to finish a game starting from configuration
|
18
|
+
C<sub><var>N</var></sub> or 0 if configuration C<sub><var>N</var></sub> is unsolvable.
|
19
|
+
\ \nWe have shown that T(5)=3. You are also given that T(10)=29 and T(1 000)=395253.\n\nFind
|
20
|
+
![p331_crossflips2.gif]({{ images_dir }}/p331_crossflips2.gif).\n\n"
|
data/data/problems/332.yml
CHANGED
@@ -1,15 +1,15 @@
|
|
1
1
|
---
|
2
2
|
:id: 332
|
3
3
|
:name: Spherical triangles
|
4
|
-
:url:
|
4
|
+
:url: https://projecteuler.net/problem=332
|
5
5
|
:content: "A **spherical triangle** is a figure formed on the surface of a sphere
|
6
|
-
by three **great circular arcs** intersecting pairwise in three vertices.\n\n ![]({{
|
7
|
-
images_dir }}/
|
8
|
-
centre (0,0,0) and radius <var>r</var>. \
|
9
|
-
on the surface of C(<var>r</var>) with integer coordinates. \
|
10
|
-
be the set of spherical triangles with vertices in Z(<var>r</var>)
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
6
|
+
by three **great circular arcs** intersecting pairwise in three vertices.\n\n ![p332_spherical.jpg]({{
|
7
|
+
images_dir }}/p332_spherical.jpg)\n\nLet C(<var>r</var>) be the sphere with the
|
8
|
+
centre (0,0,0) and radius <var>r</var>. \nLet Z(<var>r</var>) be the set of points
|
9
|
+
on the surface of C(<var>r</var>) with integer coordinates. \nLet T(<var>r</var>)
|
10
|
+
be the set of spherical triangles with vertices in Z(<var>r</var>). Degenerate spherical
|
11
|
+
triangles, formed by three points on the same great arc, are <u>not</u> included
|
12
|
+
in T(<var>r</var>). \nLet A(<var>r</var>) be the area of the smallest spherical
|
13
|
+
triangle in T(<var>r</var>).\n\nFor example A(14) is 3.294040 rounded to six decimal
|
14
|
+
places.\n\nFind ![p332_sum.gif]({{ images_dir }}/p332_sum.gif) A(<var>r</var>).
|
15
15
|
Give your answer rounded to six decimal places.\n\n"
|
data/data/problems/333.yml
CHANGED
@@ -1,21 +1,20 @@
|
|
1
1
|
---
|
2
2
|
:id: 333
|
3
3
|
:name: Special partitions
|
4
|
-
:url:
|
4
|
+
:url: https://projecteuler.net/problem=333
|
5
5
|
:content: "All positive integers can be partitioned in such a way that each and every
|
6
6
|
term of the partition can be expressed as 2<sup>i</sup>x3<sup>j</sup>, where i,j
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
+ 2<sup>
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
+ 2<sup>
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
sum of the primes <var>q</var>
|
20
|
-
P(<var>q</var>)=1
|
21
|
-
images_dir }}/symbol_lt.gif)1000000 such that P(<var>q</var>)=1.\n\n"
|
7
|
+
≥ 0.\n\nLet's consider only those such partitions where none of the terms can divide
|
8
|
+
any of the other terms. \nFor example, the partition of 17 = 2 + 6 + 9 = (2<sup>1</sup>x3<sup>0</sup>
|
9
|
+
+ 2<sup>1</sup>x3<sup>1</sup> + 2<sup>0</sup>x3<sup>2</sup>) would not be valid
|
10
|
+
since 2 can divide 6. Neither would the partition 17 = 16 + 1 = (2<sup>4</sup>x3<sup>0</sup>
|
11
|
+
+ 2<sup>0</sup>x3<sup>0</sup>) since 1 can divide 16. The only valid partition of
|
12
|
+
17 would be 8 + 9 = (2<sup>3</sup>x3<sup>0</sup> + 2<sup>0</sup>x3<sup>2</sup>).\n\nMany
|
13
|
+
integers have more than one valid partition, the first being 11 having the following
|
14
|
+
two partitions. \n11 = 2 + 9 = (2<sup>1</sup>x3<sup>0</sup> + 2<sup>0</sup>x3<sup>2</sup>)
|
15
|
+
\ \n11 = 8 + 3 = (2<sup>3</sup>x3<sup>0</sup> + 2<sup>0</sup>x3<sup>1</sup>)\n\nLet's
|
16
|
+
define P(<var>n</var>) as the number of valid partitions of <var>n</var>. For example,
|
17
|
+
P(11) = 2.\n\nLet's consider only the prime integers <var>q</var> which would have
|
18
|
+
a single valid partition such as P(17).\n\nThe sum of the primes <var>q</var> \\<100
|
19
|
+
such that P(<var>q</var>)=1 equals 233.\n\nFind the sum of the primes <var>q</var>
|
20
|
+
\\<1000000 such that P(<var>q</var>)=1.\n\n"
|
data/data/problems/334.yml
CHANGED
@@ -1,27 +1,25 @@
|
|
1
1
|
---
|
2
2
|
:id: 334
|
3
3
|
:name: Spilling the beans
|
4
|
-
:url:
|
4
|
+
:url: https://projecteuler.net/problem=334
|
5
5
|
:content: "In Plato's heaven, there exist an infinite number of bowls in a straight
|
6
|
-
line. \
|
6
|
+
line. \nEach bowl either contains some or none of a finite number of beans. \nA
|
7
7
|
child plays a game, which allows only one kind of move: removing two beans from
|
8
8
|
any bowl, and putting one in each of the two adjacent bowls. \n The game ends when
|
9
9
|
each bowl contains either one or no beans.\n\nFor example, consider two adjacent
|
10
10
|
bowls containing 2 and 3 beans respectively, all other bowls being empty. The following
|
11
|
-
eight moves will finish the game:\n\n ![]({{ images_dir }}/
|
12
|
-
are given the following sequences:\n\n| <var>t</var><sub><i>0</i></sub> = 123456
|
13
|
-
|\n\n| <var>t</var><sub><i>i</i></sub> =
|
14
|
-
| \n\n| | \n\n| <var>t</var><sub><i>i-1</i></sub> |\n| 2 |\n\n |
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
| |
|
19
|
-
|
20
|
-
|
21
|
-
=
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
<var>b</var><sub><i>1500</i></sub> beans respectively, all other bowls being empty.
|
27
|
-
Find how many moves it takes before the game ends.\n\n"
|
11
|
+
eight moves will finish the game:\n\n ![p334_beans.gif]({{ images_dir }}/p334_beans.gif)\n\nYou
|
12
|
+
are given the following sequences:\n\n| <var>t</var><sub><i>0</i></sub> = 123456.
|
13
|
+
|\n\n| <var>t</var><sub><i>i</i></sub> = | ![p334_cases.gif]({{ images_dir }}/p334_cases.gif)
|
14
|
+
| \n\n| | \n\n| <var>t</var><sub><i>i-1</i></sub> |\n| 2 |\n\n | , | | if <var>t</var><sub><i>i-1</i></sub>
|
15
|
+
is even |\n| ![p334_lfloor.gif]({{ images_dir }}/p334_lfloor.gif) | \n\n| <var>t</var><sub><i>i-1</i></sub>
|
16
|
+
|\n| 2 |\n\n | ![p334_rfloor.gif]({{ images_dir }}/p334_rfloor.gif) | 926252, |
|
17
|
+
if <var>t</var><sub><i>i-1</i></sub> is odd |\n\n | |\n| | | where ⌊<var>x</var>⌋
|
18
|
+
is the floor function |\n| | | and ![p334_oplus.gif]({{ images_dir }}/p334_oplus.gif)
|
19
|
+
is the bitwise XOR operator. |\n\n| <var>b</var><sub><i>i</i></sub> = ( <var>t</var><sub><i>i</i></sub>
|
20
|
+
mod 2<sup>11</sup>) + 1. |\n\nThe first two terms of the last sequence are <var>b</var><sub><i>1</i></sub>
|
21
|
+
= 289 and <var>b</var><sub><i>2</i></sub> = 145. \nIf we start with <var>b</var><sub><i>1</i></sub>
|
22
|
+
and <var>b</var><sub><i>2</i></sub> beans in two adjacent bowls, 3419100 moves would
|
23
|
+
be required to finish the game.\n\nConsider now 1500 adjacent bowls containing <var>b</var><sub><i>1</i></sub>,
|
24
|
+
<var>b</var><sub><i>2</i></sub>,..., <var>b</var><sub><i>1500</i></sub> beans respectively,
|
25
|
+
all other bowls being empty. Find how many moves it takes before the game ends.\n\n"
|
data/data/problems/335.yml
CHANGED
@@ -1,15 +1,15 @@
|
|
1
1
|
---
|
2
2
|
:id: 335
|
3
3
|
:name: Gathering the beans
|
4
|
-
:url:
|
4
|
+
:url: https://projecteuler.net/problem=335
|
5
5
|
:content: |+
|
6
6
|
Whenever Peter feels bored, he places some bowls, containing one bean each, in a circle. After this, he takes all the beans out of a certain bowl and drops them one by one in the bowls going clockwise. He repeats this, starting from the bowl he dropped the last bean in, until the initial situation appears again. For example with 5 bowls he acts as follows:
|
7
7
|
|
8
|
-
![]({{ images_dir }}/
|
8
|
+
![p335_mancala.gif]({{ images_dir }}/p335_mancala.gif)
|
9
9
|
|
10
10
|
So with 5 bowls it takes Peter 15 moves to return to the initial situation.
|
11
11
|
|
12
12
|
Let <var>M</var>(<var>x</var>) represent the number of moves required to return to the initial situation, starting with <var>x</var> bowls. Thus, <var>M</var>(5) = 15. It can also be verified that <var>M</var>(100) = 10920.
|
13
13
|
|
14
|
-
Find ![]({{ images_dir }}/
|
14
|
+
Find ![p335_sum.gif]({{ images_dir }}/p335_sum.gif)<var>M</var>(2<sup><var>k</var></sup>+1). Give your answer modulo 7<sup>9</sup>.
|
15
15
|
|
data/data/problems/336.yml
CHANGED
@@ -1,23 +1,23 @@
|
|
1
1
|
---
|
2
2
|
:id: 336
|
3
3
|
:name: Maximix Arrangements
|
4
|
-
:url:
|
4
|
+
:url: https://projecteuler.net/problem=336
|
5
5
|
:content: "A train is used to transport four carriages in the order: ABCD. However,
|
6
6
|
sometimes when the train arrives to collect the carriages they are not in the correct
|
7
|
-
order. \
|
7
|
+
order. \nTo rearrange the carriages they are all shunted on to a large rotating
|
8
8
|
turntable. After the carriages are uncoupled at a specific point the train moves
|
9
9
|
off the turntable pulling the carriages still attached with it. The remaining carriages
|
10
10
|
are rotated 180 degrees. All of the carriages are then rejoined and this process
|
11
11
|
is repeated as often as necessary in order to obtain the least number of uses of
|
12
|
-
the turntable. \
|
12
|
+
the turntable. \nSome arrangements, such as ADCB, can be solved easily: the carriages
|
13
13
|
are separated between A and D, and after DCB are rotated the correct order has been
|
14
14
|
achieved.\n\nHowever, Simple Simon, the train driver, is not known for his efficiency,
|
15
15
|
so he always solves the problem by initially getting carriage A in the correct place,
|
16
16
|
then carriage B, and so on.\n\nUsing four carriages, the worst possible arrangements
|
17
17
|
for Simon, which we shall call _maximix arrangements_, are DACB and DBAC; each requiring
|
18
18
|
him five rotations (although, using the most efficient approach, they could be solved
|
19
|
-
using just three rotations). The process he uses for DACB is shown below.\n\n ![]({{
|
20
|
-
images_dir }}/
|
19
|
+
using just three rotations). The process he uses for DACB is shown below.\n\n ![p336_maximix.gif]({{
|
20
|
+
images_dir }}/p336_maximix.gif)\n\nIt can be verified that there are 24 maximix
|
21
21
|
arrangements for six carriages, of which the tenth lexicographic maximix arrangement
|
22
22
|
is DFAECB.\n\nFind the 2011<sup>th</sup> lexicographic maximix arrangement for eleven
|
23
23
|
carriages.\n\n"
|
data/data/problems/337.yml
CHANGED
@@ -1,13 +1,12 @@
|
|
1
1
|
---
|
2
2
|
:id: 337
|
3
3
|
:name: Totient Stairstep Sequences
|
4
|
-
:url:
|
4
|
+
:url: https://projecteuler.net/problem=337
|
5
5
|
:content: "Let {a<sub>1</sub>, a<sub>2</sub>,..., a<sub><var>n</var></sub>} be an
|
6
6
|
integer sequence of length <var>n</var> such that:\n\n- a<sub>1</sub> = 6\n- for
|
7
|
-
all 1
|
8
|
-
|
9
|
-
be the number of such sequences with a<sub><var>n</var></sub>
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
**Euler's totient function** .\n\n"
|
7
|
+
all 1 ≤ <var>i</var> \\< <var>n</var> : φ(a<sub><var>i</var></sub>) \\< φ(a<sub><var>i</var>+1</sub>)
|
8
|
+
\\< a<sub><var>i</var></sub> \\< a<sub><var>i</var>+1</sub><sup>1</sup>\n\nLet S(<var>N</var>)
|
9
|
+
be the number of such sequences with a<sub><var>n</var></sub> ≤ <var>N</var>. \nFor
|
10
|
+
example, S(10) = 4: {6}, {6, 8}, {6, 8, 9} and {6, 10}. \nWe can verify that S(100)
|
11
|
+
= 482073668 and S(10 000) mod 10<sup>8</sup> = 73808307.\n\nFind S(20 000 000) mod
|
12
|
+
10<sup>8</sup>.\n\n<sup>1</sup> φ denotes **Euler's totient function**.\n\n"
|
data/data/problems/338.yml
CHANGED
@@ -1,28 +1,22 @@
|
|
1
1
|
---
|
2
2
|
:id: 338
|
3
3
|
:name: Cutting Rectangular Grid Paper
|
4
|
-
:url:
|
4
|
+
:url: https://projecteuler.net/problem=338
|
5
5
|
:content: "A rectangular sheet of grid paper with integer dimensions <var>w</var>
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
<var>
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
<var>N</var>, let G(<var>N</var>) be the sum of F(<var>w</var>,<var>h</var>) for
|
24
|
-
all pairs <var>w</var> and <var>h</var> which satisfy 0 ![<]({{ images_dir }}/symbol_lt.gif)
|
25
|
-
<var>h</var> ![≤]({{ images_dir }}/symbol_le.gif) <var>w</var> ![≤]({{ images_dir
|
26
|
-
}}/symbol_le.gif) <var>N</var>. \n\rWe can verify that G(10) = 55, G(10<sup>3</sup>)
|
27
|
-
= 971745 and G(10<sup>5</sup>) = 9992617687.\n\nFind G(10<sup>12</sup>). Give your
|
28
|
-
answer modulo 10<sup>8</sup>.\n\n"
|
6
|
+
× <var>h</var> is given. Its grid spacing is 1. \nWhen we cut the sheet along the
|
7
|
+
grid lines into two pieces and rearrange those pieces without overlap, we can make
|
8
|
+
new rectangles with different dimensions.\n\nFor example, from a sheet with dimensions
|
9
|
+
9 × 4 , we can make rectangles with dimensions 18 × 2, 12 × 3 and 6 × 6 by cutting
|
10
|
+
and rearranging as below:\n\n ![p338_gridpaper.gif]({{ images_dir }}/p338_gridpaper.gif)
|
11
|
+
\ \n\nSimilarly, from a sheet with dimensions 9 × 8 , we can make rectangles with
|
12
|
+
dimensions 18 × 4 and 12 × 6 .\n\nFor a pair <var>w</var> and <var>h</var>, let
|
13
|
+
F(<var>w</var>,<var>h</var>) be the number of distinct rectangles that can be made
|
14
|
+
from a sheet with dimensions <var>w</var> × <var>h</var> . \nFor example, F(2,1)
|
15
|
+
= 0, F(2,2) = 1, F(9,4) = 3 and F(9,8) = 2. \nNote that rectangles congruent to
|
16
|
+
the initial one are not counted in F(<var>w</var>,<var>h</var>). \nNote also that
|
17
|
+
rectangles with dimensions <var>w</var> × <var>h</var> and dimensions <var>h</var>
|
18
|
+
× <var>w</var> are not considered distinct.\n\nFor an integer <var>N</var>, let
|
19
|
+
G(<var>N</var>) be the sum of F(<var>w</var>,<var>h</var>) for all pairs <var>w</var>
|
20
|
+
and <var>h</var> which satisfy 0 \\< <var>h</var> ≤ <var>w</var> ≤ <var>N</var>.
|
21
|
+
\ \nWe can verify that G(10) = 55, G(10<sup>3</sup>) = 971745 and G(10<sup>5</sup>)
|
22
|
+
= 9992617687.\n\nFind G(10<sup>12</sup>). Give your answer modulo 10<sup>8</sup>.\n\n"
|
data/data/problems/339.yml
CHANGED
@@ -1,17 +1,17 @@
|
|
1
1
|
---
|
2
2
|
:id: 339
|
3
3
|
:name: Peredur fab Efrawg
|
4
|
-
:url:
|
4
|
+
:url: https://projecteuler.net/problem=339
|
5
5
|
:content: "_\"And he came towards a valley, through which ran a river; and the borders
|
6
6
|
of the valley were wooded, and on each side of the river were level meadows. And
|
7
7
|
on one side of the river he saw a flock of white sheep, and on the other a flock
|
8
8
|
of black sheep. And whenever one of the white sheep bleated, one of the black sheep
|
9
9
|
would cross over and become white; and when one of the black sheep bleated, one
|
10
|
-
of the white sheep would cross over and become black.\"_ \n
|
10
|
+
of the white sheep would cross over and become black.\"_ \n[en.wikisource.org](http://en.wikisource.org/wiki/The_Mabinogion/Peredur_the_Son_of_Evrawc)\n\nInitially
|
11
11
|
each flock consists of <var>n</var> sheep. Each sheep (regardless of colour) is
|
12
12
|
equally likely to be the next sheep to bleat. After a sheep has bleated and a sheep
|
13
13
|
from the other flock has crossed over, Peredur may remove a number of white sheep
|
14
14
|
in order to maximize the expected final number of black sheep. Let E(<var>n</var>)
|
15
15
|
be the expected final number of black sheep if Peredur uses an optimal strategy.\n\nYou
|
16
|
-
are given that E(5) = 6.871346 rounded to 6 places behind the decimal point. \
|
16
|
+
are given that E(5) = 6.871346 rounded to 6 places behind the decimal point. \nFind
|
17
17
|
E(10 000) and give your answer rounded to 6 places behind the decimal point.\n\n"
|
data/data/problems/34.yml
CHANGED
data/data/problems/340.yml
CHANGED
@@ -1,11 +1,11 @@
|
|
1
1
|
---
|
2
2
|
:id: 340
|
3
3
|
:name: Crazy Function
|
4
|
-
:url:
|
4
|
+
:url: https://projecteuler.net/problem=340
|
5
5
|
:content: "For fixed integers a, b, c, define the _crazy function_ F(<var>n</var>)
|
6
|
-
as follows: \
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
2000
|
11
|
-
|
6
|
+
as follows: \nF(<var>n</var>) = <var>n</var> - c for all <var>n</var> \\> b \nF(<var>n</var>)
|
7
|
+
= F(a + F(a + F(a + F(a + <var>n</var>)))) for all <var>n</var> ≤ b.\n\nAlso, define
|
8
|
+
S(a, b, c) = ![p340_formula.gif]({{ images_dir }}/p340_formula.gif).\n\nFor example,
|
9
|
+
if a = 50, b = 2000 and c = 40, then F(0) = 3240 and F(2000) = 2040. \nAlso, S(50,
|
10
|
+
2000, 40) = 5204240.\n\nFind the last 9 digits of S(21<sup>7</sup>, 7<sup>21</sup>,
|
11
|
+
12<sup>7</sup>).\n\n"
|
data/data/problems/341.yml
CHANGED
@@ -1,14 +1,13 @@
|
|
1
1
|
---
|
2
2
|
:id: 341
|
3
3
|
:name: Golomb's self-describing sequence
|
4
|
-
:url:
|
4
|
+
:url: https://projecteuler.net/problem=341
|
5
5
|
:content: "The **Golomb's self-describing sequence** {G(<var>n</var>)} is the only
|
6
6
|
nondecreasing sequence of natural numbers such that <var>n</var> appears exactly
|
7
7
|
G(<var>n</var>) times in the sequence. The values of G(<var>n</var>) for the first
|
8
8
|
few <var>n</var> are\n\n| <var>n</var> | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10
|
9
9
|
| 11 | 12 | 13 | 14 | 15 | … |\n| G(<var>n</var>) | 1 | 2 | 2 | 3 | 3 | 4 | 4 |
|
10
10
|
4 | 5 | 5 | 5 | 6 | 6 | 6 | 6 | … |\n\nYou are given that G(10<sup>3</sup>) = 86,
|
11
|
-
G(10<sup>6</sup>) = 6137. \
|
12
|
-
= 153506976 for 1
|
13
|
-
|
14
|
-
images_dir }}/symbol_le.gif) <var>n</var> ![<]({{ images_dir }}/symbol_lt.gif) 10<sup>6</sup>.\n\n"
|
11
|
+
G(10<sup>6</sup>) = 6137. \nYou are also given that ΣG(<var>n</var><sup>3</sup>)
|
12
|
+
= 153506976 for 1 ≤ <var>n</var> \\< 10<sup>3</sup>.\n\nFind ΣG(<var>n</var><sup>3</sup>)
|
13
|
+
for 1 ≤ <var>n</var> \\< 10<sup>6</sup>.\n\n"
|
data/data/problems/342.yml
CHANGED
@@ -1,12 +1,9 @@
|
|
1
1
|
---
|
2
2
|
:id: 342
|
3
3
|
:name: The totient of a square is a cube
|
4
|
-
:url:
|
5
|
-
:content: "Consider the number 50. \
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
is a cube.\n\nFind the sum of all numbers n, 1 < n ![<]({{ images_dir }}/symbol_lt.gif)
|
11
|
-
10<sup>10</sup> such that φ(n<sup>2</sup>) is a cube.\n\n<sup>1</sup> φ denotes
|
12
|
-
**Euler's totient function** .\n\n"
|
4
|
+
:url: https://projecteuler.net/problem=342
|
5
|
+
:content: "Consider the number 50. \n50<sup>2</sup> = 2500 = 2<sup>2</sup> × 5<sup>4</sup>,
|
6
|
+
so φ(2500) = 2 × 4 × 5<sup>3</sup> = 8 × 5<sup>3</sup> = 2<sup>3</sup> × 5<sup>3</sup>.
|
7
|
+
<sup>1</sup> \nSo 2500 is a square and φ(2500) is a cube.\n\nFind the sum of all
|
8
|
+
numbers n, 1 < n \\< 10<sup>10</sup> such that φ(n<sup>2</sup>) is a cube.\n\n<sup>1</sup>
|
9
|
+
φ denotes **Euler's totient function**.\n\n"
|
data/data/problems/343.yml
CHANGED
@@ -1,18 +1,13 @@
|
|
1
1
|
---
|
2
2
|
:id: 343
|
3
3
|
:name: Fractional Sequences
|
4
|
-
:url:
|
4
|
+
:url: https://projecteuler.net/problem=343
|
5
5
|
:content: "For any positive integer <var>k</var>, a finite sequence a<sub><var>i</var></sub>
|
6
|
-
of fractions x<sub><var>i</var></sub>/y<sub><var>i</var></sub> is defined by: \
|
7
|
-
= 1/<var>k</var> and \
|
8
|
-
reduced to lowest terms for <var>i</var
|
6
|
+
of fractions x<sub><var>i</var></sub>/y<sub><var>i</var></sub> is defined by: \na<sub>1</sub>
|
7
|
+
= 1/<var>k</var> and \na<sub><var>i</var></sub> = (x<sub><var>i</var>-1</sub>+1)/(y<sub><var>i</var>-1</sub>-1)
|
8
|
+
reduced to lowest terms for <var>i</var>\\>1. \nWhen a<sub><var>i</var></sub> reaches
|
9
9
|
some integer <var>n</var>, the sequence stops. (That is, when y<sub><var>i</var></sub>=1.)
|
10
|
-
\ \
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
5/2 ![→]({{ images_dir }}/symbol_maps.gif) 6/1 = 6\n\nSo f(20) = 6.\n\nAlso f(1)
|
15
|
-
= 1, f(2) = 2, f(3) = 1 and Σf(<var>k</var><sup>3</sup>) = 118937 for 1 ![≤]({{
|
16
|
-
images_dir }}/symbol_le.gif) <var>k</var> ![≤]({{ images_dir }}/symbol_le.gif) 100.\n\nFind
|
17
|
-
Σf(<var>k</var><sup>3</sup>) for 1 ![≤]({{ images_dir }}/symbol_le.gif) <var>k</var>
|
18
|
-
![≤]({{ images_dir }}/symbol_le.gif) 2 ![×]({{ images_dir }}/symbol_times.gif)10<sup>6</sup>.\n\n"
|
10
|
+
\ \nDefine f(<var>k</var>) = <var>n</var>. \nFor example, for <var>k</var> = 20:\n\n1/20
|
11
|
+
→ 2/19 → 3/18 = 1/6 → 2/5 → 3/4 → 4/3 → 5/2 → 6/1 = 6\n\nSo f(20) = 6.\n\nAlso f(1)
|
12
|
+
= 1, f(2) = 2, f(3) = 1 and Σf(<var>k</var><sup>3</sup>) = 118937 for 1 ≤ <var>k</var>
|
13
|
+
≤ 100.\n\nFind Σf(<var>k</var><sup>3</sup>) for 1 ≤ <var>k</var> ≤ 2×10<sup>6</sup>.\n\n"
|
data/data/problems/344.yml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
:id: 344
|
3
3
|
:name: Silver dollar game
|
4
|
-
:url:
|
4
|
+
:url: https://projecteuler.net/problem=344
|
5
5
|
:content: "One variant of N.G. de Bruijn's **silver dollar** game can be described
|
6
6
|
as follows:\n\nOn a strip of squares a number of coins are placed, at most one coin
|
7
7
|
per square. Only one coin, called the **silver dollar** , has any value. Two players
|
@@ -11,10 +11,10 @@
|
|
11
11
|
or over another coin.\n\nAlternatively, the player can choose to make the _special_
|
12
12
|
move of pocketing the leftmost coin rather than making a regular move. If no regular
|
13
13
|
moves are possible, the player is forced to pocket the leftmost coin.\n\nThe winner
|
14
|
-
is the player who pockets the silver dollar.\n\n ![]({{ images_dir
|
15
|
-
\
|
16
|
-
first player can force a win no matter what the second player
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
099 (= 1 000 003 · 1 000 033).\n\n"
|
14
|
+
is the player who pockets the silver dollar.\n\n ![p344_silverdollar.gif]({{ images_dir
|
15
|
+
}}/p344_silverdollar.gif) \n\nA _winning configuration_ is an arrangement of coins
|
16
|
+
on the strip where the first player can force a win no matter what the second player
|
17
|
+
does.\n\nLet W(<var>n</var>,<var>c</var>) be the number of winning configurations
|
18
|
+
for a strip of <var>n</var> squares, <var>c</var> worthless coins and one silver
|
19
|
+
dollar.\n\nYou are given that W(10,2) = 324 and W(100,10) = 1514704946113500.\n\nFind
|
20
|
+
W(1 000 000, 100) modulo the semiprime 1000 036 000 099 (= 1 000 003 · 1 000 033).\n\n"
|