euler-manager 0.0.5 → 0.0.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/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/438.yml
DELETED
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
:id: 438
|
|
3
|
-
:name: Integer part of polynomial equation's solutions
|
|
4
|
-
:url: http://projecteuler.net/problem=438
|
|
5
|
-
:content: "\r\n<p>\r\nFor an <var>n</var>-tuple of integers <var>t</var> = (<var>a</var><sub>1</sub>,
|
|
6
|
-
..., <var>a</var><sub><var>n</var></sub>), let (<var>x</var><sub>1</sub>, ..., <var>x</var><sub><var>n</var></sub>)
|
|
7
|
-
be the solutions of the polynomial equation <var>x</var><sup><var>n</var></sup>
|
|
8
|
-
+ <var>a</var><sub>1</sub><var>x</var><sup><var>n</var>-1</sup> + <var>a</var><sub>2</sub><var>x</var><sup><var>n</var>-2</sup>
|
|
9
|
-
+ ... + <var>a</var><sub><var>n</var>-1</sub><var>x</var> + <var>a</var><sub><var>n</var></sub>
|
|
10
|
-
= 0.\r\n</p>\r\n<p>\r\nConsider the following two conditions:\r\n</p>\n<ul>\n<li>\n<var>x</var><sub>1</sub>,
|
|
11
|
-
..., <var>x</var><sub><var>n</var></sub> are all real.\r\n</li>\n<li>If <var>x</var><sub>1</sub>,
|
|
12
|
-
..., <var>x</var><sub><var>n</var></sub> are sorted, <img src=\"images/symbol_lfloor.gif\"
|
|
13
|
-
width=\"6\" height=\"16\" alt=\"⌊\" border=\"0\" style=\"vertical-align:middle;\"><var>x</var><sub><var>i</var></sub><img
|
|
14
|
-
src=\"images/symbol_rfloor.gif\" width=\"6\" height=\"16\" alt=\"⌋\" border=\"0\"
|
|
15
|
-
style=\"vertical-align:middle;\"> = <var>i</var> for 1 <img src=\"images/symbol_le.gif\"
|
|
16
|
-
width=\"10\" height=\"12\" alt=\"≤\" border=\"0\" style=\"vertical-align:middle;\"><var>i</var>
|
|
17
|
-
<img src=\"images/symbol_le.gif\" width=\"10\" height=\"12\" alt=\"≤\" border=\"0\"
|
|
18
|
-
style=\"vertical-align:middle;\"><var>n</var>. (<img src=\"images/symbol_lfloor.gif\"
|
|
19
|
-
width=\"6\" height=\"16\" alt=\"⌊\" border=\"0\" style=\"vertical-align:middle;\">·<img
|
|
20
|
-
src=\"images/symbol_rfloor.gif\" width=\"6\" height=\"16\" alt=\"⌋\" border=\"0\"
|
|
21
|
-
style=\"vertical-align:middle;\">: floor function.)\r\n</li>\n</ul>\n<p>\r\nIn the
|
|
22
|
-
case of <var>n</var> = 4, there are 12 <var>n</var>-tuples of integers which satisfy
|
|
23
|
-
both conditions.<br>\r\nWe define S(<var>t</var>) as the sum of the absolute values
|
|
24
|
-
of the integers in <var>t</var>.<br>\r\nFor <var>n</var> = 4 we can verify that
|
|
25
|
-
<img src=\"images/symbol_sum.gif\" width=\"11\" height=\"14\" alt=\"∑\" border=\"0\"
|
|
26
|
-
style=\"vertical-align:middle;\">S(<var>t</var>) = 2087 for all <var>n</var>-tuples
|
|
27
|
-
<var>t</var> which satisfy both conditions.\r\n</p>\r\n<p>\r\nFind <img src=\"images/symbol_sum.gif\"
|
|
28
|
-
width=\"11\" height=\"14\" alt=\"∑\" border=\"0\" style=\"vertical-align:middle;\">S(<var>t</var>)
|
|
29
|
-
for <var>n</var> = 7.\r\n</p>\r\n"
|
data/data/problems/439.yml
DELETED
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
:id: 439
|
|
3
|
-
:name: Sum of sum of divisors
|
|
4
|
-
:url: http://projecteuler.net/problem=439
|
|
5
|
-
:content: "\r\n<p>Let <var>d</var>(<var>k</var>) be the sum of all divisors of <var>k</var>.<br>\r\nWe
|
|
6
|
-
define the function S(<var>N</var>) = <img src=\"images/symbol_sum.gif\" width=\"11\"
|
|
7
|
-
height=\"14\" alt=\"∑\" border=\"0\" style=\"vertical-align:middle;\"><sub>1<img
|
|
8
|
-
src=\"images/symbol_le.gif\" width=\"10\" height=\"12\" alt=\"≤\" border=\"0\" style=\"vertical-align:middle;\"><var>i</var><img
|
|
9
|
-
src=\"images/symbol_le.gif\" width=\"10\" height=\"12\" alt=\"≤\" border=\"0\" style=\"vertical-align:middle;\"><var>N</var></sub><img
|
|
10
|
-
src=\"images/symbol_sum.gif\" width=\"11\" height=\"14\" alt=\"∑\" border=\"0\"
|
|
11
|
-
style=\"vertical-align:middle;\"><sub>1<img src=\"images/symbol_le.gif\" width=\"10\"
|
|
12
|
-
height=\"12\" alt=\"≤\" border=\"0\" style=\"vertical-align:middle;\"><var>j</var><img
|
|
13
|
-
src=\"images/symbol_le.gif\" width=\"10\" height=\"12\" alt=\"≤\" border=\"0\" style=\"vertical-align:middle;\"><var>N</var></sub><var>d</var>(<var>i</var>·<var>j</var>).<br>\r\nFor
|
|
14
|
-
example, S(3) = <var>d</var>(1) + <var>d</var>(2) + <var>d</var>(3) + <var>d</var>(2)
|
|
15
|
-
+ <var>d</var>(4) + <var>d</var>(6) + <var>d</var>(3) + <var>d</var>(6) + <var>d</var>(9)
|
|
16
|
-
= 59.</p>\r\n\r\n<p>You are given that S(10<sup>3</sup>) = 563576517282 and S(10<sup>5</sup>)
|
|
17
|
-
mod 10<sup>9</sup> = 215766508.<br>\r\nFind S(10<sup>11</sup>) mod 10<sup>9</sup>.</p>\r\n\r\n"
|
data/data/problems/440.yml
DELETED
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
:id: 440
|
|
3
|
-
:name: GCD and Tiling
|
|
4
|
-
:url: http://projecteuler.net/problem=440
|
|
5
|
-
:content: "\r\n<p>We want to tile a board of length <var>n</var> and height 1 completely,
|
|
6
|
-
with either 1 <img src=\"images/symbol_times.gif\" width=\"9\" height=\"9\" alt=\"×\"
|
|
7
|
-
border=\"0\" style=\"vertical-align:middle;\"> 2 blocks or 1 <img src=\"images/symbol_times.gif\"
|
|
8
|
-
width=\"9\" height=\"9\" alt=\"×\" border=\"0\" style=\"vertical-align:middle;\">
|
|
9
|
-
1 blocks with a single decimal digit on top:</p>\r\n\r\n<img src=\"project/images/p440_tiles.png\"><p>For
|
|
10
|
-
example, here are some of the ways to tile a board of length <var>n</var> = 8:</p>\r\n\r\n<img
|
|
11
|
-
src=\"project/images/p440_some8.png\"><p>Let T(<var>n</var>) be the number of ways
|
|
12
|
-
to tile a board of length <var>n</var> as described above.</p>\r\n\r\n<p>For example,
|
|
13
|
-
T(1) = 10 and T(2) = 101.</p>\r\n\r\n<p>Let S(<var>L</var>) be the triple sum <img
|
|
14
|
-
src=\"images/symbol_sum.gif\" width=\"11\" height=\"14\" alt=\"∑\" border=\"0\"
|
|
15
|
-
style=\"vertical-align:middle;\"><sub><var>a</var>,<var>b</var>,<var>c</var></sub>
|
|
16
|
-
gcd(T(<var>c</var><sup><var>a</var></sup>), T(<var>c</var><sup><var>b</var></sup>))
|
|
17
|
-
for 1 <img src=\"images/symbol_le.gif\" width=\"10\" height=\"12\" alt=\"≤\" border=\"0\"
|
|
18
|
-
style=\"vertical-align:middle;\"><var>a</var>, <var>b</var>, <var>c</var> <img src=\"images/symbol_le.gif\"
|
|
19
|
-
width=\"10\" height=\"12\" alt=\"≤\" border=\"0\" style=\"vertical-align:middle;\"><var>L</var>.<br>\r\nFor
|
|
20
|
-
example:<br>\r\nS(2) = 10444<br>\r\nS(3) = 1292115238446807016106539989<br>\r\nS(4)
|
|
21
|
-
mod 987 898 789 = 670616280.</p>\r\n\r\n<p>Find S(2000) mod 987 898 789.</p>\r\n"
|
data/data/problems/441.yml
DELETED
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
:id: 441
|
|
3
|
-
:name: The inverse summation of coprime couples
|
|
4
|
-
:url: http://projecteuler.net/problem=441
|
|
5
|
-
:content: "\r\n<p>\r\nFor an integer <var>M</var>, we define R(<var>M</var>) as the
|
|
6
|
-
sum of 1/(<var>p</var>·<var>q</var>) for all the integer pairs <var>p</var> and
|
|
7
|
-
<var>q</var> which satisfy all of these conditions:\r\n</p>\r\n<ul>\n<li> 1 <img
|
|
8
|
-
src=\"images/symbol_le.gif\" width=\"10\" height=\"12\" alt=\"≤\" border=\"0\" style=\"vertical-align:middle;\"><var>p</var>
|
|
9
|
-
<img src=\"images/symbol_lt.gif\" width=\"10\" height=\"10\" alt=\"<\" border=\"0\"
|
|
10
|
-
style=\"vertical-align:middle;\"><var>q</var> <img src=\"images/symbol_le.gif\"
|
|
11
|
-
width=\"10\" height=\"12\" alt=\"≤\" border=\"0\" style=\"vertical-align:middle;\"><var>M</var>\n</li>\r\n<li>
|
|
12
|
-
<var>p</var> + <var>q</var> <img src=\"images/symbol_ge.gif\" width=\"10\" height=\"12\"
|
|
13
|
-
alt=\"≥\" border=\"0\" style=\"vertical-align:middle;\"><var>M</var>\n</li>\r\n<li>
|
|
14
|
-
<var>p</var> and <var>q</var> are coprime.</li>\r\n</ul>\n<p>\r\nWe also define
|
|
15
|
-
S(<var>N</var>) as the sum of R(<var>i</var>) for 2 <img src=\"images/symbol_le.gif\"
|
|
16
|
-
width=\"10\" height=\"12\" alt=\"≤\" border=\"0\" style=\"vertical-align:middle;\"><var>i</var>
|
|
17
|
-
<img src=\"images/symbol_le.gif\" width=\"10\" height=\"12\" alt=\"≤\" border=\"0\"
|
|
18
|
-
style=\"vertical-align:middle;\"><var>N</var>.<br>\r\nWe can verify that S(2) =
|
|
19
|
-
R(2) = 1/2, S(10) <img src=\"images/symbol_asymp.gif\" width=\"11\" height=\"9\"
|
|
20
|
-
alt=\"≈\" border=\"0\" style=\"vertical-align:middle;\"> 6.9147 and S(100) <img
|
|
21
|
-
src=\"images/symbol_asymp.gif\" width=\"11\" height=\"9\" alt=\"≈\" border=\"0\"
|
|
22
|
-
style=\"vertical-align:middle;\"> 58.2962.\r\n</p>\r\n<p>\r\nFind S(10<sup>7</sup>).
|
|
23
|
-
Give your answer rounded to four decimal places.\r\n</p>\r\n"
|
data/data/problems/442.yml
DELETED
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
:id: 442
|
|
3
|
-
:name: Eleven-free integers
|
|
4
|
-
:url: http://projecteuler.net/problem=442
|
|
5
|
-
:content: "\r\n<p>An integer is called <i>eleven-free</i> if its decimal expansion
|
|
6
|
-
does not contain any substring representing a power of 11 except 1.</p>\r\n\r\n<p>For
|
|
7
|
-
example, 2404 and 13431 are eleven-free, while 911 and 4121331 are not.</p>\r\n\r\n<p>Let
|
|
8
|
-
E(<i>n</i>) be the <i>n</i>th positive eleven-free integer. For example, E(3) =
|
|
9
|
-
3, E(200) = 213 and E(500 000) = 531563.</p>\r\n\r\n<p>Find E(10<sup>18</sup>).</p>\r\n\r\n"
|
data/data/problems/443.yml
DELETED
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
:id: 443
|
|
3
|
-
:name: GCD sequence
|
|
4
|
-
:url: http://projecteuler.net/problem=443
|
|
5
|
-
:content: "\r\n<p>Let g(<var>n</var>) be a sequence defined as follows:<br>\r\ng(4)
|
|
6
|
-
= 13,<br>\r\ng(<var>n</var>) = g(<var>n</var>-1) + gcd(<var>n</var>, g(<var>n</var>-1))
|
|
7
|
-
for <var>n</var> <img src=\"images/symbol_gt.gif\" width=\"10\" height=\"10\" alt=\">\"
|
|
8
|
-
border=\"0\" style=\"vertical-align:middle;\"> 4.</p>\r\n\r\n<p>The first few values
|
|
9
|
-
are:</p>\r\n<div align=\"center\">\r\n <table cellspacing=\"1\" cellpadding=\"5\"
|
|
10
|
-
border=\"0\" align=\"center\">\n<tr>\n<td><var>n</var></td>\n<td>4</td>\n<td>5</td>\n<td>6</td>\n<td>7</td>\n<td>8</td>\n<td>9</td>\n<td>10</td>\n<td>11</td>\n<td>12</td>\n<td>13</td>\n<td>14</td>\n<td>15</td>\n<td>16</td>\n<td>17</td>\n<td>18</td>\n<td>19</td>\n<td>20</td>\n<td>...</td>\r\n
|
|
11
|
-
\ </tr>\n<tr>\n<td>g(<var>n</var>)</td>\n<td>13</td>\n<td>14</td>\n<td>16</td>\n<td>17</td>\n<td>18</td>\n<td>27</td>\n<td>28</td>\n<td>29</td>\n<td>30</td>\n<td>31</td>\n<td>32</td>\n<td>33</td>\n<td>34</td>\n<td>51</td>\n<td>54</td>\n<td>55</td>\n<td>60</td>\n<td>...</td>\r\n
|
|
12
|
-
\ </tr>\n</table>\n</div>\r\n\r\n<p>You are given that g(1 000) = 2524 and g(1 000 000)
|
|
13
|
-
= 2624152.</p>\r\n\r\n<p>Find g(10<sup>15</sup>).</p>\r\n"
|
data/data/problems/444.yml
DELETED
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
:id: 444
|
|
3
|
-
:name: The Roundtable Lottery
|
|
4
|
-
:url: http://projecteuler.net/problem=444
|
|
5
|
-
:content: "\r\n<p>A group of <var>p</var> people decide to sit down at a round table
|
|
6
|
-
and play a lottery-ticket trading game. Each person starts off with a randomly-assigned,
|
|
7
|
-
unscratched lottery ticket. Each ticket, when scratched, reveals a whole-pound prize
|
|
8
|
-
ranging anywhere from £1 to £<var>p</var>, with no two tickets alike. The goal of
|
|
9
|
-
the game is for each person to maximize his ticket winnings upon leaving the game.</p>\r\n\r\n<p>An
|
|
10
|
-
arbitrary person is chosen to be the first player. Going around the table, each
|
|
11
|
-
player has only one of two options:</p>\r\n\r\n<p>1. The player can scratch his
|
|
12
|
-
ticket and reveal its worth to everyone at the table.<br>\r\n2. The player can trade
|
|
13
|
-
his unscratched ticket for a previous player's scratched ticket, and then leave
|
|
14
|
-
the game with that ticket. The previous player then scratches his newly-acquired
|
|
15
|
-
ticket and reveals its worth to everyone at the table.</p>\r\n\r\n<p>The game ends
|
|
16
|
-
once all tickets have been scratched. All players still remaining at the table must
|
|
17
|
-
leave with their currently-held tickets.</p>\r\n\r\n<p>Assume that each player uses
|
|
18
|
-
the optimal strategy for maximizing the expected value of his ticket winnings. </p>\r\n\r\n<p>Let
|
|
19
|
-
E(<var>p</var>) represent the expected number of players left at the table when
|
|
20
|
-
the game ends in a game consisting of <var>p</var> players (e.g. E(111) = 5.2912
|
|
21
|
-
when rounded to 5 significant digits).</p>\r\n\r\n<p>Let S<sub>1</sub>(<var>N</var>)
|
|
22
|
-
= <img style=\"vertical-align:middle\" src=\"project/images/p444_sum.png\"> E(<var>p</var>)<br>\r\nLet
|
|
23
|
-
S<sub><var>k</var></sub>(<var>N</var>) = <img style=\"vertical-align:middle\" src=\"project/images/p444_sum.png\">
|
|
24
|
-
S<sub><var>k</var>-1</sub>(<var>p</var>) for <var>k</var> <img src=\"images/symbol_gt.gif\"
|
|
25
|
-
width=\"10\" height=\"10\" alt=\">\" border=\"0\" style=\"vertical-align:middle;\">
|
|
26
|
-
1</p>\r\n\r\n<p>Find S<sub>20</sub>(10<sup>14</sup>) and write the answer in scientific
|
|
27
|
-
notation rounded to 10 significant digits. Use a lowercase e to separate mantissa
|
|
28
|
-
and exponent (e.g. S<sub>3</sub>(100) = 5.983679014e5).</p>\r\n\r\n"
|
data/data/problems/445.yml
DELETED
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
:id: 445
|
|
3
|
-
:name: Retractions A
|
|
4
|
-
:url: http://projecteuler.net/problem=445
|
|
5
|
-
:content: "\r\n<p>\r\nFor every integer n<img src=\"images/symbol_gt.gif\" width=\"10\"
|
|
6
|
-
height=\"10\" alt=\">\" border=\"0\" style=\"vertical-align:middle;\">1, the
|
|
7
|
-
family of functions f<sub>n,a,b</sub> is defined \r\nby f<sub>n,a,b</sub>(<var>x</var>)<img
|
|
8
|
-
src=\"images/symbol_cong.gif\" width=\"9\" height=\"11\" alt=\"≡\" border=\"0\"
|
|
9
|
-
style=\"vertical-align:middle;\">a<var>x</var>+b mod n for a,b,<var>x</var> integer
|
|
10
|
-
and 0<img src=\"images/symbol_lt.gif\" width=\"10\" height=\"10\" alt=\"<\"
|
|
11
|
-
border=\"0\" style=\"vertical-align:middle;\">a<img src=\"images/symbol_lt.gif\"
|
|
12
|
-
width=\"10\" height=\"10\" alt=\"<\" border=\"0\" style=\"vertical-align:middle;\">n,
|
|
13
|
-
0<img src=\"images/symbol_le.gif\" width=\"10\" height=\"12\" alt=\"≤\" border=\"0\"
|
|
14
|
-
style=\"vertical-align:middle;\">b<img src=\"images/symbol_lt.gif\" width=\"10\"
|
|
15
|
-
height=\"10\" alt=\"<\" border=\"0\" style=\"vertical-align:middle;\">n, 0<img
|
|
16
|
-
src=\"images/symbol_le.gif\" width=\"10\" height=\"12\" alt=\"≤\" border=\"0\" style=\"vertical-align:middle;\"><var>x</var><img
|
|
17
|
-
src=\"images/symbol_lt.gif\" width=\"10\" height=\"10\" alt=\"<\" border=\"0\"
|
|
18
|
-
style=\"vertical-align:middle;\">n.<br>\r\nWe will call f<sub>n,a,b</sub> a <i>retraction</i>
|
|
19
|
-
if f<sub>n,a,b</sub>(f<sub>n,a,b</sub>(<var>x</var>))<img src=\"images/symbol_cong.gif\"
|
|
20
|
-
width=\"9\" height=\"11\" alt=\"≡\" border=\"0\" style=\"vertical-align:middle;\">f<sub>n,a,b</sub>(<var>x</var>)
|
|
21
|
-
mod n for every 0<img src=\"images/symbol_le.gif\" width=\"10\" height=\"12\" alt=\"≤\"
|
|
22
|
-
border=\"0\" style=\"vertical-align:middle;\"><var>x</var><img src=\"images/symbol_lt.gif\"
|
|
23
|
-
width=\"10\" height=\"10\" alt=\"<\" border=\"0\" style=\"vertical-align:middle;\">n.<br>\r\nLet
|
|
24
|
-
R(n) be the number of retractions for n.\r\n</p>\r\n<p>\r\nYou are given that<br><img
|
|
25
|
-
src=\"images/symbol_sum.gif\" width=\"11\" height=\"14\" alt=\"∑\" border=\"0\"
|
|
26
|
-
style=\"vertical-align:middle;\"> R(c) for c=C(100 000,k), and 1 <img src=\"images/symbol_le.gif\"
|
|
27
|
-
width=\"10\" height=\"12\" alt=\"≤\" border=\"0\" style=\"vertical-align:middle;\">
|
|
28
|
-
k <img src=\"images/symbol_le.gif\" width=\"10\" height=\"12\" alt=\"≤\" border=\"0\"
|
|
29
|
-
style=\"vertical-align:middle;\">99 999 <img src=\"images/symbol_cong.gif\" width=\"9\"
|
|
30
|
-
height=\"11\" alt=\"≡\" border=\"0\" style=\"vertical-align:middle;\">628701600
|
|
31
|
-
(mod 1 000 000 007).<br>\r\n(C(n,k) is the binomial coefficient).<br></p>\r\n<p>
|
|
32
|
-
\r\nFind <img src=\"images/symbol_sum.gif\" width=\"11\" height=\"14\" alt=\"∑\"
|
|
33
|
-
border=\"0\" style=\"vertical-align:middle;\"> R(c) for c=C(10 000 000,k), and 1
|
|
34
|
-
<img src=\"images/symbol_le.gif\" width=\"10\" height=\"12\" alt=\"≤\" border=\"0\"
|
|
35
|
-
style=\"vertical-align:middle;\">k<img src=\"images/symbol_le.gif\" width=\"10\"
|
|
36
|
-
height=\"12\" alt=\"≤\" border=\"0\" style=\"vertical-align:middle;\"> 9 999 999.<br>\r\nGive
|
|
37
|
-
your answer modulo 1 000 000 007.\r\n</p>\r\n\r\n"
|
data/data/problems/446.yml
DELETED
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
:id: 446
|
|
3
|
-
:name: Retractions B
|
|
4
|
-
:url: http://projecteuler.net/problem=446
|
|
5
|
-
:content: "\r\n<p>\r\nFor every integer n<img src=\"images/symbol_gt.gif\" width=\"10\"
|
|
6
|
-
height=\"10\" alt=\">\" border=\"0\" style=\"vertical-align:middle;\">1, the
|
|
7
|
-
family of functions f<sub>n,a,b</sub> is defined \r\nby f<sub>n,a,b</sub>(<var>x</var>)<img
|
|
8
|
-
src=\"images/symbol_cong.gif\" width=\"9\" height=\"11\" alt=\"≡\" border=\"0\"
|
|
9
|
-
style=\"vertical-align:middle;\">a<var>x</var>+b mod n for a,b,<var>x</var> integer
|
|
10
|
-
and 0<img src=\"images/symbol_lt.gif\" width=\"10\" height=\"10\" alt=\"<\"
|
|
11
|
-
border=\"0\" style=\"vertical-align:middle;\">a<img src=\"images/symbol_lt.gif\"
|
|
12
|
-
width=\"10\" height=\"10\" alt=\"<\" border=\"0\" style=\"vertical-align:middle;\">n,
|
|
13
|
-
0<img src=\"images/symbol_le.gif\" width=\"10\" height=\"12\" alt=\"≤\" border=\"0\"
|
|
14
|
-
style=\"vertical-align:middle;\">b<img src=\"images/symbol_lt.gif\" width=\"10\"
|
|
15
|
-
height=\"10\" alt=\"<\" border=\"0\" style=\"vertical-align:middle;\">n, 0<img
|
|
16
|
-
src=\"images/symbol_le.gif\" width=\"10\" height=\"12\" alt=\"≤\" border=\"0\" style=\"vertical-align:middle;\"><var>x</var><img
|
|
17
|
-
src=\"images/symbol_lt.gif\" width=\"10\" height=\"10\" alt=\"<\" border=\"0\"
|
|
18
|
-
style=\"vertical-align:middle;\">n.<br>\r\nWe will call f<sub>n,a,b</sub> a <i>retraction</i>
|
|
19
|
-
if f<sub>n,a,b</sub>(f<sub>n,a,b</sub>(<var>x</var>))<img src=\"images/symbol_cong.gif\"
|
|
20
|
-
width=\"9\" height=\"11\" alt=\"≡\" border=\"0\" style=\"vertical-align:middle;\">f<sub>n,a,b</sub>(<var>x</var>)
|
|
21
|
-
mod n for every 0<img src=\"images/symbol_le.gif\" width=\"10\" height=\"12\" alt=\"≤\"
|
|
22
|
-
border=\"0\" style=\"vertical-align:middle;\"><var>x</var><img src=\"images/symbol_lt.gif\"
|
|
23
|
-
width=\"10\" height=\"10\" alt=\"<\" border=\"0\" style=\"vertical-align:middle;\">n.<br>\r\nLet
|
|
24
|
-
R(n) be the number of retractions for n.\r\n</p>\r\n<p>\r\nF(N)=<img src=\"images/symbol_sum.gif\"
|
|
25
|
-
width=\"11\" height=\"14\" alt=\"∑\" border=\"0\" style=\"vertical-align:middle;\">R(n<sup>4</sup>+4)
|
|
26
|
-
for 1<img src=\"images/symbol_le.gif\" width=\"10\" height=\"12\" alt=\"≤\" border=\"0\"
|
|
27
|
-
style=\"vertical-align:middle;\">n<img src=\"images/symbol_le.gif\" width=\"10\"
|
|
28
|
-
height=\"12\" alt=\"≤\" border=\"0\" style=\"vertical-align:middle;\">N. <br> \r\nF(1024)=77532377300600.<br></p>\r\n<p>\r\nFind
|
|
29
|
-
F(10<sup>7</sup>) (mod 1 000 000 007)\r\n\r\n</p>"
|
data/data/problems/447.yml
DELETED
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
:id: 447
|
|
3
|
-
:name: Retractions C
|
|
4
|
-
:url: http://projecteuler.net/problem=447
|
|
5
|
-
:content: "\r\n<p>\r\nFor every integer n<img src=\"images/symbol_gt.gif\" width=\"10\"
|
|
6
|
-
height=\"10\" alt=\">\" border=\"0\" style=\"vertical-align:middle;\">1, the
|
|
7
|
-
family of functions f<sub>n,a,b</sub> is defined \r\nby f<sub>n,a,b</sub>(<var>x</var>)<img
|
|
8
|
-
src=\"images/symbol_cong.gif\" width=\"9\" height=\"11\" alt=\"≡\" border=\"0\"
|
|
9
|
-
style=\"vertical-align:middle;\">a<var>x</var>+b mod n for a,b,<var>x</var> integer
|
|
10
|
-
and 0<img src=\"images/symbol_lt.gif\" width=\"10\" height=\"10\" alt=\"<\"
|
|
11
|
-
border=\"0\" style=\"vertical-align:middle;\">a<img src=\"images/symbol_lt.gif\"
|
|
12
|
-
width=\"10\" height=\"10\" alt=\"<\" border=\"0\" style=\"vertical-align:middle;\">n,
|
|
13
|
-
0<img src=\"images/symbol_le.gif\" width=\"10\" height=\"12\" alt=\"≤\" border=\"0\"
|
|
14
|
-
style=\"vertical-align:middle;\">b<img src=\"images/symbol_lt.gif\" width=\"10\"
|
|
15
|
-
height=\"10\" alt=\"<\" border=\"0\" style=\"vertical-align:middle;\">n, 0<img
|
|
16
|
-
src=\"images/symbol_le.gif\" width=\"10\" height=\"12\" alt=\"≤\" border=\"0\" style=\"vertical-align:middle;\"><var>x</var><img
|
|
17
|
-
src=\"images/symbol_lt.gif\" width=\"10\" height=\"10\" alt=\"<\" border=\"0\"
|
|
18
|
-
style=\"vertical-align:middle;\">n.<br>\r\nWe will call f<sub>n,a,b</sub> a <i>retraction</i>
|
|
19
|
-
if f<sub>n,a,b</sub>(f<sub>n,a,b</sub>(<var>x</var>))<img src=\"images/symbol_cong.gif\"
|
|
20
|
-
width=\"9\" height=\"11\" alt=\"≡\" border=\"0\" style=\"vertical-align:middle;\">f<sub>n,a,b</sub>(<var>x</var>)
|
|
21
|
-
mod n for every 0<img src=\"images/symbol_le.gif\" width=\"10\" height=\"12\" alt=\"≤\"
|
|
22
|
-
border=\"0\" style=\"vertical-align:middle;\"><var>x</var><img src=\"images/symbol_lt.gif\"
|
|
23
|
-
width=\"10\" height=\"10\" alt=\"<\" border=\"0\" style=\"vertical-align:middle;\">n.<br>\r\nLet
|
|
24
|
-
R(n) be the number of retractions for n.\r\n</p>\r\n<p>\r\nF(N)=<img src=\"images/symbol_sum.gif\"
|
|
25
|
-
width=\"11\" height=\"14\" alt=\"∑\" border=\"0\" style=\"vertical-align:middle;\">R(n)
|
|
26
|
-
for 2<img src=\"images/symbol_le.gif\" width=\"10\" height=\"12\" alt=\"≤\" border=\"0\"
|
|
27
|
-
style=\"vertical-align:middle;\">n<img src=\"images/symbol_le.gif\" width=\"10\"
|
|
28
|
-
height=\"12\" alt=\"≤\" border=\"0\" style=\"vertical-align:middle;\">N.<br>\r\nF(10<sup>7</sup>)<img
|
|
29
|
-
src=\"images/symbol_cong.gif\" width=\"9\" height=\"11\" alt=\"≡\" border=\"0\"
|
|
30
|
-
style=\"vertical-align:middle;\">638042271 (mod 1 000 000 007).\r\n</p>\r\n<p> \r\nFind
|
|
31
|
-
F(10<sup>14</sup>) (mod 1 000 000 007).\r\n</p>\r\n\r\n\r\n"
|
data/data/problems/448.yml
DELETED
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
:id: 448
|
|
3
|
-
:name: Average least common multiple
|
|
4
|
-
:url: http://projecteuler.net/problem=448
|
|
5
|
-
:content: "\r\n<p>\r\nThe function <b>lcm</b>(a,b) denotes the least common multiple
|
|
6
|
-
of a and b.<br>\r\nLet A(n) be the average of the values of lcm(n,i) for 1<img src=\"images/symbol_le.gif\"
|
|
7
|
-
width=\"10\" height=\"12\" alt=\"≤\" border=\"0\" style=\"vertical-align:middle;\">i<img
|
|
8
|
-
src=\"images/symbol_le.gif\" width=\"10\" height=\"12\" alt=\"≤\" border=\"0\" style=\"vertical-align:middle;\">n.<br>\r\nE.g:
|
|
9
|
-
A(2)=(2+2)/2=2 and A(10)=(10+10+30+20+10+30+70+40+90+10)/10=32. \r\n</p>\r\nLet
|
|
10
|
-
S(n)=<img src=\"images/symbol_sum.gif\" width=\"11\" height=\"14\" alt=\"∑\" border=\"0\"
|
|
11
|
-
style=\"vertical-align:middle;\">A(k) for 1<img src=\"images/symbol_le.gif\" width=\"10\"
|
|
12
|
-
height=\"12\" alt=\"≤\" border=\"0\" style=\"vertical-align:middle;\">k<img src=\"images/symbol_le.gif\"
|
|
13
|
-
width=\"10\" height=\"12\" alt=\"≤\" border=\"0\" style=\"vertical-align:middle;\">n.<br>\r\nS(100)=122726.\r\n\r\n<p>\r\nFind
|
|
14
|
-
S(99999999019) mod 999999017.\r\n</p>\r\n"
|
data/data/problems/449.yml
DELETED
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
:id: 449
|
|
3
|
-
:name: Chocolate covered candy
|
|
4
|
-
:url: http://projecteuler.net/problem=449
|
|
5
|
-
:content: "\r\n<p>Phil the confectioner is making a new batch of chocolate covered
|
|
6
|
-
candy. Each candy centre is shaped like an ellipsoid of revolution defined by the
|
|
7
|
-
equation: b<sup>2</sup><var>x</var><sup>2</sup> + b<sup>2</sup><var>y</var><sup>2</sup>
|
|
8
|
-
+ a<sup>2</sup><var>z</var><sup>2</sup> = a<sup>2</sup>b<sup>2</sup>.\r\n</p>\r\n<p>\r\nPhil
|
|
9
|
-
wants to know how much chocolate is needed to cover one candy centre with a uniform
|
|
10
|
-
coat of chocolate one millimeter thick.\r\n</p>\n<table class=\"formula\"><tr>\n<td>If
|
|
11
|
-
a=1 mm and b=1 mm, the amount of chocolate required is \r\n </td>\r\n <td><table
|
|
12
|
-
class=\"frac\">\n<tr><td>28</td></tr>\n<tr><td class=\"overline\">3</td></tr>\n</table></td>\r\n
|
|
13
|
-
\ <td>π mm<sup>3</sup>\n</td>\r\n</tr></table>\r\nIf a=2 mm and b=1 mm, the amount
|
|
14
|
-
of chocolate required is approximately 60.35475635 mm<sup>3</sup>.\r\n\r\n<p>\r\nFind
|
|
15
|
-
the amount of chocolate in mm<sup>3</sup> required if a=3 mm and b=1 mm. Give your
|
|
16
|
-
answer as the number rounded to 8 decimal places behind the decimal point.</p>\r\n
|
|
17
|
-
\r\n"
|
data/data/problems/450.yml
DELETED
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
:id: 450
|
|
3
|
-
:name: Hypocycloid and Lattice points
|
|
4
|
-
:url: http://projecteuler.net/problem=450
|
|
5
|
-
:content: "\r\n<p>\r\nA hypocycloid is the curve drawn by a point on a small circle
|
|
6
|
-
rolling inside a larger circle. The parametric equations of a hypocycloid centered
|
|
7
|
-
at the origin, and starting at the right most point is given by:</p>\n<p style=\"text-align:center\">\r\n$x(t)
|
|
8
|
-
= (R - r) \\cos(t) + r \\cos(\\frac {R - r} r t)$<br>\r\n$y(t) = (R - r) \\sin(t)
|
|
9
|
-
- r \\sin(\\frac {R - r} r t)$</p>\n<p>\r\nWhere <var>R</var> is the radius of the
|
|
10
|
-
large circle and <var>r</var> the radius of the small circle.\r\n</p>\r\n<p>\r\nLet
|
|
11
|
-
$C(R, r)$ be the set of distinct points with integer coordinates on the hypocycloid
|
|
12
|
-
with radius <var>R</var> and <var>r</var> and for which there is a corresponding
|
|
13
|
-
value of <var>t</var> such that $\\sin(t)$ and $\\cos(t)$ are rational numbers.</p>\r\n<p>\r\nLet
|
|
14
|
-
$S(R, r) = \\sum_{(x,y) \\in C(R, r)} |x| + |y|$ be the sum of the absolute values
|
|
15
|
-
of the <var>x</var> and <var>y</var> coordinates of the points in $C(R, r)$.</p>\r\n<p>\r\n\r\nLet
|
|
16
|
-
$T(N) = \\sum_{R = 3}^N \\sum_{r=1}^{\\lfloor \\frac {R - 1} 2 \\rfloor} S(R, r)$
|
|
17
|
-
be the sum of $S(R, r)$ for <var>R</var> and <var>r</var> positive integers, $R\\leq
|
|
18
|
-
N$ and $2r \r\n</p>\n<p>\r\n\r\nYou are given:<br><var>C</var>(3, 1) = {(3, 0),
|
|
19
|
-
(-1, 2), (-1,0), (-1,-2)}<br><br><var>C</var>(2500, 1000) =<br></p>\n<ul>\r\n {(2500,
|
|
20
|
-
0), (772, 2376), (772, -2376), (516, 1792),\r\n (516, -1792), (500, 0), (68, 504),
|
|
21
|
-
(68, -504),<br>(-1356, 1088), (-1356, -1088), (-1500, 1000), (-1500, -1000)}</ul>\n<i>Note:
|
|
22
|
-
(-625, 0) is not an element of C(2500, 1000) because $\\sin(t)$ is not a rational
|
|
23
|
-
number for the corresponding values of <var>t</var>.</i>\r\n\r\n<p>\r\n<var>S</var>(3,
|
|
24
|
-
1) = (|3| + |0|) + (|-1| + |2|) + (|-1| + |0|) + (|-1| + |-2|) = 10</p>\r\n<p>\r\n<var>T</var>(3)
|
|
25
|
-
= 10; <var>T</var>(10) = 524 ;<var>T</var>(100) = 580442; <var>T</var>(10<sup>3</sup>)
|
|
26
|
-
= 583108600.\r\n</p>\r\n<p>\r\nFind <var>T</var>(10<sup>6</sup>).\r\n</p>\r\n\r\n\r\n"
|
data/data/problems/451.yml
DELETED
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
:id: 451
|
|
3
|
-
:name: Modular inverses
|
|
4
|
-
:url: http://projecteuler.net/problem=451
|
|
5
|
-
:content: "\r\n<p>\r\nConsider the number 15.<br>\r\nThere are eight positive numbers
|
|
6
|
-
less than 15 which are coprime to 15: 1, 2, 4, 7, 8, 11, 13, 14.<br>\r\nThe modular
|
|
7
|
-
inverses of these numbers modulo 15 are: 1, 8, 4, 13, 2, 11, 7, 14<br> \r\nbecause<br>\r\n1*1
|
|
8
|
-
mod 15=1<br>\r\n2*8=16 mod 15=1<br>\r\n4*4=16 mod 15=1<br>\r\n7*13=91 mod 15=1<br>\r\n11*11=121
|
|
9
|
-
mod 15=1<br>\r\n14*14=196 mod 15=1<br></p>\r\n<p>\r\nLet I(n) be the largest positive
|
|
10
|
-
number m smaller than n-1 such that the modular inverse of m modulo n equals m itself.<br>\r\nSo
|
|
11
|
-
I(15)=11.<br>\r\nAlso I(100)=51 and I(7)=1.<br></p>\r\n<p>\r\nFind <img src=\"images/symbol_sum.gif\"
|
|
12
|
-
width=\"11\" height=\"14\" alt=\"∑\" border=\"0\" style=\"vertical-align:middle;\">I(n)
|
|
13
|
-
for 3<img src=\"images/symbol_le.gif\" width=\"10\" height=\"12\" alt=\"≤\" border=\"0\"
|
|
14
|
-
style=\"vertical-align:middle;\">n<img src=\"images/symbol_le.gif\" width=\"10\"
|
|
15
|
-
height=\"12\" alt=\"≤\" border=\"0\" style=\"vertical-align:middle;\">2·10<sup>7</sup></p>"
|
data/data/problems/452.yml
DELETED
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
:id: 452
|
|
3
|
-
:name: Long Products
|
|
4
|
-
:url: http://projecteuler.net/problem=452
|
|
5
|
-
:content: "\r\n<p>Define F(<var>m</var>,<var>n</var>) as the number of <var>n</var>-tuples
|
|
6
|
-
of positive integers for which the product of the elements doesn't exceed <var>m</var>.</p>\r\n<p>F(10,
|
|
7
|
-
10) = 571.</p>\r\n<p>F(10<sup>6</sup>, 10<sup>6</sup>) mod 1 234 567 891 = 252903833.</p>\r\n<p>Find
|
|
8
|
-
F(10<sup>9</sup>, 10<sup>9</sup>) mod 1 234 567 891.</p>\r\n\r\n"
|
data/data/problems/453.yml
DELETED
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
:id: 453
|
|
3
|
-
:name: Lattice Quadrilaterals
|
|
4
|
-
:url: http://projecteuler.net/problem=453
|
|
5
|
-
:content: "\r\n<p>A <b>simple quadrilateral</b> is a polygon that has four distinct
|
|
6
|
-
vertices, has no straight angles and does not self-intersect.</p>\r\n\r\n<p>Let
|
|
7
|
-
Q(m, n) be the number of simple quadrilaterals whose vertices are lattice points
|
|
8
|
-
with coordinates (x,y) satisfying 0 <img src=\"images/symbol_le.gif\" width=\"10\"
|
|
9
|
-
height=\"12\" alt=\"≤\" border=\"0\" style=\"vertical-align:middle;\"> x <img src=\"images/symbol_le.gif\"
|
|
10
|
-
width=\"10\" height=\"12\" alt=\"≤\" border=\"0\" style=\"vertical-align:middle;\">
|
|
11
|
-
m and 0 <img src=\"images/symbol_le.gif\" width=\"10\" height=\"12\" alt=\"≤\" border=\"0\"
|
|
12
|
-
style=\"vertical-align:middle;\"> y <img src=\"images/symbol_le.gif\" width=\"10\"
|
|
13
|
-
height=\"12\" alt=\"≤\" border=\"0\" style=\"vertical-align:middle;\"> n.</p>\r\n\r\n<p>For
|
|
14
|
-
example, Q(2, 2) = 94 as can be seen below:</p>\r\n<p align=\"center\"><img src=\"project/images/p453_quad.png\"></p>\r\n<p>It
|
|
15
|
-
can also be verified that Q(3, 7) = 39590, Q(12, 3) = 309000 and Q(123, 45) = 70542215894646.</p>\r\n\r\n<p>Find
|
|
16
|
-
Q(12345, 6789) mod 135707531.</p>\r\n"
|
data/data/problems/454.yml
DELETED
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
:id: 454
|
|
3
|
-
:name: Diophantine reciprocals III
|
|
4
|
-
:url: http://projecteuler.net/problem=454
|
|
5
|
-
:content: "\r\n<p>In the following equation <var>x</var>, <var>y</var>, and <var>n</var>
|
|
6
|
-
are positive integers.</p>\r\n<div style=\"text-align:center;\">\r\n<table align=\"center\"><tr>\n<td><div
|
|
7
|
-
style=\"text-align:center;\">1<br><img src=\"images/blackdot.gif\" width=\"15\"
|
|
8
|
-
height=\"1\" alt=\"\"><br><var>x</var>\n</div></td>\r\n<td> + </td>\r\n<td><div
|
|
9
|
-
style=\"text-align:center;\">1<br><img src=\"images/blackdot.gif\" width=\"15\"
|
|
10
|
-
height=\"1\" alt=\"\"><br><var>y</var>\n</div></td>\r\n<td> = </td>\r\n<td><div
|
|
11
|
-
style=\"text-align:center;\">1<br><img src=\"images/blackdot.gif\" width=\"15\"
|
|
12
|
-
height=\"1\" alt=\"\"><br><var>n</var>\n</div></td>\r\n</tr></table>\n</div>\r\n<p>For
|
|
13
|
-
a limit <var>L</var> we define F(<var>L</var>) as the number of solutions which
|
|
14
|
-
satisfy <var>x</var> <img src=\"images/symbol_lt.gif\" width=\"10\" height=\"10\"
|
|
15
|
-
alt=\"<\" border=\"0\" style=\"vertical-align:middle;\"><var>y</var> <img src=\"images/symbol_le.gif\"
|
|
16
|
-
width=\"10\" height=\"12\" alt=\"≤\" border=\"0\" style=\"vertical-align:middle;\"><var>L</var>.</p>\r\n\r\n<p>We
|
|
17
|
-
can verify that F(15) = 4 and F(1000) = 1069.<br>\r\nFind F(10<sup>12</sup>).</p>\r\n"
|
data/data/problems/455.yml
DELETED
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
:id: 455
|
|
3
|
-
:name: Powers With Trailing Digits
|
|
4
|
-
:url: http://projecteuler.net/problem=455
|
|
5
|
-
:content: "\r\n<p>Let f(n) be the largest positive integer x less than 10<sup>9</sup>
|
|
6
|
-
such that the last 9 digits of n<sup>x</sup> form the number <i>x</i> (including
|
|
7
|
-
leading zeros), or zero if no such integer exists.</p>\r\n\r\n<p>For example:</p>\r\n\r\n<ul>\n<li>f(4)
|
|
8
|
-
= 411728896 (4<sup>411728896</sup> = ...490<u>411728896</u>) </li>\r\n<li>f(10)
|
|
9
|
-
= 0</li>\r\n<li>f(157) = 743757 (157<sup>743757</sup> = ...567<u>000743757</u>)</li>\r\n<li>Σf(n),
|
|
10
|
-
2 <img src=\"images/symbol_le.gif\" width=\"10\" height=\"12\" alt=\"≤\" border=\"0\"
|
|
11
|
-
style=\"vertical-align:middle;\"> n <img src=\"images/symbol_le.gif\" width=\"10\"
|
|
12
|
-
height=\"12\" alt=\"≤\" border=\"0\" style=\"vertical-align:middle;\"> 10<sup>3</sup>
|
|
13
|
-
= 442530011399</li>\r\n</ul>\n<p>Find Σf(n), 2 <img src=\"images/symbol_le.gif\"
|
|
14
|
-
width=\"10\" height=\"12\" alt=\"≤\" border=\"0\" style=\"vertical-align:middle;\">
|
|
15
|
-
n <img src=\"images/symbol_le.gif\" width=\"10\" height=\"12\" alt=\"≤\" border=\"0\"
|
|
16
|
-
style=\"vertical-align:middle;\"> 10<sup>6</sup>.</p>\r\n\r\n"
|
data/data/problems/456.yml
DELETED
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
:id: 456
|
|
3
|
-
:name: Triangles containing the origin II
|
|
4
|
-
:url: http://projecteuler.net/problem=456
|
|
5
|
-
:content: "\r\n<p>Define:<br><var>x</var><sub><var>n</var></sub> = (1248<sup><var>n</var></sup>
|
|
6
|
-
mod 32323) - 16161<br><var>y</var><sub><var>n</var></sub> = (8421<sup><var>n</var></sup>
|
|
7
|
-
mod 30103) - 15051<br>\r\nP<sub><var>n</var></sub> = {(<var>x</var><sub>1</sub>,
|
|
8
|
-
<var>y</var><sub>1</sub>), (<var>x</var><sub>2</sub>, <var>y</var><sub>2</sub>),
|
|
9
|
-
..., (<var>x</var><sub><var>n</var></sub>, <var>y</var><sub><var>n</var></sub>)}\r\n</p>\r\n\r\n<p>For
|
|
10
|
-
example, P<sub>8</sub> = {(-14913, -6630), (-10161, 5625), (5226, 11896), (8340,
|
|
11
|
-
-10778), (15852, -5203), (-15165, 11295), (-1427, -14495), (12407, 1060)}.</p>\r\n\r\n<p>Let
|
|
12
|
-
C(<var>n</var>) be the number of triangles whose vertices are in P<sub><var>n</var></sub>
|
|
13
|
-
which contain the origin in the interior.</p>\r\n\r\n<p>\r\nExamples:<br>\r\nC(8)
|
|
14
|
-
= 20<br>\r\nC(600) = 8950634<br>\r\nC(40 000) = 2666610948988\r\n</p>\r\n\r\n<p>Find
|
|
15
|
-
C(2 000 000).\r\n\r\n</p>"
|
data/scripts/update_problems
DELETED
|
@@ -1,68 +0,0 @@
|
|
|
1
|
-
#!/usr/bin/env ruby
|
|
2
|
-
|
|
3
|
-
# Gets all of the problems from projecteuler.net and serializes them as json
|
|
4
|
-
# into the data/problems directory. This way http requests do not need to be
|
|
5
|
-
# each time the manager is asked to describe a problem.
|
|
6
|
-
|
|
7
|
-
$LOAD_PATH << File.join(File.dirname(__FILE__), '..', 'lib')
|
|
8
|
-
|
|
9
|
-
require 'colorize'
|
|
10
|
-
require 'nokogiri'
|
|
11
|
-
require 'open-uri'
|
|
12
|
-
require 'yaml'
|
|
13
|
-
|
|
14
|
-
require 'euler'
|
|
15
|
-
|
|
16
|
-
# Number of seconds to wait in the beginning of each iteration of the http request loop
|
|
17
|
-
sleep_time = 0.5
|
|
18
|
-
|
|
19
|
-
puts
|
|
20
|
-
puts 'Updating project Euler problem specs.'
|
|
21
|
-
puts
|
|
22
|
-
|
|
23
|
-
data_dir = "#{__dir__}/../data"
|
|
24
|
-
answers_file = "#{data_dir}/answers.yml"
|
|
25
|
-
problems_dir = "#{data_dir}/problems"
|
|
26
|
-
|
|
27
|
-
puts 'Data directory: '.light_black + data_dir.underline
|
|
28
|
-
puts 'Answers File: '.light_black + answers_file.underline
|
|
29
|
-
puts 'Problems Directory: '.light_black + problems_dir.underline
|
|
30
|
-
puts
|
|
31
|
-
|
|
32
|
-
problem_ids = YAML.load_file(answers_file).keys
|
|
33
|
-
problems_count = problem_ids.count
|
|
34
|
-
problems_count_digits = problems_count.to_s.size
|
|
35
|
-
|
|
36
|
-
puts problems_count.to_s.underline + ' Problems will be updated.'
|
|
37
|
-
puts
|
|
38
|
-
|
|
39
|
-
# Fetch problems from projecteuler.net
|
|
40
|
-
problems = problem_ids.map.with_index do |problem_id, index|
|
|
41
|
-
zero_padded_index = (index + 1).to_s.rjust(problems_count_digits, '0')
|
|
42
|
-
zero_padded_problem_id = problem_id.to_s.rjust(problems_count_digits, '0')
|
|
43
|
-
|
|
44
|
-
print "(#{zero_padded_index} / #{problems_count}) ##{zero_padded_index}"
|
|
45
|
-
|
|
46
|
-
sleep(sleep_time)
|
|
47
|
-
|
|
48
|
-
url = "http://projecteuler.net/problem=#{problem_id}"
|
|
49
|
-
|
|
50
|
-
doc = Nokogiri::HTML(open(url))
|
|
51
|
-
problem = Euler::Problem.new({
|
|
52
|
-
id: problem_id,
|
|
53
|
-
name: doc.css('h2').first.inner_html,
|
|
54
|
-
url: url,
|
|
55
|
-
content: doc.css('.problem_content').first.inner_html
|
|
56
|
-
})
|
|
57
|
-
|
|
58
|
-
print " : " + problem.name.bold.underline
|
|
59
|
-
|
|
60
|
-
File.open("#{problems_dir}/#{problem.id}.yml", 'w') do |f|
|
|
61
|
-
f.write(problem.to_yaml)
|
|
62
|
-
end
|
|
63
|
-
|
|
64
|
-
print " \u2713".encode('utf-8').green.bold
|
|
65
|
-
puts
|
|
66
|
-
|
|
67
|
-
problem
|
|
68
|
-
end
|