예제 #1
0
        public void FindFuelProducedFromOreTest()
        {
            var input = @"2 VPVL, 7 FWMGM, 2 CXFTF, 11 MNCFX => 1 STKFG
17 NVRVD, 3 JNWZP => 8 VPVL
53 STKFG, 6 MNCFX, 46 VJHF, 81 HVMC, 68 CXFTF, 25 GNMV => 1 FUEL
22 VJHF, 37 MNCFX => 5 FWMGM
139 ORE => 4 NVRVD
144 ORE => 7 JNWZP
5 MNCFX, 7 RFSQX, 2 FWMGM, 2 VPVL, 19 CXFTF => 3 HVMC
5 VJHF, 7 MNCFX, 9 VPVL, 37 CXFTF => 6 GNMV
145 ORE => 6 MNCFX
1 NVRVD => 8 CXFTF
1 VJHF, 6 MNCFX => 4 RFSQX
176 ORE => 6 VJHF";

            Day14.GetOreRequiredForFuel(1, Day14.CreateLookup(input)).Should().Be(180697);
//            Day14.FindFuelproducedFromOre(input, 1_000_000_000_000).Should().Be(5586022);
            Day14.FindFuelForOre(Day14.CreateLookup(input), 1_000_000_000_000).Should().Be(5586022);
        }