9 my ($x, $y, $dx, $dy) = /(-?\d+)/g;
10 push @pts, [ $x, $y ];
11 push @vel, [ $dx, $dy ];
20 my ($minx, $miny, $maxx, $maxy);
21 for my $i (0 .. $#pts) {
24 $pt->[$_] += $ve->[$_] for 0 .. 1;
25 $maxx = $pt->[0] if !defined $maxx || $maxx < $pt->[0];
26 $maxy = $pt->[1] if !defined $maxy || $maxy < $pt->[1];
27 $minx = $pt->[0] if !defined $minx || $minx > $pt->[0];
28 $miny = $pt->[1] if !defined $miny || $miny > $pt->[1];
29 $map{$pt->[0],$pt->[1]}++;
32 my $dim = $maxx-$minx + $maxy-$miny;
35 for my $y ($miny .. $maxy) {
36 for my $x ($minx .. $maxx) {
37 print $map{$x,$y} ? '#' : '.';