euler-manager 0.0.5 → 0.0.6
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +11 -1
- data/Rakefile +3 -0
- data/bin/euler +28 -9
- data/config/config.rb +1 -0
- data/data/answers.yml +430 -456
- data/data/images/blackdot.gif +0 -0
- data/data/images/bracket_left.gif +0 -0
- data/data/images/bracket_right.gif +0 -0
- data/data/images/p295_lenticular.gif +0 -0
- data/data/images/p296_bisector.gif +0 -0
- data/data/images/p303_formula100.gif +0 -0
- data/data/images/p303_formula10000.gif +0 -0
- data/data/images/p392_gridlines.png +0 -0
- data/data/images/p400_winning.png +0 -0
- data/data/images/p411_longpath.png +0 -0
- data/data/images/p412_table53.png +0 -0
- data/data/images/p412_tablenums.png +0 -0
- data/data/images/p422_hyperbola.gif +0 -0
- data/data/images/p428_necklace.png +0 -0
- data/data/images/p_015.gif +0 -0
- data/data/images/p_068_1.gif +0 -0
- data/data/images/p_068_2.gif +0 -0
- data/data/images/p_085.gif +0 -0
- data/data/images/p_086.gif +0 -0
- data/data/images/p_090.gif +0 -0
- data/data/images/p_091_1.gif +0 -0
- data/data/images/p_091_2.gif +0 -0
- data/data/images/p_107_1.gif +0 -0
- data/data/images/p_107_2.gif +0 -0
- data/data/images/p_109.gif +0 -0
- data/data/images/p_126.gif +0 -0
- data/data/images/p_128.gif +0 -0
- data/data/images/p_138.gif +0 -0
- data/data/images/p_139.gif +0 -0
- data/data/images/p_143_torricelli.gif +0 -0
- data/data/images/p_144_1.gif +0 -0
- data/data/images/p_144_2.gif +0 -0
- data/data/images/p_147.gif +0 -0
- data/data/images/p_150.gif +0 -0
- data/data/images/p_151.gif +0 -0
- data/data/images/p_152_sum.gif +0 -0
- data/data/images/p_153_formule1.gif +0 -0
- data/data/images/p_153_formule2.gif +0 -0
- data/data/images/p_153_formule5.gif +0 -0
- data/data/images/p_153_formule6.gif +0 -0
- data/data/images/p_154_pyramid.gif +0 -0
- data/data/images/p_155_capacitors1.gif +0 -0
- data/data/images/p_155_capsform.gif +0 -0
- data/data/images/p_155_capsmu.gif +0 -0
- data/data/images/p_161_k9.gif +0 -0
- data/data/images/p_161_trio1.gif +0 -0
- data/data/images/p_161_trio3.gif +0 -0
- data/data/images/p_163.gif +0 -0
- data/data/images/p_173_square_laminas.gif +0 -0
- data/data/images/p_177_quad.gif +0 -0
- data/data/images/p_184.gif +0 -0
- data/data/images/p_189_colours.gif +0 -0
- data/data/images/p_189_grid.gif +0 -0
- data/data/images/p_194_Fig.png +0 -0
- data/data/images/p_194_GraphA.png +0 -0
- data/data/images/p_194_GraphB.png +0 -0
- data/data/images/p_199_circles_in_circles.gif +0 -0
- data/data/images/p_201_laserbeam.gif +0 -0
- data/data/images/p_208_robotwalk.gif +0 -0
- data/data/images/p_215_crackfree.gif +0 -0
- data/data/images/p_220.gif +0 -0
- data/data/images/p_226_formula.gif +0 -0
- data/data/images/p_226_scoop2.gif +0 -0
- data/data/images/p_228.png +0 -0
- data/data/images/p_237.gif +0 -0
- data/data/images/p_244_example.gif +0 -0
- data/data/images/p_244_start.gif +0 -0
- data/data/images/p_244_target.gif +0 -0
- data/data/images/p_246_anim.gif +0 -0
- data/data/images/p_246_ellipse.gif +0 -0
- data/data/images/p_247_hypersquares.gif +0 -0
- data/data/images/p_251_cardano.gif +0 -0
- data/data/images/p_252_convexhole.gif +0 -0
- data/data/images/p_255_Example.gif +0 -0
- data/data/images/p_255_Heron.gif +0 -0
- data/data/images/p_256_tatami3.gif +0 -0
- data/data/images/p_257_bisector.gif +0 -0
- data/data/images/p_262_formula1.gif +0 -0
- data/data/images/p_264_TriangleCentres.gif +0 -0
- data/data/images/p_265_BinaryCircles.gif +0 -0
- data/data/images/p_270_CutSquare.gif +0 -0
- data/data/images/p_275_sculptures2.gif +0 -0
- data/data/images/p_281_pizza.gif +0 -0
- data/data/images/p_282_formula.gif +0 -0
- data/data/images/p_282formula3.gif +0 -0
- data/data/images/p_287_quadtree.gif +0 -0
- data/data/images/p_289_euler.gif +0 -0
- data/data/images/p_291_formula.gif +0 -0
- data/data/images/p_299_ThreeSimTri.gif +0 -0
- data/data/images/p_300_protein.gif +0 -0
- data/data/images/p_306_pstrip.gif +0 -0
- data/data/images/p_309_ladders.gif +0 -0
- data/data/images/p_311_biclinic.gif +0 -0
- data/data/images/p_312_sierpinsky8t.gif +0 -0
- data/data/images/p_312_sierpinskyAt.gif +0 -0
- data/data/images/p_313_sliding_game_1.gif +0 -0
- data/data/images/p_313_sliding_game_2.gif +0 -0
- data/data/images/p_314_landgrab.gif +0 -0
- data/data/images/p_315_clocks.gif +0 -0
- data/data/images/p_316_decexp1.gif +0 -0
- data/data/images/p_316_decexp2.gif +0 -0
- data/data/images/p_316_decexp3.gif +0 -0
- data/data/images/p_321_swapping_counters_1.gif +0 -0
- data/data/images/p_321_swapping_counters_2.gif +0 -0
- data/data/images/p_326_formula1.gif +0 -0
- data/data/images/p_326_formula2.gif +0 -0
- data/data/images/p_327_rooms_of_doom.gif +0 -0
- data/data/images/p_328_sum1.gif +0 -0
- data/data/images/p_328_sum2.gif +0 -0
- data/data/images/p_330_formula.gif +0 -0
- data/data/images/p_331_crossflips1.gif +0 -0
- data/data/images/p_331_crossflips2.gif +0 -0
- data/data/images/p_331_crossflips3.gif +0 -0
- data/data/images/p_332_spherical.jpg +0 -0
- data/data/images/p_332_sum.gif +0 -0
- data/data/images/p_334_beans.gif +0 -0
- data/data/images/p_334_cases.gif +0 -0
- data/data/images/p_334_lfloor.gif +0 -0
- data/data/images/p_334_oplus.gif +0 -0
- data/data/images/p_334_rfloor.gif +0 -0
- data/data/images/p_335_mancala.gif +0 -0
- data/data/images/p_335_sum.gif +0 -0
- data/data/images/p_336_maximix.gif +0 -0
- data/data/images/p_338_gridpaper.gif +0 -0
- data/data/images/p_340_formula.gif +0 -0
- data/data/images/p_344_silverdollar.gif +0 -0
- data/data/images/p_351_hexorchard.png +0 -0
- data/data/images/p_354_bee_honeycomb.png +0 -0
- data/data/images/p_356_cubicpoly1.gif +0 -0
- data/data/images/p_356_cubicpoly2.gif +0 -0
- data/data/images/p_361_Thue-Morse1.gif +0 -0
- data/data/images/p_364_comf_dist.gif +0 -0
- data/data/images/p_372_pencilray1.jpg +0 -0
- data/data/images/p_372_pencilray2.gif +0 -0
- data/data/images/p_380_mazes.gif +0 -0
- data/data/images/p_384_formula.gif +0 -0
- data/data/images/p_385_ellipsetriangle.png +0 -0
- data/data/images/p_394_eatpie.gif +0 -0
- data/data/images/p_395_pythagorean.gif +0 -0
- data/data/images/p_404_c_ellipse.gif +0 -0
- data/data/images/p_405_tile1.png +0 -0
- data/data/images/p_405_tile2.gif +0 -0
- data/data/images/p_420_matrix.gif +0 -0
- data/data/images/p_424_kakuro1.gif +0 -0
- data/data/images/p_426_baxball1.gif +0 -0
- data/data/images/p_426_baxball2.gif +0 -0
- data/data/images/p_430_flips.gif +0 -0
- data/data/images/sod_13.gif +115 -0
- data/data/images/spacer.gif +0 -0
- data/data/images/symbol_asymp.gif +0 -0
- data/data/images/symbol_cong.gif +0 -0
- data/data/images/symbol_ge.gif +0 -0
- data/data/images/symbol_gt.gif +0 -0
- data/data/images/symbol_implies.gif +0 -0
- data/data/images/symbol_lceil.gif +0 -0
- data/data/images/symbol_le.gif +0 -0
- data/data/images/symbol_lfloor.gif +0 -0
- data/data/images/symbol_lt.gif +0 -0
- data/data/images/symbol_maps.gif +0 -0
- data/data/images/symbol_minus.gif +0 -0
- data/data/images/symbol_ne.gif +0 -0
- data/data/images/symbol_plusmn.gif +0 -0
- data/data/images/symbol_radic.gif +0 -0
- data/data/images/symbol_rceil.gif +0 -0
- data/data/images/symbol_rfloor.gif +0 -0
- data/data/images/symbol_sum.gif +0 -0
- data/data/images/symbol_times.gif +0 -0
- data/data/problems/1.yml +5 -3
- data/data/problems/10.yml +3 -4
- data/data/problems/100.yml +7 -9
- data/data/problems/101.yml +32 -45
- data/data/problems/102.yml +11 -12
- data/data/problems/103.yml +18 -22
- data/data/problems/104.yml +9 -11
- data/data/problems/105.yml +12 -17
- data/data/problems/106.yml +14 -15
- data/data/problems/107.yml +16 -16
- data/data/problems/108.yml +17 -28
- data/data/problems/109.yml +27 -29
- data/data/problems/11.yml +24 -29
- data/data/problems/110.yml +11 -15
- data/data/problems/111.yml +27 -17
- data/data/problems/112.yml +13 -11
- data/data/problems/113.yml +11 -9
- data/data/problems/114.yml +46 -100
- data/data/problems/115.yml +15 -12
- data/data/problems/116.yml +33 -72
- data/data/problems/117.yml +36 -78
- data/data/problems/118.yml +5 -5
- data/data/problems/119.yml +9 -7
- data/data/problems/12.yml +8 -9
- data/data/problems/120.yml +7 -13
- data/data/problems/121.yml +9 -11
- data/data/problems/122.yml +21 -38
- data/data/problems/123.yml +9 -9
- data/data/problems/124.yml +24 -54
- data/data/problems/125.yml +7 -8
- data/data/problems/126.yml +12 -13
- data/data/problems/127.yml +21 -27
- data/data/problems/128.yml +19 -14
- data/data/problems/129.yml +9 -8
- data/data/problems/13.yml +52 -2
- data/data/problems/130.yml +12 -15
- data/data/problems/131.yml +9 -8
- data/data/problems/132.yml +7 -8
- data/data/problems/133.yml +9 -9
- data/data/problems/134.yml +7 -15
- data/data/problems/135.yml +9 -16
- data/data/problems/136.yml +9 -13
- data/data/problems/137.yml +22 -32
- data/data/problems/138.yml +11 -16
- data/data/problems/139.yml +11 -11
- data/data/problems/14.yml +14 -24
- data/data/problems/140.yml +18 -25
- data/data/problems/141.yml +10 -11
- data/data/problems/142.yml +3 -10
- data/data/problems/143.yml +13 -16
- data/data/problems/144.yml +23 -26
- data/data/problems/145.yml +7 -7
- data/data/problems/146.yml +6 -6
- data/data/problems/147.yml +7 -8
- data/data/problems/148.yml +15 -7
- data/data/problems/149.yml +26 -35
- data/data/problems/15.yml +7 -7
- data/data/problems/150.yml +18 -29
- data/data/problems/151.yml +17 -15
- data/data/problems/152.yml +11 -8
- data/data/problems/153.yml +38 -53
- data/data/problems/154.yml +10 -12
- data/data/problems/155.yml +12 -15
- data/data/problems/156.yml +20 -22
- data/data/problems/157.yml +26 -28
- data/data/problems/158.yml +13 -14
- data/data/problems/159.yml +15 -25
- data/data/problems/16.yml +5 -2
- data/data/problems/160.yml +3 -4
- data/data/problems/161.yml +6 -10
- data/data/problems/162.yml +10 -11
- data/data/problems/163.yml +13 -15
- data/data/problems/164.yml +3 -3
- data/data/problems/165.yml +25 -28
- data/data/problems/166.yml +7 -11
- data/data/problems/167.yml +10 -12
- data/data/problems/168.yml +7 -9
- data/data/problems/169.yml +4 -5
- data/data/problems/17.yml +7 -7
- data/data/problems/170.yml +7 -10
- data/data/problems/171.yml +7 -9
- data/data/problems/172.yml +3 -2
- data/data/problems/173.yml +9 -7
- data/data/problems/174.yml +13 -15
- data/data/problems/175.yml +13 -15
- data/data/problems/176.yml +5 -5
- data/data/problems/177.yml +13 -12
- data/data/problems/178.yml +5 -5
- data/data/problems/179.yml +3 -6
- data/data/problems/18.yml +13 -17
- data/data/problems/180.yml +20 -25
- data/data/problems/181.yml +7 -3
- data/data/problems/182.yml +22 -27
- data/data/problems/183.yml +17 -23
- data/data/problems/184.yml +11 -14
- data/data/problems/185.yml +17 -18
- data/data/problems/186.yml +16 -24
- data/data/problems/187.yml +9 -12
- data/data/problems/188.yml +5 -6
- data/data/problems/189.yml +5 -7
- data/data/problems/19.yml +7 -8
- data/data/problems/190.yml +7 -9
- data/data/problems/191.yml +9 -10
- data/data/problems/192.yml +14 -22
- data/data/problems/193.yml +5 -3
- data/data/problems/194.yml +11 -14
- data/data/problems/195.yml +7 -9
- data/data/problems/196.yml +13 -21
- data/data/problems/197.yml +7 -11
- data/data/problems/198.yml +13 -16
- data/data/problems/199.yml +10 -10
- data/data/problems/2.yml +6 -6
- data/data/problems/20.yml +10 -18
- data/data/problems/200.yml +8 -8
- data/data/problems/201.yml +14 -16
- data/data/problems/202.yml +11 -10
- data/data/problems/203.yml +11 -16
- data/data/problems/204.yml +7 -7
- data/data/problems/205.yml +6 -6
- data/data/problems/206.yml +2 -2
- data/data/problems/207.yml +13 -16
- data/data/problems/208.yml +8 -8
- data/data/problems/209.yml +11 -23
- data/data/problems/21.yml +8 -9
- data/data/problems/210.yml +6 -6
- data/data/problems/211.yml +7 -7
- data/data/problems/212.yml +26 -36
- data/data/problems/213.yml +6 -7
- data/data/problems/214.yml +10 -11
- data/data/problems/215.yml +11 -14
- data/data/problems/216.yml +7 -10
- data/data/problems/217.yml +14 -23
- data/data/problems/218.yml +9 -10
- data/data/problems/219.yml +10 -15
- data/data/problems/22.yml +7 -9
- data/data/problems/220.yml +15 -20
- data/data/problems/221.yml +10 -16
- data/data/problems/222.yml +5 -3
- data/data/problems/223.yml +6 -8
- data/data/problems/224.yml +6 -8
- data/data/problems/225.yml +6 -7
- data/data/problems/226.yml +9 -12
- data/data/problems/227.yml +9 -9
- data/data/problems/228.yml +14 -17
- data/data/problems/229.yml +17 -25
- data/data/problems/23.yml +11 -15
- data/data/problems/230.yml +15 -19
- data/data/problems/231.yml +8 -12
- data/data/problems/232.yml +9 -10
- data/data/problems/233.yml +7 -6
- data/data/problems/234.yml +14 -19
- data/data/problems/235.yml +4 -5
- data/data/problems/236.yml +20 -22
- data/data/problems/237.yml +14 -9
- data/data/problems/238.yml +21 -33
- data/data/problems/239.yml +5 -5
- data/data/problems/24.yml +7 -6
- data/data/problems/240.yml +7 -7
- data/data/problems/241.yml +9 -12
- data/data/problems/242.yml +7 -9
- data/data/problems/243.yml +14 -15
- data/data/problems/244.yml +19 -28
- data/data/problems/245.yml +22 -30
- data/data/problems/246.yml +10 -13
- data/data/problems/247.yml +14 -17
- data/data/problems/248.yml +5 -2
- data/data/problems/249.yml +3 -3
- data/data/problems/25.yml +12 -11
- data/data/problems/250.yml +3 -3
- data/data/problems/251.yml +11 -9
- data/data/problems/252.yml +24 -25
- data/data/problems/253.yml +19 -32
- data/data/problems/254.yml +13 -17
- data/data/problems/255.yml +40 -50
- data/data/problems/256.yml +31 -39
- data/data/problems/257.yml +10 -14
- data/data/problems/258.yml +7 -9
- data/data/problems/259.yml +14 -12
- data/data/problems/26.yml +17 -7
- data/data/problems/260.yml +21 -25
- data/data/problems/261.yml +13 -15
- data/data/problems/262.yml +15 -16
- data/data/problems/263.yml +13 -15
- data/data/problems/264.yml +15 -16
- data/data/problems/265.yml +10 -12
- data/data/problems/266.yml +6 -6
- data/data/problems/267.yml +13 -10
- data/data/problems/268.yml +5 -4
- data/data/problems/269.yml +10 -11
- data/data/problems/27.yml +15 -21
- data/data/problems/270.yml +13 -13
- data/data/problems/271.yml +7 -9
- data/data/problems/272.yml +8 -11
- data/data/problems/273.yml +13 -17
- data/data/problems/274.yml +16 -19
- data/data/problems/275.yml +13 -15
- data/data/problems/276.yml +5 -7
- data/data/problems/277.yml +17 -20
- data/data/problems/278.yml +20 -28
- data/data/problems/279.yml +4 -3
- data/data/problems/28.yml +6 -13
- data/data/problems/280.yml +9 -9
- data/data/problems/281.yml +10 -13
- data/data/problems/282.yml +9 -6
- data/data/problems/283.yml +8 -8
- data/data/problems/284.yml +15 -18
- data/data/problems/285.yml +11 -11
- data/data/problems/286.yml +7 -8
- data/data/problems/287.yml +22 -32
- data/data/problems/288.yml +10 -11
- data/data/problems/289.yml +14 -15
- data/data/problems/29.yml +13 -20
- data/data/problems/290.yml +3 -4
- data/data/problems/291.yml +3 -6
- data/data/problems/292.yml +8 -9
- data/data/problems/293.yml +9 -10
- data/data/problems/294.yml +6 -6
- data/data/problems/295.yml +16 -21
- data/data/problems/296.yml +9 -11
- data/data/problems/297.yml +12 -15
- data/data/problems/298.yml +29 -29
- data/data/problems/299.yml +15 -21
- data/data/problems/3.yml +3 -3
- data/data/problems/30.yml +7 -8
- data/data/problems/300.yml +15 -16
- data/data/problems/301.yml +15 -17
- data/data/problems/302.yml +13 -14
- data/data/problems/303.yml +9 -7
- data/data/problems/304.yml +10 -15
- data/data/problems/305.yml +6 -10
- data/data/problems/306.yml +20 -24
- data/data/problems/307.yml +7 -8
- data/data/problems/308.yml +19 -30
- data/data/problems/309.yml +11 -12
- data/data/problems/31.yml +11 -14
- data/data/problems/310.yml +10 -15
- data/data/problems/311.yml +11 -17
- data/data/problems/312.yml +10 -11
- data/data/problems/313.yml +13 -13
- data/data/problems/314.yml +23 -25
- data/data/problems/315.yml +39 -45
- data/data/problems/316.yml +13 -13
- data/data/problems/317.yml +6 -7
- data/data/problems/318.yml +35 -57
- data/data/problems/319.yml +15 -19
- data/data/problems/32.yml +9 -10
- data/data/problems/320.yml +9 -8
- data/data/problems/321.yml +8 -9
- data/data/problems/322.yml +6 -8
- data/data/problems/323.yml +12 -15
- data/data/problems/324.yml +10 -13
- data/data/problems/325.yml +15 -21
- data/data/problems/326.yml +15 -8
- data/data/problems/327.yml +19 -23
- data/data/problems/328.yml +28 -31
- data/data/problems/329.yml +12 -13
- data/data/problems/33.yml +9 -9
- data/data/problems/330.yml +17 -36
- data/data/problems/331.yml +16 -22
- data/data/problems/332.yml +9 -11
- data/data/problems/333.yml +17 -20
- data/data/problems/334.yml +22 -34
- data/data/problems/335.yml +11 -12
- data/data/problems/336.yml +18 -20
- data/data/problems/337.yml +9 -11
- data/data/problems/338.yml +27 -37
- data/data/problems/339.yml +9 -9
- data/data/problems/34.yml +7 -3
- data/data/problems/340.yml +8 -10
- data/data/problems/341.yml +12 -14
- data/data/problems/342.yml +9 -13
- data/data/problems/343.yml +18 -25
- data/data/problems/344.yml +16 -17
- data/data/problems/345.yml +17 -22
- data/data/problems/346.yml +7 -7
- data/data/problems/347.yml +9 -12
- data/data/problems/348.yml +7 -8
- data/data/problems/349.yml +8 -9
- data/data/problems/35.yml +7 -4
- data/data/problems/350.yml +12 -14
- data/data/problems/351.yml +8 -9
- data/data/problems/352.yml +38 -42
- data/data/problems/353.yml +17 -21
- data/data/problems/354.yml +11 -13
- data/data/problems/355.yml +4 -4
- data/data/problems/356.yml +6 -6
- data/data/problems/357.yml +5 -5
- data/data/problems/358.yml +16 -25
- data/data/problems/359.yml +19 -22
- data/data/problems/36.yml +7 -4
- data/data/problems/360.yml +8 -8
- data/data/problems/361.yml +14 -15
- data/data/problems/362.yml +16 -28
- data/data/problems/363.yml +22 -23
- data/data/problems/364.yml +9 -11
- data/data/problems/365.yml +7 -13
- data/data/problems/366.yml +19 -22
- data/data/problems/367.yml +14 -15
- data/data/problems/368.yml +18 -35
- data/data/problems/369.yml +7 -11
- data/data/problems/37.yml +7 -6
- data/data/problems/370.yml +10 -13
- data/data/problems/371.yml +8 -9
- data/data/problems/372.yml +9 -12
- data/data/problems/373.yml +5 -6
- data/data/problems/374.yml +17 -21
- data/data/problems/375.yml +13 -17
- data/data/problems/376.yml +19 -21
- data/data/problems/377.yml +6 -7
- data/data/problems/378.yml +8 -11
- data/data/problems/379.yml +9 -11
- data/data/problems/38.yml +9 -13
- data/data/problems/380.yml +14 -17
- data/data/problems/381.yml +12 -18
- data/data/problems/382.yml +16 -19
- data/data/problems/383.yml +7 -9
- data/data/problems/384.yml +20 -24
- data/data/problems/385.yml +12 -16
- data/data/problems/386.yml +9 -11
- data/data/problems/387.yml +14 -15
- data/data/problems/388.yml +6 -8
- data/data/problems/389.yml +8 -8
- data/data/problems/39.yml +7 -6
- data/data/problems/390.yml +9 -14
- data/data/problems/391.yml +21 -25
- data/data/problems/392.yml +16 -17
- data/data/problems/393.yml +5 -6
- data/data/problems/394.yml +15 -18
- data/data/problems/395.yml +12 -13
- data/data/problems/396.yml +17 -22
- data/data/problems/397.yml +13 -16
- data/data/problems/398.yml +8 -9
- data/data/problems/399.yml +18 -18
- data/data/problems/4.yml +5 -4
- data/data/problems/40.yml +11 -14
- data/data/problems/400.yml +10 -11
- data/data/problems/401.yml +6 -7
- data/data/problems/402.yml +16 -21
- data/data/problems/403.yml +12 -14
- data/data/problems/404.yml +14 -16
- data/data/problems/405.yml +10 -11
- data/data/problems/406.yml +35 -41
- data/data/problems/407.yml +9 -16
- data/data/problems/408.yml +9 -9
- data/data/problems/409.yml +5 -7
- data/data/problems/41.yml +5 -4
- data/data/problems/410.yml +10 -13
- data/data/problems/411.yml +15 -19
- data/data/problems/412.yml +11 -15
- data/data/problems/413.yml +8 -8
- data/data/problems/414.yml +29 -34
- data/data/problems/415.yml +12 -15
- data/data/problems/416.yml +7 -7
- data/data/problems/417.yml +16 -17
- data/data/problems/418.yml +9 -12
- data/data/problems/419.yml +13 -18
- data/data/problems/42.yml +9 -10
- data/data/problems/420.yml +5 -6
- data/data/problems/421.yml +14 -25
- data/data/problems/422.yml +16 -18
- data/data/problems/423.yml +16 -18
- data/data/problems/424.yml +18 -19
- data/data/problems/425.yml +11 -12
- data/data/problems/426.yml +20 -21
- data/data/problems/427.yml +11 -13
- data/data/problems/428.yml +21 -25
- data/data/problems/429.yml +6 -6
- data/data/problems/43.yml +15 -13
- data/data/problems/430.yml +14 -16
- data/data/problems/44.yml +9 -12
- data/data/problems/45.yml +11 -11
- data/data/problems/46.yml +9 -14
- data/data/problems/47.yml +11 -16
- data/data/problems/48.yml +5 -3
- data/data/problems/49.yml +7 -6
- data/data/problems/5.yml +5 -4
- data/data/problems/50.yml +11 -6
- data/data/problems/51.yml +9 -11
- data/data/problems/52.yml +5 -4
- data/data/problems/53.yml +15 -24
- data/data/problems/54.yml +29 -39
- data/data/problems/55.yml +16 -17
- data/data/problems/56.yml +5 -7
- data/data/problems/57.yml +10 -11
- data/data/problems/58.yml +11 -18
- data/data/problems/59.yml +11 -19
- data/data/problems/6.yml +13 -9
- data/data/problems/60.yml +5 -6
- data/data/problems/61.yml +18 -26
- data/data/problems/62.yml +5 -5
- data/data/problems/63.yml +5 -3
- data/data/problems/64.yml +52 -126
- data/data/problems/65.yml +21 -47
- data/data/problems/66.yml +13 -23
- data/data/problems/67.yml +10 -13
- data/data/problems/68.yml +15 -19
- data/data/problems/69.yml +18 -10
- data/data/problems/7.yml +5 -2
- data/data/problems/70.yml +10 -12
- data/data/problems/71.yml +11 -13
- data/data/problems/72.yml +11 -12
- data/data/problems/73.yml +11 -12
- data/data/problems/74.yml +25 -37
- data/data/problems/75.yml +10 -12
- data/data/problems/76.yml +4 -4
- data/data/problems/77.yml +4 -4
- data/data/problems/78.yml +13 -8
- data/data/problems/79.yml +7 -7
- data/data/problems/8.yml +14 -8
- data/data/problems/80.yml +7 -7
- data/data/problems/81.yml +9 -15
- data/data/problems/82.yml +10 -15
- data/data/problems/83.yml +10 -19
- data/data/problems/84.yml +36 -59
- data/data/problems/85.yml +7 -5
- data/data/problems/86.yml +11 -11
- data/data/problems/87.yml +7 -8
- data/data/problems/88.yml +30 -49
- data/data/problems/89.yml +13 -14
- data/data/problems/9.yml +6 -9
- data/data/problems/90.yml +16 -18
- data/data/problems/91.yml +10 -15
- data/data/problems/92.yml +14 -25
- data/data/problems/93.yml +13 -17
- data/data/problems/94.yml +7 -7
- data/data/problems/95.yml +13 -19
- data/data/problems/96.yml +24 -40
- data/data/problems/97.yml +7 -10
- data/data/problems/98.yml +9 -12
- data/data/problems/99.yml +9 -12
- data/euler-manager.gemspec +1 -0
- data/example/1/README.md +4 -4
- data/example/15/README.md +8 -0
- data/example/15/python/15.py +5 -0
- data/example/15/python/euler.py +0 -0
- data/example/2/README.md +7 -5
- data/example/Eulerfile.rb +1 -0
- data/lib/euler/problem.rb +6 -1
- data/lib/euler/solution.rb +4 -2
- data/lib/euler/version.rb +1 -1
- data/rake/clean.rake +16 -0
- data/rake/update.rake +88 -0
- data/spec/euler/solution_spec.rb +2 -1
- data/templates/Eulerfile.rb +12 -0
- metadata +189 -29
- data/data/problems/431.yml +0 -33
- data/data/problems/432.yml +0 -13
- data/data/problems/433.yml +0 -18
- data/data/problems/434.yml +0 -32
- data/data/problems/435.yml +0 -21
- data/data/problems/436.yml +0 -21
- data/data/problems/437.yml +0 -22
- data/data/problems/438.yml +0 -29
- data/data/problems/439.yml +0 -17
- data/data/problems/440.yml +0 -21
- data/data/problems/441.yml +0 -23
- data/data/problems/442.yml +0 -9
- data/data/problems/443.yml +0 -13
- data/data/problems/444.yml +0 -28
- data/data/problems/445.yml +0 -37
- data/data/problems/446.yml +0 -29
- data/data/problems/447.yml +0 -31
- data/data/problems/448.yml +0 -14
- data/data/problems/449.yml +0 -17
- data/data/problems/450.yml +0 -26
- data/data/problems/451.yml +0 -15
- data/data/problems/452.yml +0 -8
- data/data/problems/453.yml +0 -16
- data/data/problems/454.yml +0 -17
- data/data/problems/455.yml +0 -16
- data/data/problems/456.yml +0 -15
- data/scripts/update_problems +0 -68
data/data/problems/407.yml
CHANGED
@@ -2,19 +2,12 @@
|
|
2
2
|
:id: 407
|
3
3
|
:name: Idempotents
|
4
4
|
:url: http://projecteuler.net/problem=407
|
5
|
-
:content: "
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
mod
|
12
|
-
|
13
|
-
|
14
|
-
src=\"images/symbol_cong.gif\" width=\"9\" height=\"11\" alt=\"≡\" border=\"0\"
|
15
|
-
style=\"vertical-align:middle;\"><var>a</var> (mod <var>n</var>).<br>\r\nSo M(6)
|
16
|
-
= 4.\r\n</p>\r\n<p>\r\nFind <img src=\"images/symbol_sum.gif\" width=\"11\" height=\"14\"
|
17
|
-
alt=\"∑\" border=\"0\" style=\"vertical-align:middle;\">M(<var>n</var>) for 1 <img
|
18
|
-
src=\"images/symbol_le.gif\" width=\"10\" height=\"12\" alt=\"≤\" border=\"0\" style=\"vertical-align:middle;\"><var>n</var>
|
19
|
-
<img src=\"images/symbol_le.gif\" width=\"10\" height=\"12\" alt=\"≤\" border=\"0\"
|
20
|
-
style=\"vertical-align:middle;\"> 10<sup>7</sup>.\r\n</p>\r\n\r\n"
|
5
|
+
:content: "If we calculate <var>a</var><sup>2</sup> mod 6 for 0 ![≤](/home/will/src/euler-manager/config/../data/images/symbol_le.gif)
|
6
|
+
<var>a</var> ![≤](/home/will/src/euler-manager/config/../data/images/symbol_le.gif)
|
7
|
+
5 we get: 0,1,4,3,4,1.\n\nThe largest value of <var>a</var> such that <var>a</var><sup>2</sup>
|
8
|
+
![≡](/home/will/src/euler-manager/config/../data/images/symbol_cong.gif) <var>a</var>
|
9
|
+
mod 6 is 4. \n\rLet's call M(<var>n</var>) the largest value of <var>a</var> ![<](/home/will/src/euler-manager/config/../data/images/symbol_lt.gif)
|
10
|
+
<var>n</var> such that <var>a</var><sup>2</sup> ![≡](/home/will/src/euler-manager/config/../data/images/symbol_cong.gif)
|
11
|
+
<var>a</var> (mod <var>n</var>). \n\rSo M(6) = 4.\n\nFind ![∑](/home/will/src/euler-manager/config/../data/images/symbol_sum.gif)M(<var>n</var>)
|
12
|
+
for 1 ![≤](/home/will/src/euler-manager/config/../data/images/symbol_le.gif) <var>n</var>
|
13
|
+
![≤](/home/will/src/euler-manager/config/../data/images/symbol_le.gif) 10<sup>7</sup>.\n\n"
|
data/data/problems/408.yml
CHANGED
@@ -2,13 +2,13 @@
|
|
2
2
|
:id: 408
|
3
3
|
:name: Admissible paths through a grid
|
4
4
|
:url: http://projecteuler.net/problem=408
|
5
|
-
:content: "
|
5
|
+
:content: "Let's call a lattice point (<var>x</var>, <var>y</var>) _inadmissible_
|
6
6
|
if <var>x</var>, <var>y</var> and <var>x</var> + <var>y</var> are all positive perfect
|
7
|
-
squares
|
8
|
-
4) are not
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
7
|
+
squares. \n\rFor example, (9, 16) is inadmissible, while (0, 4), (3, 1) and (9,
|
8
|
+
4) are not.\n\nConsider a path from point (<var>x</var><sub>1</sub>, <var>y</var><sub>1</sub>)
|
9
|
+
to point (<var>x</var><sub>2</sub>, <var>y</var><sub>2</sub>) using only unit steps
|
10
|
+
north or east. \n\rLet's call such a path _admissible_ if none of its intermediate
|
11
|
+
points are inadmissible.\n\nLet P(<var>n</var>) be the number of admissible paths
|
12
|
+
from (0, 0) to (<var>n</var>, <var>n</var>). \n\rIt can be verified that P(5) =
|
13
|
+
252, P(16) = 596994440 and P(1000) mod 1 000 000 007 = 341920854.\n\nFind P(10 000 000)
|
14
|
+
mod 1 000 000 007.\n\n"
|
data/data/problems/409.yml
CHANGED
@@ -2,11 +2,9 @@
|
|
2
2
|
:id: 409
|
3
3
|
:name: Nim Extreme
|
4
4
|
:url: http://projecteuler.net/problem=409
|
5
|
-
:content: "
|
6
|
-
|
7
|
-
|
8
|
-
the
|
9
|
-
nim positions satisfying the above\r\nconditions (a position is winning if the first
|
5
|
+
:content: "Let <var>n</var> be a positive integer. Consider **nim** positions where:\n\n-
|
6
|
+
There are <var>n</var> non-empty piles.\r\n- Each pile has size less than 2<sup><var>n</var></sup>.\r\n-
|
7
|
+
No two piles have the same size.\r\n\nLet W(<var>n</var>) be the number of winning
|
8
|
+
nim positions satisfying the above\rconditions (a position is winning if the first
|
10
9
|
player has a winning strategy). For example, W(1) = 1, W(2) = 6, W(3) = 168, W(5)
|
11
|
-
= 19764360 and W(100) mod 1 000 000 007 = 384777056.\
|
12
|
-
mod 1 000 000 007.\r\n</p>\r\n\r\n"
|
10
|
+
= 19764360 and W(100) mod 1 000 000 007 = 384777056.\n\nFind W(10 000 000) mod 1 000 000 007.\n\n"
|
data/data/problems/41.yml
CHANGED
@@ -2,7 +2,8 @@
|
|
2
2
|
:id: 41
|
3
3
|
:name: Pandigital prime
|
4
4
|
:url: http://projecteuler.net/problem=41
|
5
|
-
:content:
|
6
|
-
makes use of all the digits 1 to
|
7
|
-
|
8
|
-
prime that exists
|
5
|
+
:content: |+
|
6
|
+
We shall say that an _n_-digit number is pandigital if it makes use of all the digits 1 to _n_ exactly once. For example, 2143 is a 4-digit pandigital and is also prime.
|
7
|
+
|
8
|
+
What is the largest _n_-digit pandigital prime that exists?
|
9
|
+
|
data/data/problems/410.yml
CHANGED
@@ -2,18 +2,15 @@
|
|
2
2
|
:id: 410
|
3
3
|
:name: Circle and tangent line
|
4
4
|
:url: http://projecteuler.net/problem=410
|
5
|
-
:content: "
|
5
|
+
:content: "Let C be the circle with radius <var>r</var>, <var>x</var><sup>2</sup>
|
6
6
|
+ <var>y</var><sup>2</sup> = <var>r</var><sup>2</sup>. We choose two points P(<var>a</var>,
|
7
7
|
<var>b</var>) and Q(-<var>a</var>, <var>c</var>) so that the line passing through
|
8
|
-
P and Q is tangent to C
|
9
|
-
<var>
|
10
|
-
|
11
|
-
<var>
|
12
|
-
|
13
|
-
<
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
style=\"vertical-align:middle;\"><var>X</var>.</p>\r\n\r\n<p>We can verify that
|
18
|
-
F(1, 5) = 10, F(2, 10) = 52 and F(10, 100) = 3384.<br>\r\nFind F(10<sup>8</sup>,
|
19
|
-
10<sup>9</sup>) + F(10<sup>9</sup>, 10<sup>8</sup>).</p>\r\n"
|
8
|
+
P and Q is tangent to C.\n\nFor example, the quadruplet (<var>r</var>, <var>a</var>,
|
9
|
+
<var>b</var>, <var>c</var>) = (2, 6, 2, -7) satisfies this property.\n\nLet F(<var>R</var>,
|
10
|
+
<var>X</var>) be the number of the integer quadruplets (<var>r</var>, <var>a</var>,
|
11
|
+
<var>b</var>, <var>c</var>) with this property, and with 0 ![<](/home/will/src/euler-manager/config/../data/images/symbol_lt.gif)
|
12
|
+
<var>r</var> ![≤](/home/will/src/euler-manager/config/../data/images/symbol_le.gif)
|
13
|
+
<var>R</var> and 0 ![<](/home/will/src/euler-manager/config/../data/images/symbol_lt.gif)
|
14
|
+
<var>a</var> ![≤](/home/will/src/euler-manager/config/../data/images/symbol_le.gif)
|
15
|
+
<var>X</var>.\n\nWe can verify that F(1, 5) = 10, F(2, 10) = 52 and F(10, 100) =
|
16
|
+
3384. \n\rFind F(10<sup>8</sup>, 10<sup>9</sup>) + F(10<sup>9</sup>, 10<sup>8</sup>).\n\n"
|
data/data/problems/411.yml
CHANGED
@@ -2,22 +2,18 @@
|
|
2
2
|
:id: 411
|
3
3
|
:name: Uphill paths
|
4
4
|
:url: http://projecteuler.net/problem=411
|
5
|
-
:content: "
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
<
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
style=\"vertical-align:middle;\"> S(<var>k</var><sup>5</sup>) for 1 <img src=\"images/symbol_le.gif\"
|
21
|
-
width=\"10\" height=\"12\" alt=\"≤\" border=\"0\" style=\"vertical-align:middle;\"><var>k</var>
|
22
|
-
<img src=\"images/symbol_le.gif\" width=\"10\" height=\"12\" alt=\"≤\" border=\"0\"
|
23
|
-
style=\"vertical-align:middle;\"> 30.\r\n</p>\r\n"
|
5
|
+
:content: "Let <var>n</var> be a positive integer. Suppose there are stations at the
|
6
|
+
coordinates (<var>x</var>, <var>y</var>) = (2<sup><var>i</var></sup> mod <var>n</var>,
|
7
|
+
3<sup><var>i</var></sup> mod <var>n</var>) for 0 ![≤](/home/will/src/euler-manager/config/../data/images/symbol_le.gif)
|
8
|
+
<var>i</var> ![≤](/home/will/src/euler-manager/config/../data/images/symbol_le.gif)
|
9
|
+
2<var>n</var>. We will consider stations with the same coordinates as the same station.\n\nWe
|
10
|
+
wish to form a path from (0, 0) to (<var>n</var>, <var>n</var>) such that the x
|
11
|
+
and y coordinates never decrease. \n\rLet S(<var>n</var>) be the maximum number
|
12
|
+
of stations such a path can pass through.\n\nFor example, if <var>n</var> = 22,
|
13
|
+
there are 11 distinct stations, and a valid path can pass through at most 5 stations.
|
14
|
+
Therefore, S(22) = 5.\rThe case is illustrated below, with an example of an optimal
|
15
|
+
path:\n\n![](/home/will/src/euler-manager/config/../data/images/p411_longpath.png)\n\nIt
|
16
|
+
can also be verified that S(123) = 14 and S(10000) = 48.\n\nFind ![∑](/home/will/src/euler-manager/config/../data/images/symbol_sum.gif)
|
17
|
+
S(<var>k</var><sup>5</sup>) for 1 ![≤](/home/will/src/euler-manager/config/../data/images/symbol_le.gif)
|
18
|
+
<var>k</var> ![≤](/home/will/src/euler-manager/config/../data/images/symbol_le.gif)
|
19
|
+
30.\n\n"
|
data/data/problems/412.yml
CHANGED
@@ -2,18 +2,14 @@
|
|
2
2
|
:id: 412
|
3
3
|
:name: Gnomon numbering
|
4
4
|
:url: http://projecteuler.net/problem=412
|
5
|
-
:content: "
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
src=\"project/images/p412_tablenums.png\"></p>\r\n\r\n<p>Let LC(<var>m</var>, <var>n</var>)
|
17
|
-
be the number of valid numberings of L(<var>m</var>, <var>n</var>).<br>\r\nIt can
|
18
|
-
be verified that LC(3, 0) = 42, LC(5, 3) = 250250, LC(6, 3) = 406029023400 and LC(10, 5)
|
19
|
-
mod 76543217 = 61251715.</p>\r\n\r\n<p>Find LC(10000, 5000) mod 76543217.</p>\r\n"
|
5
|
+
:content: "For integers <var>m</var>, <var>n</var> (0 ![≤](/home/will/src/euler-manager/config/../data/images/symbol_le.gif) <var>n</var> m),
|
6
|
+
let L(<var>m</var>, <var>n</var>) be an <var>m</var> ![×](/home/will/src/euler-manager/config/../data/images/symbol_times.gif)<var>m</var>
|
7
|
+
grid with the top-right <var>n</var> ![×](/home/will/src/euler-manager/config/../data/images/symbol_times.gif)<var>n</var>
|
8
|
+
grid removed.\n\nFor example, L(5, 3) looks like this:\n\n![](/home/will/src/euler-manager/config/../data/images/p412_table53.png)\n\nWe
|
9
|
+
want to number each cell of L(<var>m</var>, <var>n</var>) with consecutive integers
|
10
|
+
1, 2, 3, ... such that the number in every cell is smaller than the number below
|
11
|
+
it and to the left of it.\n\nFor example, here are two valid numberings of L(5, 3):\n\n![](/home/will/src/euler-manager/config/../data/images/p412_tablenums.png)\n\nLet
|
12
|
+
LC(<var>m</var>, <var>n</var>) be the number of valid numberings of L(<var>m</var>,
|
13
|
+
<var>n</var>). \n\rIt can be verified that LC(3, 0) = 42, LC(5, 3) = 250250, LC(6, 3)
|
14
|
+
= 406029023400 and LC(10, 5) mod 76543217 = 61251715.\n\nFind LC(10000, 5000) mod
|
15
|
+
76543217.\n\n"
|
data/data/problems/413.yml
CHANGED
@@ -2,12 +2,12 @@
|
|
2
2
|
:id: 413
|
3
3
|
:name: One-child Numbers
|
4
4
|
:url: http://projecteuler.net/problem=413
|
5
|
-
:content: "
|
6
|
-
|
5
|
+
:content: "We say that a <var>d</var>-digit positive number (no leading zeros) is
|
6
|
+
a one-child number if exactly one of its sub-strings is divisible by <var>d</var>.\n\nFor
|
7
7
|
example, 5671 is a 4-digit one-child number. Among all its sub-strings 5, 6, 7,
|
8
|
-
1, 56, 67, 71, 567, 671 and 5671, only 56 is divisible by 4
|
9
|
-
is a 3-digit one-child number because only 0 is divisible by 3
|
10
|
-
a 7-digit one-child number because only 245 is divisible by 7
|
11
|
-
|
12
|
-
|
13
|
-
F(10<sup>19</sup>)
|
8
|
+
1, 56, 67, 71, 567, 671 and 5671, only 56 is divisible by 4. \n\rSimilarly, 104
|
9
|
+
is a 3-digit one-child number because only 0 is divisible by 3. \n\r1132451 is
|
10
|
+
a 7-digit one-child number because only 245 is divisible by 7.\n\nLet F(<var>N</var>)
|
11
|
+
be the number of the one-child numbers less than <var>N</var>. \n\rWe can verify
|
12
|
+
that F(10) = 9, F(10<sup>3</sup>) = 389 and F(10<sup>7</sup>) = 277674.\n\nFind
|
13
|
+
F(10<sup>19</sup>).\n\n"
|
data/data/problems/414.yml
CHANGED
@@ -2,39 +2,34 @@
|
|
2
2
|
:id: 414
|
3
3
|
:name: Kaprekar constant
|
4
4
|
:url: http://projecteuler.net/problem=414
|
5
|
-
:content: "
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
routine
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
be
|
24
|
-
<var>
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
<var>sb(i)</var> for all integers <var>i</var> <img src=\"images/symbol_lt.gif\"
|
29
|
-
width=\"10\" height=\"10\" alt=\"<\" border=\"0\" style=\"vertical-align:middle;\"><var>b</var><sup>5</sup>.
|
5
|
+
:content: "6174 is a remarkable number; if we sort its digits in increasing order
|
6
|
+
and subtract that number from the number you get when you sort the digits in decreasing
|
7
|
+
order, we get 7641-1467=6174. \n\rEven more remarkable is that if we start from
|
8
|
+
any 4 digit number and repeat this process of sorting and subtracting, we'll eventually
|
9
|
+
end up with 6174 or immediately with 0 if all digits are equal. \n \rThis also
|
10
|
+
works with numbers that have less than 4 digits if we pad the number with leading
|
11
|
+
zeroes until we have 4 digits. \n\rE.g. let's start with the number 0837: \n\r8730-0378=8352
|
12
|
+
\ \n\r8532-2358=6174\n\n6174 is called the **Kaprekar constant** . The process of
|
13
|
+
sorting and subtracting and repeating this until either 0 or the Kaprekar constant
|
14
|
+
is reached is called the **Kaprekar routine** .\n\nWe can consider the Kaprekar
|
15
|
+
routine for other bases and number of digits. \n \rUnfortunately, it is not guaranteed
|
16
|
+
a Kaprekar constant exists in all cases; either the routine can end up in a cycle
|
17
|
+
for some input numbers or the constant the routine arrives at can be different for
|
18
|
+
different input numbers. \n\rHowever, it can be shown that for 5 digits and a base
|
19
|
+
b = 6t+3 ![≠](/home/will/src/euler-manager/config/../data/images/symbol_ne.gif)9,
|
20
|
+
a Kaprekar constant exists. \n\rE.g. base 15: (10,4,14,9,5)<sub>15</sub> \n\rbase
|
21
|
+
21: (14,6,20,13,7)<sub>21</sub>\n\nDefine <var>C<sub>b</sub></var> to be the Kaprekar
|
22
|
+
constant in base <var>b</var> for 5 digits.\rDefine the function <var>sb(i)</var>
|
23
|
+
to be\n\n- 0 if i = <var>C<sub>b</sub></var> or if <var>i</var> written in base
|
24
|
+
<var>b</var> consists of 5 identical digits\r\n- the number of iterations it takes
|
25
|
+
the Kaprekar routine in base <var>b</var> to arrive at <var>C<sub>b</sub></var>,
|
26
|
+
otherwise\r\n\rNote that we can define <var>sb(i)</var> for all integers <var>i</var>
|
27
|
+
![<](/home/will/src/euler-manager/config/../data/images/symbol_lt.gif) <var>b</var><sup>5</sup>.
|
30
28
|
If <var>i</var> written in base <var>b</var> takes less than 5 digits, the number
|
31
29
|
is padded with leading zero digits until we have 5 digits before applying the Kaprekar
|
32
|
-
routine.\r\
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
border=\"0\" style=\"vertical-align:middle;\"> k <img src=\"images/symbol_le.gif\"
|
39
|
-
width=\"10\" height=\"12\" alt=\"≤\" border=\"0\" style=\"vertical-align:middle;\">
|
40
|
-
300.<br>\r\nGive the last 18 digits as your answer.\r\n</p>\r\n\r\n"
|
30
|
+
routine.\r\r\n\nDefine <var>S(b)</var> as the sum of <var>sb(i)</var> for 0 ![<](/home/will/src/euler-manager/config/../data/images/symbol_lt.gif)
|
31
|
+
<var>i</var> ![<](/home/will/src/euler-manager/config/../data/images/symbol_lt.gif)
|
32
|
+
<var>b</var><sup>5</sup>. \n\rE.g. S(15) = 5274369 \n \rS(111) = 400668930299\n\nFind
|
33
|
+
the sum of S(6k+3) for 2 ![≤](/home/will/src/euler-manager/config/../data/images/symbol_le.gif)
|
34
|
+
k ![≤](/home/will/src/euler-manager/config/../data/images/symbol_le.gif) 300. \n\rGive
|
35
|
+
the last 18 digits as your answer.\n\n"
|
data/data/problems/415.yml
CHANGED
@@ -2,18 +2,15 @@
|
|
2
2
|
:id: 415
|
3
3
|
:name: Titanic sets
|
4
4
|
:url: http://projecteuler.net/problem=415
|
5
|
-
:content: "
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
<var>
|
16
|
-
|
17
|
-
that <var>T</var>(1) = 11, <var>T</var>(2) = 494, <var>T</var>(4) = 33554178, <var>T</var>(111)
|
18
|
-
mod 10<sup>8</sup> = 13500401 and <var>T</var>(10<sup>5</sup>) mod 10<sup>8</sup>
|
19
|
-
= 63259062.</p>\r\n\r\n<p>Find <var>T</var>(10<sup>11</sup>) mod 10<sup>8</sup>.</p>\r\n\r\n"
|
5
|
+
:content: "A set of lattice points S is called a _titanic set_ if there exists a line
|
6
|
+
passing through exactly two points in S.\n\nAn example of a titanic set is S = {(0,
|
7
|
+
0), (0, 1), (0, 2), (1, 1), (2, 0), (1, 0)}, where the line passing through (0,
|
8
|
+
1) and (2, 0) does not pass through any other point in S.\n\nOn the other hand,
|
9
|
+
the set {(0, 0), (1, 1), (2, 2), (4, 4)} is not a titanic set since the line passing
|
10
|
+
through any two points in the set also passes through the other two.\n\nFor any
|
11
|
+
positive integer <var>N</var>, let <var>T</var>(<var>N</var>) be the number of titanic
|
12
|
+
sets S whose every point (<var>x</var>, <var>y</var>) satisfies 0 ![≤](/home/will/src/euler-manager/config/../data/images/symbol_le.gif)
|
13
|
+
<var>x</var>, <var>y</var> ![≤](/home/will/src/euler-manager/config/../data/images/symbol_le.gif)
|
14
|
+
<var>N</var>.\rIt can be verified that <var>T</var>(1) = 11, <var>T</var>(2) = 494,
|
15
|
+
<var>T</var>(4) = 33554178, <var>T</var>(111) mod 10<sup>8</sup> = 13500401 and
|
16
|
+
<var>T</var>(10<sup>5</sup>) mod 10<sup>8</sup> = 63259062.\n\nFind <var>T</var>(10<sup>11</sup>) mod 10<sup>8</sup>.\n\n"
|
data/data/problems/416.yml
CHANGED
@@ -2,12 +2,12 @@
|
|
2
2
|
:id: 416
|
3
3
|
:name: A frog's trip
|
4
4
|
:url: http://projecteuler.net/problem=416
|
5
|
-
:content: "
|
6
|
-
|
5
|
+
:content: "A row of <var>n</var> squares contains a frog in the leftmost square. By
|
6
|
+
successive jumps the frog goes to the rightmost square and then back to the leftmost
|
7
7
|
square. On the outward trip he jumps one, two or three squares to the right, and
|
8
8
|
on the homeward trip he jumps to the left in a similar manner. He cannot jump outside
|
9
|
-
the squares. He repeats the round-trip travel <var>m</var> times
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
9
|
+
the squares. He repeats the round-trip travel <var>m</var> times.\n\nLet F(<var>m</var>,
|
10
|
+
<var>n</var>) be the number of the ways the frog can travel so that at most one
|
11
|
+
square remains unvisited. \n\rFor example, F(1, 3) = 4, F(1, 4) = 15, F(1, 5) =
|
12
|
+
46, F(2, 3) = 16 and F(2, 100) mod 10<sup>9</sup> = 429619151.\n\nFind the last
|
13
|
+
9 digits of F(10, 10<sup>12</sup>).\n\n"
|
data/data/problems/417.yml
CHANGED
@@ -2,20 +2,19 @@
|
|
2
2
|
:id: 417
|
3
3
|
:name: Reciprocal cycles II
|
4
4
|
:url: http://projecteuler.net/problem=417
|
5
|
-
:content: "
|
6
|
-
of the unit fractions with denominators 2 to 10 are given
|
7
|
-
|
8
|
-
<sup>1</sup>/<sub>
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
height=\"12\" alt=\"≤\" border=\"0\" style=\"vertical-align:middle;\"> 100 000 000\r\n</p>"
|
5
|
+
:content: "A unit fraction contains 1 in the numerator. The decimal representation
|
6
|
+
of the unit fractions with denominators 2 to 10 are given:\n\n> | <sup>1</sup>/<sub>2</sub>
|
7
|
+
| = | 0.5 |\n> | <sup>1</sup>/<sub>3</sub> | = | 0.(3) |\n> | <sup>1</sup>/<sub>4</sub>
|
8
|
+
| = | 0.25 |\n> | <sup>1</sup>/<sub>5</sub> | = | 0.2 |\n> | <sup>1</sup>/<sub>6</sub>
|
9
|
+
| = | 0.1(6) |\n> | <sup>1</sup>/<sub>7</sub> | = | 0.(142857) |\n> | <sup>1</sup>/<sub>8</sub>
|
10
|
+
| = | 0.125 |\n> | <sup>1</sup>/<sub>9</sub> | = | 0.(1) |\n> | <sup>1</sup>/<sub>10</sub>
|
11
|
+
| = | 0.1 |\n\nWhere 0.1(6) means 0.166666..., and has a 1-digit recurring cycle.
|
12
|
+
It can be seen that <sup>1</sup>/<sub>7</sub> has a 6-digit recurring cycle.\n\nUnit
|
13
|
+
fractions whose denominator has no other prime factors than 2 and/or 5 are not considered
|
14
|
+
to have a recurring cycle. \n\rWe define the length of the recurring cycle of those
|
15
|
+
unit fractions as 0.\n\nLet L(n) denote the length of the recurring cycle of 1/n.\rYou
|
16
|
+
are given that ![∑](/home/will/src/euler-manager/config/../data/images/symbol_sum.gif)L(n)
|
17
|
+
for 3 ![≤](/home/will/src/euler-manager/config/../data/images/symbol_le.gif) n ![≤](/home/will/src/euler-manager/config/../data/images/symbol_le.gif)
|
18
|
+
1 000 000 equals 55535191115.\n\nFind ![∑](/home/will/src/euler-manager/config/../data/images/symbol_sum.gif)L(n)
|
19
|
+
for 3 ![≤](/home/will/src/euler-manager/config/../data/images/symbol_le.gif) n ![≤](/home/will/src/euler-manager/config/../data/images/symbol_le.gif)
|
20
|
+
100 000 000\n\n"
|
data/data/problems/418.yml
CHANGED
@@ -2,16 +2,13 @@
|
|
2
2
|
:id: 418
|
3
3
|
:name: Factorisation triples
|
4
4
|
:url: http://projecteuler.net/problem=418
|
5
|
-
:content: "
|
6
|
-
<var>b</var>, <var>c</var>) is called a
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
<
|
11
|
-
|
12
|
-
= <var>n</var>.\r\n</li>\n</ul>\n<p>\r\nDefine <var>f</var>(<var>n</var>) to be
|
13
|
-
<var>a</var> + <var>b</var> + <var>c</var> for the factorisation triple (<var>a</var>,
|
5
|
+
:content: "Let <var>n</var> be a positive integer. An integer triple (<var>a</var>,
|
6
|
+
<var>b</var>, <var>c</var>) is called a _factorisation triple_ of <var>n</var> if:\n\n-
|
7
|
+
1 ![≤](/home/will/src/euler-manager/config/../data/images/symbol_le.gif) <var>a</var>
|
8
|
+
![≤](/home/will/src/euler-manager/config/../data/images/symbol_le.gif) <var>b</var>
|
9
|
+
![≤](/home/will/src/euler-manager/config/../data/images/symbol_le.gif) <var>c</var>\n-
|
10
|
+
<var>a</var>·<var>b</var>·<var>c</var> = <var>n</var>.\r\n\nDefine <var>f</var>(<var>n</var>)
|
11
|
+
to be <var>a</var> + <var>b</var> + <var>c</var> for the factorisation triple (<var>a</var>,
|
14
12
|
<var>b</var>, <var>c</var>) of <var>n</var> which minimises <var>c</var> / <var>a</var>.
|
15
|
-
One can show that this triple is unique.\
|
16
|
-
|
17
|
-
<var>f</var>(43!).\r\n</p>\r\n"
|
13
|
+
One can show that this triple is unique.\n\nFor example, <var>f</var>(165) = 19,
|
14
|
+
<var>f</var>(100100) = 142 and <var>f</var>(20!) = 4034872.\n\nFind <var>f</var>(43!).\n\n"
|
data/data/problems/419.yml
CHANGED
@@ -2,21 +2,16 @@
|
|
2
2
|
:id: 419
|
3
3
|
:name: Look and say sequence
|
4
4
|
:url: http://projecteuler.net/problem=419
|
5
|
-
:content: "
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
and one one'
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
A(n), B(n) and C(n) as the number of ones, twos and threes in the n'th element of
|
19
|
-
the sequence respectively.<br>\r\nOne can verify that A(40) = 31254, B(40) = 20259
|
20
|
-
and C(40) = 11625.\r\n</p>\r\n<p>\r\nFind A(n), B(n) and C(n) for n = 10<sup>12</sup>.<br>
|
21
|
-
\r\nGive your answer modulo 2<sup>30</sup> and separate your values for A, B and
|
22
|
-
C by a comma.<br> \r\nE.g. for n = 40 the answer would be 31254,20259,11625\r\n</p>\r\n\r\n\r\n"
|
5
|
+
:content: "The **look and say** sequence goes 1, 11, 21, 1211, 111221, 312211, 13112221,
|
6
|
+
1113213211, ... \n\rThe sequence starts with 1 and all other members are obtained
|
7
|
+
by describing the previous member in terms of consecutive digits. \n\rIt helps
|
8
|
+
to do this out loud: \n\r1 is 'one one' ![→](/home/will/src/euler-manager/config/../data/images/symbol_maps.gif)
|
9
|
+
11 \n\r11 is 'two ones' ![→](/home/will/src/euler-manager/config/../data/images/symbol_maps.gif)
|
10
|
+
21 \n\r21 is 'one two and one one' ![→](/home/will/src/euler-manager/config/../data/images/symbol_maps.gif)
|
11
|
+
1211 \n\r1211 is 'one one, one two and two ones' ![→](/home/will/src/euler-manager/config/../data/images/symbol_maps.gif)
|
12
|
+
111221 \n\r111221 is 'three ones, two twos and one one' ![→](/home/will/src/euler-manager/config/../data/images/symbol_maps.gif)
|
13
|
+
312211 \n\r...\n\nDefine A(n), B(n) and C(n) as the number of ones, twos and threes
|
14
|
+
in the n'th element of the sequence respectively. \n\rOne can verify that A(40)
|
15
|
+
= 31254, B(40) = 20259 and C(40) = 11625.\n\nFind A(n), B(n) and C(n) for n = 10<sup>12</sup>.
|
16
|
+
\ \n \rGive your answer modulo 2<sup>30</sup> and separate your values for A, B
|
17
|
+
and C by a comma. \n \rE.g. for n = 40 the answer would be 31254,20259,11625\n\n"
|
data/data/problems/42.yml
CHANGED
@@ -2,13 +2,12 @@
|
|
2
2
|
:id: 42
|
3
3
|
:name: Coded triangle numbers
|
4
4
|
:url: http://projecteuler.net/problem=42
|
5
|
-
:content:
|
6
|
-
is given by, <
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
the word value for SKY is 19 + 11 + 25 = 55 = <
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
triangle words?</p>\r\n"
|
5
|
+
:content: |+
|
6
|
+
The _n_<sup>th</sup> term of the sequence of triangle numbers is given by, _t<sub>n</sub>_ = ½_n_(_n_+1); so the first ten triangle numbers are:
|
7
|
+
|
8
|
+
1, 3, 6, 10, 15, 21, 28, 36, 45, 55, ...
|
9
|
+
|
10
|
+
By converting each letter in a word to a number corresponding to its alphabetical position and adding these values we form a word value. For example, the word value for SKY is 19 + 11 + 25 = 55 = _t_<sub>10</sub>. If the word value is a triangle number then we shall call the word a triangle word.
|
11
|
+
|
12
|
+
Using [words.txt](project/words.txt) (right click and 'Save Link/Target As...'), a 16K text file containing nearly two-thousand common English words, how many are triangle words?
|
13
|
+
|
data/data/problems/420.yml
CHANGED
@@ -2,12 +2,11 @@
|
|
2
2
|
:id: 420
|
3
3
|
:name: 2x2 positive integer matrix
|
4
4
|
:url: http://projecteuler.net/problem=420
|
5
|
-
:content: "
|
6
|
-
|
7
|
-
|
8
|
-
align=\"center\">\r\n<img src=\"project/images/p_420_matrix.gif\">\n</div>\r\n\r\n<p>\r\nWe
|
5
|
+
:content: "A _positive integer matrix_ is a matrix whose elements are all positive
|
6
|
+
integers. \n\rSome positive integer matrices can be expressed as a square of a
|
7
|
+
positive integer matrix in two different ways. Here is an example:\n\n ![](/home/will/src/euler-manager/config/../data/images/p_420_matrix.gif)\n\nWe
|
9
8
|
define F(<var>N</var>) as the number of the 2x2 positive integer matrices which
|
10
9
|
have a <dfn title=\"the sum of the elements on the main diagonal\">trace</dfn> less
|
11
10
|
than <var>N</var> and which can be expressed as a square of a positive integer matrix
|
12
|
-
in two different ways
|
13
|
-
F(10<sup>7</sup>).\
|
11
|
+
in two different ways. \n\rWe can verify that F(50) = 7 and F(1000) = 1019.\n\nFind
|
12
|
+
F(10<sup>7</sup>).\n\n"
|