Ejemplo n.º 1
0
        public void Part2()
        {
            List <Cube> cubeState = CubeCoordinateParser.ParseFrom(StringListRetriever.Retreive("InputList17.txt").ToList());

            cubeState = CubeBootProcessor.ProcessCycle(cubeState, 1);
            cubeState = CubeBootProcessor.ProcessCycle(cubeState, 1);
            cubeState = CubeBootProcessor.ProcessCycle(cubeState, 1);
            cubeState = CubeBootProcessor.ProcessCycle(cubeState, 1);
            cubeState = CubeBootProcessor.ProcessCycle(cubeState, 1);
            cubeState = CubeBootProcessor.ProcessCycle(cubeState, 1);
            Assert.Equal(2084, cubeState.Count(c => c.active));
        }
Ejemplo n.º 2
0
        public void Part2Sample()
        {
            List <Cube> cubeState = CubeCoordinateParser.ParseFrom(GetPart1SampleData());

            cubeState = CubeBootProcessor.ProcessCycle(cubeState, 1);
            cubeState = CubeBootProcessor.ProcessCycle(cubeState, 1);
            cubeState = CubeBootProcessor.ProcessCycle(cubeState, 1);
            cubeState = CubeBootProcessor.ProcessCycle(cubeState, 1);
            cubeState = CubeBootProcessor.ProcessCycle(cubeState, 1);
            cubeState = CubeBootProcessor.ProcessCycle(cubeState, 1);
            Assert.Equal(848, cubeState.Count(c => c.active));
        }
Ejemplo n.º 3
0
        public void Part1Sample()
        {
            List <Cube> cubeState   = CubeCoordinateParser.ParseFrom(GetPart1SampleData());
            List <Cube> activeCubes = cubeState.Where(c => c.active).OrderBy(c => c.location.z).OrderBy(c => c.location.x).OrderBy(c => c.location.y).ToList();

            Assert.Equal(5, cubeState.Count(c => c.active));
            cubeState = CubeBootProcessor.ProcessCycle(cubeState);
            Assert.Equal(11, cubeState.Count(c => c.active));
            cubeState = CubeBootProcessor.ProcessCycle(cubeState);
            Assert.Equal(21, cubeState.Count(c => c.active));
            cubeState = CubeBootProcessor.ProcessCycle(cubeState);
            Assert.Equal(38, cubeState.Count(c => c.active));
            cubeState = CubeBootProcessor.ProcessCycle(cubeState);
            cubeState = CubeBootProcessor.ProcessCycle(cubeState);
            cubeState = CubeBootProcessor.ProcessCycle(cubeState);
            Assert.Equal(112, cubeState.Count(c => c.active));
        }