diff --git a/day_3/part_1.php b/day_3/part_1.php new file mode 100644 index 0000000..e4c8d03 --- /dev/null +++ b/day_3/part_1.php @@ -0,0 +1,40 @@ + [0,1], + 'D' => [0,-1], + 'L' => [-1,0], + 'R' => [1,0], + ]; + $points = []; + $path = explode(',', $wire); + $current_point_x = 0; + $current_point_y = 0; + foreach ($path as $dot) { + $direction = $dot[0]; + $number = (int) substr($dot, 1); + for ($t = 0; $t < $number; $t++) { + $current_point_x += $mapping[$direction][0]; + $current_point_y += $mapping[$direction][1]; + $points[] = "$current_point_x,$current_point_y"; + } + } + + return $points; +} + +foreach ($wire_paths as $i => $wire_path) { + $wires[] = mark_wire_in_grid($wire_path); +} + +$common_points = array_intersect($wires[0], $wires[1]); + +foreach ($common_points as $common_point) { + [$x,$y] = array_map('intval', explode(',', $common_point)); + echo sprintf('Distance entre %s et %s : %s%s', $x, $y, $x + $y, "\n"); +}