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/352.yml
CHANGED
@@ -2,48 +2,44 @@
|
|
2
2
|
:id: 352
|
3
3
|
:name: Blood tests
|
4
4
|
:url: http://projecteuler.net/problem=352
|
5
|
-
:content: "
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
each animal) to determine the affected individual(s).</li>\r\n</ul>\n<p>\r\nSince
|
5
|
+
:content: "Each one of the 25 sheep in a flock must be tested for a rare virus, known
|
6
|
+
to affect 2% of the sheep population.\rAn accurate and extremely sensitive PCR test
|
7
|
+
exists for blood samples, producing a clear positive / negative result, but it is
|
8
|
+
very time-consuming and expensive.\n\nBecause of the high cost, the vet-in-charge
|
9
|
+
suggests that instead of performing 25 separate tests, the following procedure can
|
10
|
+
be used instead: \n \n \n\rThe sheep are split into 5 groups of 5 sheep in each
|
11
|
+
group. \rFor each group, the 5 samples are mixed together and a single test is performed.
|
12
|
+
Then,\n\n- If the result is negative, all the sheep in that group are deemed to
|
13
|
+
be virus-free.\n- If the result is positive, 5 additional tests will be performed
|
14
|
+
(a separate test for each animal) to determine the affected individual(s).\n\nSince
|
16
15
|
the probability of infection for any specific animal is only 0.02, the first test
|
17
|
-
(on the pooled samples) for each group will be:\
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
alt=\"×\" border=\"0\" style=\"vertical-align:middle;\"> 5 = <b>7.40198008</b> tests,
|
25
|
-
which represents a huge saving of more than 70% !\r\n</p>\r\n\r\n<p>\r\nAlthough
|
16
|
+
(on the pooled samples) for each group will be:\n\n- Negative (and no more tests
|
17
|
+
needed) with probability 0.98<sup>5</sup> = 0.9039207968.\n- Positive (5 additional
|
18
|
+
tests needed) with probability 1 - 0.9039207968 = 0.0960792032.\n\nThus, the expected
|
19
|
+
number of tests for each group is 1 + 0.0960792032 ![×](/home/will/src/euler-manager/config/../data/images/symbol_times.gif)
|
20
|
+
5 = 1.480396016. \n\rConsequently, all 5 groups can be screened using an average
|
21
|
+
of only 1.480396016 ![×](/home/will/src/euler-manager/config/../data/images/symbol_times.gif)
|
22
|
+
5 = **7.40198008** tests, which represents a huge saving of more than 70% !\n\nAlthough
|
26
23
|
the scheme we have just described seems to be very efficient, it can still be improved
|
27
24
|
considerably (always assuming that the test is sufficiently sensitive and that there
|
28
|
-
are no adverse effects caused by mixing different samples). E.g.:\
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
places.\r\n</p>\r\n\r\n"
|
25
|
+
are no adverse effects caused by mixing different samples). E.g.:\n\n- We may start
|
26
|
+
by running a test on a mixture of all the 25 samples. It can be verified that in
|
27
|
+
about 60.35% of the cases this test will be negative, thus no more tests will be
|
28
|
+
needed. Further testing will only be required for the remaining 39.65% of the cases.\n-
|
29
|
+
If we know that at least one animal in a group of 5 is infected and the first 4
|
30
|
+
individual tests come out negative, there is no need to run a test on the fifth
|
31
|
+
animal (we know that it must be infected).\n- We can try a different number of groups
|
32
|
+
/ different number of animals in each group, adjusting those numbers at each level
|
33
|
+
so that the total expected number of tests will be minimised.\n\nTo simplify the
|
34
|
+
very wide range of possibilities, there is one restriction we place when devising
|
35
|
+
the most cost-efficient testing scheme: whenever we start with a mixed sample, all
|
36
|
+
the sheep contributing to that sample must be fully screened (i.e. a verdict of
|
37
|
+
infected / virus-free must be reached for all of them) before we start examining
|
38
|
+
any other animals.\n\n\rFor the current example, it turns out that the most cost-efficient
|
39
|
+
testing scheme (we'll call it the _optimal strategy_) requires an average of just
|
40
|
+
**4.155452** tests!\r\r\r\n\nUsing the optimal strategy, let T(<var>s</var>,<var>p</var>)
|
41
|
+
represent the average number of tests needed to screen a flock of <var>s</var> sheep
|
42
|
+
for a virus having probability <var>p</var> to be present in any individual. \n\rThus,
|
43
|
+
rounded to six decimal places, T(25, 0.02) = 4.155452 and T(25, 0.10) = 12.702124.\n\nFind
|
44
|
+
ΣT(10000, p) for p=0.01, 0.02, 0.03, ... 0.50. \n\rGive your answer rounded to
|
45
|
+
six decimal places.\n\n"
|
data/data/problems/353.yml
CHANGED
@@ -2,24 +2,20 @@
|
|
2
2
|
:id: 353
|
3
3
|
:name: Risky moon
|
4
4
|
:url: http://projecteuler.net/problem=353
|
5
|
-
:content:
|
6
|
-
centre (0,0,0) and radius <var>r</var>.
|
7
|
-
|
8
|
-
The station at (0,0,<var>r</var>) is called North Pole station, the station at (0,0,-<var>r</var>)
|
9
|
-
|
10
|
-
each other via the shortest road on the great arc through the stations. A journey
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
style=\"vertical-align:middle;\">M(2<sup>n</sup>-1) for 1<img src=\"images/symbol_le.gif\"
|
23
|
-
width=\"10\" height=\"12\" alt=\"≤\" border=\"0\" style=\"vertical-align:middle;\">n<img
|
24
|
-
src=\"images/symbol_le.gif\" width=\"10\" height=\"12\" alt=\"≤\" border=\"0\" style=\"vertical-align:middle;\">15.\r\n</p>\r\n\r\n<p>\r\nGive
|
25
|
-
your answer rounded to 10 digits behind the decimal point in the form a.bcdefghijk.\r\n</p>\r\n\r\n\r\n"
|
5
|
+
:content: |+
|
6
|
+
A moon could be described by the sphere C(<var>r</var>) with centre (0,0,0) and radius <var>r</var>.
|
7
|
+
|
8
|
+
There are stations on the moon at the points on the surface of C(<var>r</var>) with integer coordinates. The station at (0,0,<var>r</var>) is called North Pole station, the station at (0,0,-<var>r</var>) is called South Pole station.
|
9
|
+
|
10
|
+
All stations are connected with each other via the shortest road on the great arc through the stations. A journey between two stations is risky. If <var>d</var> is the length of the road between two stations, (<var>d</var>/(π <var>r</var>))<sup>2</sup> is a measure for the risk of the journey (let us call it the risk of the road). If the journey includes more than two stations, the risk of the journey is the sum of risks of the used roads.
|
11
|
+
|
12
|
+
A direct journey from the North Pole station to the South Pole station has the length π<var>r</var> and risk 1. The journey from the North Pole station to the South Pole station via (0,<var>r</var>,0) has the same length, but a smaller risk: (½π<var>r</var>/(π<var>r</var>))<sup>2</sup>+(½π<var>r</var>/(π<var>r</var>))<sup>2</sup>=0.5.
|
13
|
+
|
14
|
+
The minimal risk of a journey from the North Pole station to the South Pole station on C(<var>r</var>) is M(<var>r</var>).
|
15
|
+
|
16
|
+
You are given that M(7)=0.1784943998 rounded to 10 digits behind the decimal point.
|
17
|
+
|
18
|
+
Find ![∑](/home/will/src/euler-manager/config/../data/images/symbol_sum.gif)M(2<sup>n</sup>-1) for 1 ![≤](/home/will/src/euler-manager/config/../data/images/symbol_le.gif)n ![≤](/home/will/src/euler-manager/config/../data/images/symbol_le.gif)15.
|
19
|
+
|
20
|
+
Give your answer rounded to 10 digits behind the decimal point in the form a.bcdefghijk.
|
21
|
+
|
data/data/problems/354.yml
CHANGED
@@ -1,16 +1,14 @@
|
|
1
1
|
---
|
2
2
|
:id: 354
|
3
|
-
:name:
|
3
|
+
:name: Distances in a bee's honeycomb
|
4
4
|
:url: http://projecteuler.net/problem=354
|
5
|
-
:content: "
|
6
|
-
|
7
|
-
particular cell is occupied by the queen bee
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
src=\"images/symbol_le.gif\" width=\"10\" height=\"12\" alt=\"≤\" border=\"0\" style=\"vertical-align:middle;\">
|
16
|
-
5·10<sup>11</sup> such that B(<var>L</var>) = 450.</p>\r\n"
|
5
|
+
:content: "Consider a honey bee's honeycomb where each cell is a perfect regular hexagon
|
6
|
+
with side length 1.\n\n ![](/home/will/src/euler-manager/config/../data/images/p_354_bee_honeycomb.png)\n\nOne
|
7
|
+
particular cell is occupied by the queen bee. \n\rFor a positive real number <var>L</var>,
|
8
|
+
let B(<var>L</var>) count the cells with distance <var>L</var> from the queen bee
|
9
|
+
cell (all distances are measured from centre to centre); you may assume that the
|
10
|
+
honeycomb is large enough to accommodate for any distance we wish to consider. \n\rFor
|
11
|
+
example, B( ![√](/home/will/src/euler-manager/config/../data/images/symbol_radic.gif)3)
|
12
|
+
= 6, B( ![√](/home/will/src/euler-manager/config/../data/images/symbol_radic.gif)21)
|
13
|
+
= 12 and B(111 111 111) = 54.\n\nFind the number of <var>L</var> ![≤](/home/will/src/euler-manager/config/../data/images/symbol_le.gif)
|
14
|
+
5·10<sup>11</sup> such that B(<var>L</var>) = 450.\n\n"
|
data/data/problems/355.yml
CHANGED
@@ -2,7 +2,7 @@
|
|
2
2
|
:id: 355
|
3
3
|
:name: Maximal coprime subset
|
4
4
|
:url: http://projecteuler.net/problem=355
|
5
|
-
:content: "
|
6
|
-
|
7
|
-
|
8
|
-
|
5
|
+
:content: "Define Co(<var>n</var>) to be the maximal possible sum of a set of mutually
|
6
|
+
co-prime elements from {1, 2, ..., <var>n</var>}. \n For example Co(10) is 30 and
|
7
|
+
hits that maximum on the subset {1, 5, 7, 8, 9}.\n\nYou are given that Co(30) =
|
8
|
+
193 and Co(100) = 1356.\n\nFind Co(200000).\n\n"
|
data/data/problems/356.yml
CHANGED
@@ -2,9 +2,9 @@
|
|
2
2
|
:id: 356
|
3
3
|
:name: Largest roots of cubic polynomials
|
4
4
|
:url: http://projecteuler.net/problem=356
|
5
|
-
:content: "
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
5
|
+
:content: "Let <var>a</var><sub><var>n</var></sub> be the largest real root of a polynomial
|
6
|
+
<var>g</var>(x) = x<sup>3</sup> - 2<sup><var>n</var></sup>·x<sup>2</sup> + <var>n</var>.
|
7
|
+
\ \n\rFor example, <var>a</var><sub>2</sub> = 3.86619826...\n\nFind the last eight
|
8
|
+
digits of ![](/home/will/src/euler-manager/config/../data/images/p_356_cubicpoly1.gif).\n\n<u><i>Note</i></u>:
|
9
|
+
![](/home/will/src/euler-manager/config/../data/images/p_356_cubicpoly2.gif) represents
|
10
|
+
the floor function.\n\n"
|
data/data/problems/357.yml
CHANGED
@@ -2,8 +2,8 @@
|
|
2
2
|
:id: 357
|
3
3
|
:name: Prime generating integers
|
4
4
|
:url: http://projecteuler.net/problem=357
|
5
|
-
:content: "
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
5
|
+
:content: "Consider the divisors of 30: 1,2,3,5,6,10,15,30. \n\rIt can be seen that
|
6
|
+
for every divisor <var>d</var> of 30, <var>d</var>+30/<var>d</var> is prime.\n\nFind
|
7
|
+
the sum of all positive integers <var>n</var> not exceeding 100 000 000 \nsuch
|
8
|
+
that\rfor every divisor <var>d</var> of <var>n</var>, <var>d</var>+<var>n</var>/<var>d</var>
|
9
|
+
is prime.\n\n"
|
data/data/problems/358.yml
CHANGED
@@ -2,30 +2,21 @@
|
|
2
2
|
:id: 358
|
3
3
|
:name: Cyclic numbers
|
4
4
|
:url: http://projecteuler.net/problem=358
|
5
|
-
:content: "
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
142857
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
16 digits :<br>\r\n0588235294117647 <img src=\"images/symbol_times.gif\" width=\"9\"
|
21
|
-
height=\"9\" alt=\"×\" border=\"0\" style=\"vertical-align:middle;\"> 1 = 0588235294117647<br>\r\n0588235294117647
|
22
|
-
<img src=\"images/symbol_times.gif\" width=\"9\" height=\"9\" alt=\"×\" border=\"0\"
|
23
|
-
style=\"vertical-align:middle;\"> 2 = 1176470588235294<br>\r\n0588235294117647 <img
|
24
|
-
src=\"images/symbol_times.gif\" width=\"9\" height=\"9\" alt=\"×\" border=\"0\"
|
25
|
-
style=\"vertical-align:middle;\"> 3 = 1764705882352941<br>\r\n...<br>\r\n0588235294117647
|
26
|
-
<img src=\"images/symbol_times.gif\" width=\"9\" height=\"9\" alt=\"×\" border=\"0\"
|
27
|
-
style=\"vertical-align:middle;\"> 16 = 9411764705882352\r\n</p>\r\n\r\n<p>\r\nNote
|
28
|
-
that for cyclic numbers, leading zeros are important.\r\n</p>\r\n\r\n<p>\r\nThere
|
5
|
+
:content: "A **cyclic number** with <var>n</var> digits has a very interesting property:
|
6
|
+
\ \n\rWhen it is multiplied by 1, 2, 3, 4, ... <var>n</var>, all the products have
|
7
|
+
exactly the same digits, in the same order, but rotated in a circular fashion!\n\nThe
|
8
|
+
smallest cyclic number is the 6-digit number 142857 : \n\r142857 ![×](/home/will/src/euler-manager/config/../data/images/symbol_times.gif)
|
9
|
+
1 = 142857 \n\r142857 ![×](/home/will/src/euler-manager/config/../data/images/symbol_times.gif)
|
10
|
+
2 = 285714 \n\r142857 ![×](/home/will/src/euler-manager/config/../data/images/symbol_times.gif)
|
11
|
+
3 = 428571 \n\r142857 ![×](/home/will/src/euler-manager/config/../data/images/symbol_times.gif)
|
12
|
+
4 = 571428 \n\r142857 ![×](/home/will/src/euler-manager/config/../data/images/symbol_times.gif)
|
13
|
+
5 = 714285 \n\r142857 ![×](/home/will/src/euler-manager/config/../data/images/symbol_times.gif)
|
14
|
+
6 = 857142\n\nThe next cyclic number is 0588235294117647 with 16 digits : \n\r0588235294117647
|
15
|
+
![×](/home/will/src/euler-manager/config/../data/images/symbol_times.gif) 1 = 0588235294117647
|
16
|
+
\ \n\r0588235294117647 ![×](/home/will/src/euler-manager/config/../data/images/symbol_times.gif)
|
17
|
+
2 = 1176470588235294 \n\r0588235294117647 ![×](/home/will/src/euler-manager/config/../data/images/symbol_times.gif)
|
18
|
+
3 = 1764705882352941 \n\r... \n\r0588235294117647 ![×](/home/will/src/euler-manager/config/../data/images/symbol_times.gif)
|
19
|
+
16 = 9411764705882352\n\nNote that for cyclic numbers, leading zeros are important.\n\nThere
|
29
20
|
is only one cyclic number for which, the eleven leftmost digits are 00000000137
|
30
21
|
and the five rightmost digits are 56789 (i.e., it has the form 00000000137...56789
|
31
|
-
with an unknown number of digits in the middle). Find the sum of all its digits.\
|
22
|
+
with an unknown number of digits in the middle). Find the sum of all its digits.\n\n"
|
data/data/problems/359.yml
CHANGED
@@ -2,25 +2,22 @@
|
|
2
2
|
:id: 359
|
3
3
|
:name: Hilbert's New Hotel
|
4
4
|
:url: http://projecteuler.net/problem=359
|
5
|
-
:content: "
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
2 in floor
|
16
|
-
room
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
<var>r</var>
|
24
|
-
<img src=\"images/symbol_times.gif\" width=\"9\" height=\"9\" alt=\"×\" border=\"0\"
|
25
|
-
style=\"vertical-align:middle;\"><var>r</var> = 71328803586048 and give the last
|
26
|
-
8 digits as your answer.\r\n</p>\r\n"
|
5
|
+
:content: "An infinite number of people (numbered 1, 2, 3, etc.) are lined up to get
|
6
|
+
a room at Hilbert's newest infinite hotel. The hotel contains an infinite number
|
7
|
+
of floors (numbered 1, 2, 3, etc.), and each floor contains an infinite number of
|
8
|
+
rooms (numbered 1, 2, 3, etc.).\n\nInitially the hotel is empty. Hilbert declares
|
9
|
+
a rule on how the <var>n</var><sup>th</sup> person is assigned a room: person <var>n</var>
|
10
|
+
gets the first vacant room in the lowest numbered floor satisfying either of the
|
11
|
+
following:\n\n- the floor is empty\n- the floor is not empty, and if the latest
|
12
|
+
person taking a room in that floor is person <var>m</var>, then <var>m</var> + <var>n</var>
|
13
|
+
is a perfect square\n\nPerson 1 gets room 1 in floor 1 since floor 1 is empty.\r
|
14
|
+
\ \nPerson 2 does not get room 2 in floor 1 since 1 + 2 = 3 is not a perfect square.\r
|
15
|
+
\ \nPerson 2 instead gets room 1 in floor 2 since floor 2 is empty.\r \nPerson
|
16
|
+
3 gets room 2 in floor 1 since 1 + 3 = 4 is a perfect square.\n\nEventually, every
|
17
|
+
person in the line gets a room in the hotel.\n\nDefine P(<var>f</var>, <var>r</var>)
|
18
|
+
to be <var>n</var> if person <var>n</var> occupies room <var>r</var> in floor <var>f</var>,
|
19
|
+
and 0 if no person occupies the room. Here are a few examples:\r \nP(1, 1) = 1\r
|
20
|
+
\ \nP(1, 2) = 3\r \nP(2, 1) = 2\r \nP(10, 20) = 440\r \nP(25, 75) = 4863\r \nP(99,
|
21
|
+
100) = 19454\n\nFind the sum of all P(<var>f</var>, <var>r</var>) for all positive
|
22
|
+
<var>f</var> and <var>r</var> such that <var>f</var> ![×](/home/will/src/euler-manager/config/../data/images/symbol_times.gif)
|
23
|
+
<var>r</var> = 71328803586048 and give the last 8 digits as your answer.\n\n"
|
data/data/problems/36.yml
CHANGED
@@ -2,7 +2,10 @@
|
|
2
2
|
:id: 36
|
3
3
|
:name: Double-base palindromes
|
4
4
|
:url: http://projecteuler.net/problem=36
|
5
|
-
:content:
|
6
|
-
|
7
|
-
|
8
|
-
|
5
|
+
:content: |+
|
6
|
+
The decimal number, 585 = 1001001001<sub>2</sub> (binary), is palindromic in both bases.
|
7
|
+
|
8
|
+
Find the sum of all numbers, less than one million, which are palindromic in base 10 and base 2.
|
9
|
+
|
10
|
+
(Please note that the palindromic number, in either base, may not include leading zeros.)
|
11
|
+
|
data/data/problems/360.yml
CHANGED
@@ -2,11 +2,11 @@
|
|
2
2
|
:id: 360
|
3
3
|
:name: Scary Sphere
|
4
4
|
:url: http://projecteuler.net/problem=360
|
5
|
-
:content: "
|
6
|
-
|
7
|
-
|
8
|
-
C(<var>r</var>) be a sphere with radius <var>r</var> and center in the origin O(0,0,0)
|
9
|
-
I(<var>r</var>) be the set of all points with integer coordinates on the
|
10
|
-
of C(<var>r</var>)
|
11
|
-
of all elements of I(<var>r</var>) to the origin O.\
|
12
|
-
S(10<sup>10</sup>).\
|
5
|
+
:content: "Given two points (x<sub>1</sub>,y<sub>1</sub>,z<sub>1</sub>) and (x<sub>2</sub>,y<sub>2</sub>,z<sub>2</sub>)
|
6
|
+
in three dimensional space, the **Manhattan distance** between those points is defined
|
7
|
+
as \n |x<sub>1</sub>-x<sub>2</sub>|+|y<sub>1</sub>-y<sub>2</sub>|+|z<sub>1</sub>-z<sub>2</sub>|.\n\nLet
|
8
|
+
C(<var>r</var>) be a sphere with radius <var>r</var> and center in the origin O(0,0,0).
|
9
|
+
\ \n\rLet I(<var>r</var>) be the set of all points with integer coordinates on the
|
10
|
+
surface of C(<var>r</var>). \n\rLet S(<var>r</var>) be the sum of the Manhattan
|
11
|
+
distances of all elements of I(<var>r</var>) to the origin O.\n\nE.g. S(45)=34518.\n\nFind
|
12
|
+
S(10<sup>10</sup>).\n\n"
|
data/data/problems/361.yml
CHANGED
@@ -2,19 +2,18 @@
|
|
2
2
|
:id: 361
|
3
3
|
:name: Subsequence of Thue-Morse sequence
|
4
4
|
:url: http://projecteuler.net/problem=361
|
5
|
-
:content: "
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
style=\"color:red;\">10010</span>1101001011001101001....\r\n</p>\r\n\r\n<p>\r\nWe
|
5
|
+
:content: "The **Thue-Morse sequence** {T<sub><var>n</var></sub>} is a binary sequence
|
6
|
+
satisfying:\n\n- T<sub>0</sub> = 0\n- T<sub>2<var>n</var></sub> = T<sub><var>n</var></sub>\n-
|
7
|
+
T<sub>2<var>n</var>+1</sub> = 1 - T<sub><var>n</var></sub>\n\nThe first several
|
8
|
+
terms of {T<sub><var>n</var></sub>} are given as follows: \n\r01101001100101101001011001101001....\n\nWe
|
10
9
|
define {A<sub><var>n</var></sub>} as the sorted sequence of integers such that the
|
11
|
-
binary expression of each element appears as a subsequence in {T<sub><var>n</var></sub>}
|
12
|
-
example, the decimal number 18 is expressed as 10010 in binary. 10010
|
13
|
-
{T<sub><var>n</var></sub>} (T<sub>8</sub> to T<sub>12</sub>), so 18 is
|
14
|
-
of {A<sub><var>n</var></sub>}
|
15
|
-
in binary. 1110 never appears in {T<sub><var>n</var></sub>}, so 14 is not
|
16
|
-
of {A<sub><var>n</var></sub>}.\
|
17
|
-
|
18
|
-
|
19
|
-
can also verify that A<sub>100</sub> = 3251
|
20
|
-
the last 9 digits of
|
10
|
+
binary expression of each element appears as a subsequence in {T<sub><var>n</var></sub>}.
|
11
|
+
\ \n\rFor example, the decimal number 18 is expressed as 10010 in binary. 10010
|
12
|
+
appears in {T<sub><var>n</var></sub>} (T<sub>8</sub> to T<sub>12</sub>), so 18 is
|
13
|
+
an element of {A<sub><var>n</var></sub>}. \n\rThe decimal number 14 is expressed
|
14
|
+
as 1110 in binary. 1110 never appears in {T<sub><var>n</var></sub>}, so 14 is not
|
15
|
+
an element of {A<sub><var>n</var></sub>}.\n\nThe first several terms of A<sub><var>n</var></sub>
|
16
|
+
are given as follows:\n\n| <var>n</var> | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9
|
17
|
+
| 10 | 11 | 12 | … |\n| A<sub><var>n</var></sub> | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 9
|
18
|
+
| 10 | 11 | 12 | 13 | 18 | … |\n\nWe can also verify that A<sub>100</sub> = 3251
|
19
|
+
and A<sub>1000</sub> = 80852364498.\n\nFind the last 9 digits of ![](/home/will/src/euler-manager/config/../data/images/p_361_Thue-Morse1.gif).\n\n"
|
data/data/problems/362.yml
CHANGED
@@ -2,31 +2,19 @@
|
|
2
2
|
:id: 362
|
3
3
|
:name: Squarefree factors
|
4
4
|
:url: http://projecteuler.net/problem=362
|
5
|
-
:content: "
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
src
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
width=\"9\" height=\"9\" alt=\"×\" border=\"0\" style=\"vertical-align:middle;\">3<img
|
22
|
-
src=\"images/symbol_times.gif\" width=\"9\" height=\"9\" alt=\"×\" border=\"0\"
|
23
|
-
style=\"vertical-align:middle;\">6 and 2<img src=\"images/symbol_times.gif\" width=\"9\"
|
24
|
-
height=\"9\" alt=\"×\" border=\"0\" style=\"vertical-align:middle;\">3<img src=\"images/symbol_times.gif\"
|
25
|
-
width=\"9\" height=\"9\" alt=\"×\" border=\"0\" style=\"vertical-align:middle;\">3<img
|
26
|
-
src=\"images/symbol_times.gif\" width=\"9\" height=\"9\" alt=\"×\" border=\"0\"
|
27
|
-
style=\"vertical-align:middle;\">3.\r\n</p>\r\n<p>\r\nLet's call Fsf(<var>n</var>)
|
28
|
-
the number of ways <var>n</var> can be factored into one or more squarefree factors
|
29
|
-
larger than 1, so\r\nFsf(54)=2.\r\n</p>\r\n<p>\r\nLet S(<var>n</var>) be <img src=\"images/symbol_sum.gif\"
|
30
|
-
width=\"11\" height=\"14\" alt=\"∑\" border=\"0\" style=\"vertical-align:middle;\">Fsf(<var>k</var>)
|
31
|
-
for <var>k</var>=2 to <var>n</var>.\r\n</p>\r\n<p>\r\nS(100)=193.\r\n</p>\r\n<p>\r\nFind
|
32
|
-
S(10 000 000 000). \r\n</p>\r\n\r\n\r\n"
|
5
|
+
:content: "Consider the number 54. \n\r54 can be factored in 7 distinct ways into
|
6
|
+
one or more factors larger than 1: \n\r54, 2 ![×](/home/will/src/euler-manager/config/../data/images/symbol_times.gif)27,
|
7
|
+
3 ![×](/home/will/src/euler-manager/config/../data/images/symbol_times.gif)18, 6
|
8
|
+
![×](/home/will/src/euler-manager/config/../data/images/symbol_times.gif)9, 3 ![×](/home/will/src/euler-manager/config/../data/images/symbol_times.gif)3
|
9
|
+
![×](/home/will/src/euler-manager/config/../data/images/symbol_times.gif)6, 2 ![×](/home/will/src/euler-manager/config/../data/images/symbol_times.gif)3
|
10
|
+
![×](/home/will/src/euler-manager/config/../data/images/symbol_times.gif)9 and 2
|
11
|
+
![×](/home/will/src/euler-manager/config/../data/images/symbol_times.gif)3 ![×](/home/will/src/euler-manager/config/../data/images/symbol_times.gif)3
|
12
|
+
![×](/home/will/src/euler-manager/config/../data/images/symbol_times.gif)3. \n\rIf
|
13
|
+
we require that the factors are all squarefree only two ways remain: 3 ![×](/home/will/src/euler-manager/config/../data/images/symbol_times.gif)3
|
14
|
+
![×](/home/will/src/euler-manager/config/../data/images/symbol_times.gif)6 and 2
|
15
|
+
![×](/home/will/src/euler-manager/config/../data/images/symbol_times.gif)3 ![×](/home/will/src/euler-manager/config/../data/images/symbol_times.gif)3
|
16
|
+
![×](/home/will/src/euler-manager/config/../data/images/symbol_times.gif)3.\n\nLet's
|
17
|
+
call Fsf(<var>n</var>) the number of ways <var>n</var> can be factored into one
|
18
|
+
or more squarefree factors larger than 1, so\rFsf(54)=2.\n\nLet S(<var>n</var>)
|
19
|
+
be ![∑](/home/will/src/euler-manager/config/../data/images/symbol_sum.gif)Fsf(<var>k</var>)
|
20
|
+
for <var>k</var>=2 to <var>n</var>.\n\nS(100)=193.\n\nFind S(10 000 000 000).\n\n"
|
data/data/problems/363.yml
CHANGED
@@ -2,32 +2,31 @@
|
|
2
2
|
:id: 363
|
3
3
|
:name: Bézier Curves
|
4
4
|
:url: http://projecteuler.net/problem=363
|
5
|
-
:content: "\
|
6
|
-
P<sub>2</sub> and P<sub>3</sub>.\r\n
|
5
|
+
:content: "\rA cubic Bézier curve is defined by four points: P<sub>0</sub>, P<sub>1</sub>,
|
6
|
+
P<sub>2</sub> and P<sub>3</sub>.\r\n\nThe curve is constructed as follows: \n\rOn
|
7
7
|
the segments P<sub>0</sub>P<sub>1</sub>, P<sub>1</sub>P<sub>2</sub> and P<sub>2</sub>P<sub>3</sub>
|
8
|
-
the points Q<sub>0</sub>,Q<sub>1</sub> and Q<sub>2</sub> are drawn such that
|
9
|
-
(t in [0,1])
|
10
|
-
the points R<sub>0</sub> and R<sub>1</sub> are drawn such that\
|
11
|
-
for the same value of t
|
8
|
+
the points Q<sub>0</sub>,Q<sub>1</sub> and Q<sub>2</sub> are drawn such that P<sub>0</sub>Q<sub>0</sub>/P<sub>0</sub>P<sub>1</sub>=P<sub>1</sub>Q<sub>1</sub>/P<sub>1</sub>P<sub>2</sub>=P<sub>2</sub>Q<sub>2</sub>/P<sub>2</sub>P<sub>3</sub>=t
|
9
|
+
(t in [0,1]). \n\rOn the segments Q<sub>0</sub>Q<sub>1</sub> and Q<sub>1</sub>Q<sub>2</sub>
|
10
|
+
the points R<sub>0</sub> and R<sub>1</sub> are drawn such that\rQ<sub>0</sub>R<sub>0</sub>/Q<sub>0</sub>Q<sub>1</sub>=Q<sub>1</sub>R<sub>1</sub>/Q<sub>1</sub>Q<sub>2</sub>=t
|
11
|
+
for the same value of t. \n\rOn the segment R<sub>0</sub>R<sub>1</sub> the point
|
12
12
|
B is drawn such that R<sub>0</sub>B/R<sub>0</sub>R<sub>1</sub>=t for the same value
|
13
|
-
of t.\
|
13
|
+
of t.\rThe Bézier curve defined by the points P<sub>0</sub>, P<sub>1</sub>, P<sub>2</sub>,
|
14
14
|
P<sub>3</sub> is the locus of B as Q<sub>0</sub> takes all possible positions on
|
15
15
|
the segment P<sub>0</sub>P<sub>1</sub>. (Please note that for all points the value
|
16
|
-
of t is the same.)
|
17
|
-
|
18
|
-
\ <param name=\"lang\" value=\"en\">\n<param name=\"file\" value=\"
|
19
|
-
name=\"loop\" value=\"true\"
|
20
|
-
|
21
|
-
to see what the Bézier curve (green curve) defined by those points
|
22
|
-
|
16
|
+
of t is the same.)\n\n<applet code=\"CabriJava.class\" width=\"390\" height=\"300\"
|
17
|
+
align=\"right\" hspace=\"20\" archive=\"project/images/bezier/CabriJava.jar\">\r\n
|
18
|
+
\ <param name=\"lang\" value=\"en\">\r\n <param name=\"file\" value=\"project/images/bezier/bezier.fig\">\r\n
|
19
|
+
\ <param name=\"loop\" value=\"true\">\r\n</applet>\n\nIn the applet to the right
|
20
|
+
you can drag the points P<sub>0</sub>, P<sub>1</sub>, P<sub>2</sub> and P<sub>3</sub>
|
21
|
+
to see what the Bézier curve (green curve) defined by those points looks like. You
|
22
|
+
can also drag the point Q<sub>0</sub> along the segment P<sub>0</sub>P<sub>1</sub>.\n\nFrom
|
23
23
|
the construction it is clear that the Bézier curve will be tangent to the segments
|
24
|
-
P<sub>0</sub>P<sub>1</sub> in P<sub>0</sub> and P<sub>2</sub>P<sub>3</sub> in P<sub>3</sub>.\
|
24
|
+
P<sub>0</sub>P<sub>1</sub> in P<sub>0</sub> and P<sub>2</sub>P<sub>3</sub> in P<sub>3</sub>.\n\nA
|
25
25
|
cubic Bézier curve with P<sub>0</sub>=(1,0), P<sub>1</sub>=(1,<var>v</var>), P<sub>2</sub>=(<var>v</var>,1)
|
26
|
-
and P<sub>3</sub>=(0,1) is used to approximate a quarter circle
|
27
|
-
<var>v</var
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
your answer rounded to 10 digits behind the decimal point.\r\n\r\n\r\n\r\n</p>"
|
26
|
+
and P<sub>3</sub>=(0,1) is used to approximate a quarter circle. \n\rThe value
|
27
|
+
<var>v</var> ![>](/home/will/src/euler-manager/config/../data/images/symbol_gt.gif)0
|
28
|
+
is chosen such that the area enclosed by the lines OP<sub>0</sub>, OP<sub>3</sub>
|
29
|
+
and the curve is equal to <sup>π</sup>/<sub>4</sub> (the area of the quarter circle).\n\nBy
|
30
|
+
how many percent does the length of the curve differ from the length of the quarter
|
31
|
+
circle? \n\rThat is, if L is the length of the curve, calculate 100\\*<sup>(L-π/2)</sup>/<sub>(π/2)</sub>.
|
32
|
+
\ \n\rGive your answer rounded to 10 digits behind the decimal point.\n\n"
|
data/data/problems/364.yml
CHANGED
@@ -2,14 +2,12 @@
|
|
2
2
|
:id: 364
|
3
3
|
:name: Comfortable distance
|
4
4
|
:url: http://projecteuler.net/problem=364
|
5
|
-
:content: "
|
6
|
-
|
7
|
-
|
8
|
-
such
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
T(10) = 61632 and T(1 000) mod 100 000 007 = 47255094.</p>\r\n<p>Find T(1 000 000)
|
15
|
-
mod 100 000 007.</p>\r\n"
|
5
|
+
:content: "There are <var>N</var> seats in a row. <var>N</var> people come after each
|
6
|
+
other to fill the seats according to the following rules:\n\n1. If there is any
|
7
|
+
seat whose adjacent seat(s) are not occupied take such a seat.\n2. If there is no
|
8
|
+
such seat and there is any seat for which only one adjacent seat is occupied take
|
9
|
+
such a seat.\n3. Otherwise take one of the remaining available seats. \n\rLet T(<var>N</var>)
|
10
|
+
be the number of possibilities that <var>N</var> seats are occupied by <var>N</var>
|
11
|
+
people with the given rules. \n The following figure shows T(4)=8.\r\r\r\n ![](/home/will/src/euler-manager/config/../data/images/p_364_comf_dist.gif)\n\nWe
|
12
|
+
can verify that T(10) = 61632 and T(1 000) mod 100 000 007 = 47255094.\n\nFind T(1
|
13
|
+
000 000) mod 100 000 007.\n\n"
|