Skip to main content
added 18 characters in body
Source Link
nutki
  • 3.7k
  • 11
  • 12

Perl, 7277, 75, 72 70

Standard 2d regex matching tricks.

#!perl -p0
/
/;$x="(.{@-})?";1while";y/0/./while s/$.$x\K$"|$"(?=$x$.)/-/s||($"=$.++)<9;y/0/./<9

Example:

$ perl heat.pl <in.txt
---------..1........
----------..........
---8-------......--.
----------......--2-
---------......-----
--------......------
-------......-------
.-----......-----6--
..---.......--------
...-.......-2-------

Try it here

Perl, 72

Standard 2d regex matching tricks.

#!perl -p0
/
/;$x="(.{@-})?";1while s/$.$x\K$"|$"(?=$x$.)/-/s||($"=$.++)<9;y/0/./

Example:

$ perl heat.pl <in.txt
---------..1........
----------..........
---8-------......--.
----------......--2-
---------......-----
--------......------
-------......-------
.-----......-----6--
..---.......--------
...-.......-2-------

Try it here

Perl, 77, 75, 72 70

Standard 2d regex matching tricks.

#!perl -p0
/
/;$x="(.{@-})?";y/0/./while s/$.$x\K$"|$"(?=$x$.)/-/s||($"=$.++)<9

Example:

$ perl heat.pl <in.txt
---------..1........
----------..........
---8-------......--.
----------......--2-
---------......-----
--------......------
-------......-------
.-----......-----6--
..---.......--------
...-.......-2-------

Try it here

deleted 1 character in body
Source Link
nutki
  • 3.7k
  • 11
  • 12

Perl, 7572

Standard 2d regex matching tricks.

#!perl -p0
/
/;$x="(.{@-})?";for$j(2..9){++$i;y/0/./while";1while s/$j$x\K$i|$i$.$x\K$"|$"(?=$x$j=$x$.)/-/s}s||($"=$.++)<9;y/0/./

Example:

$ perl heat.pl <in.txt
---------..1........
----------..........
---8-------......--.
----------......--2-
---------......-----
--------......------
-------......-------
.-----......-----6--
..---.......--------
...-.......-2-------

Try it here

Perl, 75

Standard 2d regex matching tricks.

#!perl -p0
/
/;$x="(.{@-})?";for$j(2..9){++$i;y/0/./while s/$j$x\K$i|$i(?=$x$j)/-/s}

Example:

$ perl heat.pl <in.txt
---------..1........
----------..........
---8-------......--.
----------......--2-
---------......-----
--------......------
-------......-------
.-----......-----6--
..---.......--------
...-.......-2-------

Try it here

Perl, 72

Standard 2d regex matching tricks.

#!perl -p0
/
/;$x="(.{@-})?";1while s/$.$x\K$"|$"(?=$x$.)/-/s||($"=$.++)<9;y/0/./

Example:

$ perl heat.pl <in.txt
---------..1........
----------..........
---8-------......--.
----------......--2-
---------......-----
--------......------
-------......-------
.-----......-----6--
..---.......--------
...-.......-2-------

Try it here

edited body
Source Link
nutki
  • 3.7k
  • 11
  • 12

Perl, 7775

Standard 2d regex matching tricks.

#!perl -p0
/
/;$x="(.{@-})?";for$j(2..9){++$i;y/0/./while s/($j$x)$i|$i$j$x\K$i|$i(?=$x$j)/$1-/s}

Example:

$ perl heat.pl <in.txt
---------..1........
----------..........
---8-------......--.
----------......--2-
---------......-----
--------......------
-------......-------
.-----......-----6--
..---.......--------
...-.......-2-------

Try it here

Perl, 77

Standard 2d regex matching tricks.

#!perl -p0
/
/;$x="(.{@-})?";for$j(2..9){++$i;y/0/./while s/($j$x)$i|$i(?=$x$j)/$1-/s}

Example:

$ perl heat.pl <in.txt
---------..1........
----------..........
---8-------......--.
----------......--2-
---------......-----
--------......------
-------......-------
.-----......-----6--
..---.......--------
...-.......-2-------

Try it here

Perl, 75

Standard 2d regex matching tricks.

#!perl -p0
/
/;$x="(.{@-})?";for$j(2..9){++$i;y/0/./while s/$j$x\K$i|$i(?=$x$j)/-/s}

Example:

$ perl heat.pl <in.txt
---------..1........
----------..........
---8-------......--.
----------......--2-
---------......-----
--------......------
-------......-------
.-----......-----6--
..---.......--------
...-.......-2-------

Try it here

added 38 characters in body
Source Link
nutki
  • 3.7k
  • 11
  • 12
Loading
Source Link
nutki
  • 3.7k
  • 11
  • 12
Loading