Exemplo n.º 1
0
        public override int SolvePart1()
        {
            var iterator = new PlantIterator(plantIterator);

            iterator.Iterate(20);
            return(iterator.State.PotIndexSum);
        }
Exemplo n.º 2
0
        public override long SolvePart2()
        {
            var  iterator            = new PlantIterator(plantIterator);
            int  iterations          = iterator.IterateUntilContinuous();
            var  state               = iterator.State;
            long remainingIterations = 50_000_000_000 - iterations;

            return(state.PotIndexSum + remainingIterations * state.PotCount);
        }
Exemplo n.º 3
0
 protected override void ResetState()
 {
     plantIterator = null;
 }
Exemplo n.º 4
0
 protected override void LoadState()
 {
     plantIterator = PlantIterator.Parse(NormalizedFileContents);
 }