public static void FindIntersectingWires() { _wires = FileUtils.ReadFile(Const.FILE_CROSSED_WIRES); Run(); int fewestSteps; WirePoint closest = FindClosestCrossedPoint(out fewestSteps); Console.WriteLine($"Closest Manhattan Distance: {closest.ManhattanDistance()}"); Console.WriteLine($"Fewest Steps to Intersection: {fewestSteps}"); }
private static void Run() { for (int i = 0; i < _wires.Length; i++) { var wire = _wires[i]; if (string.IsNullOrEmpty(wire)) { continue; } Console.WriteLine($"Wire: {wire}"); string[] instructions = wire.Split(','); _currentPoint = WirePoint.Origin; _currentNumSteps = 0; foreach (string instruction in instructions) { RunInstruction(instruction, i); } } }