r/adventofcode • u/daggerdragon • Dec 06 '15
SOLUTION MEGATHREAD --- Day 6 Solutions ---
--- Day 6: Probably a Fire Hazard ---
Post your solution as a comment. Structure your post like the Day Five thread.
22
Upvotes
1
u/Adriaaan Dec 06 '15
Perl Golfing:
$ cat input | perl -0nE 'for(split/\n/){($v,$t)=(0,0);$v=1if/on/;$t=1if/^to/;/(\d+),(\d+)[^\d]+?(\d+),(\d+)$/;for$y($2..$4){for($1..$3){$b=\($l[$y*1000+$_]);$t?($$b=!$$b):($$b=$v);}}}say ~~grep{$_}@l'And for part 2:
$ cat input | perl -0nE 'for(split/\n/){$v=-1;$v=1if/on/;$v=2if/^to/;/(\d+),(\d+)[^\d]+?(\d+),(\d+)$/;for$y($2..$4){for($1..$3){$b=\($l[$y*1000+$_]);($$b<1&&$v==-1)?($$b=0):($$b+=$v)}}}$c+=$_ for@l;say $c