public static long Part1(PocketDimension dimension) { if (dimension == null) { throw new ArgumentNullException(nameof(dimension)); } dimension = dimension.Clone(); dimension.Step(6); return(dimension.ActiveCubes); }
private static int CountAfter6Cycles(int dimensions, bool[][] initialSlice) { var pocketDimension = new PocketDimension(dimensions, initialSlice); for (var i = 0; i < 6; i++) { pocketDimension.Step(); } return(pocketDimension.CountActive()); }