diff options
| author | Andrew Shitov <andy@shitov.ru> | 2020-09-08 10:09:25 +0200 |
|---|---|---|
| committer | Andrew Shitov <andy@shitov.ru> | 2020-09-08 10:09:25 +0200 |
| commit | 39ff8d9c9ec712d35d3f8d07f9be84ba8f687945 (patch) | |
| tree | afe4e0d8ca8442931aa70b7d7b52ffa7abc2761f /challenge-077/ash | |
| parent | a11afdf49abe375eb94edf4d3c839e193fff3751 (diff) | |
| download | perlweeklychallenge-club-39ff8d9c9ec712d35d3f8d07f9be84ba8f687945.tar.gz perlweeklychallenge-club-39ff8d9c9ec712d35d3f8d07f9be84ba8f687945.tar.bz2 perlweeklychallenge-club-39ff8d9c9ec712d35d3f8d07f9be84ba8f687945.zip | |
ash 77-2
Diffstat (limited to 'challenge-077/ash')
| -rw-r--r-- | challenge-077/ash/blog1.txt | 1 | ||||
| -rw-r--r-- | challenge-077/ash/raku/ch-2.raku | 36 |
2 files changed, 37 insertions, 0 deletions
diff --git a/challenge-077/ash/blog1.txt b/challenge-077/ash/blog1.txt new file mode 100644 index 0000000000..a81f60f4d3 --- /dev/null +++ b/challenge-077/ash/blog1.txt @@ -0,0 +1 @@ +https://andrewshitov.com/2020/09/08/lonely-x-the-weekly-challenge-77-task-2/ diff --git a/challenge-077/ash/raku/ch-2.raku b/challenge-077/ash/raku/ch-2.raku new file mode 100644 index 0000000000..47d8524eaa --- /dev/null +++ b/challenge-077/ash/raku/ch-2.raku @@ -0,0 +1,36 @@ +#!/usr/bin/env raku + +# Task 2 from +# https://perlweeklychallenge.org/blog/perl-weekly-challenge-077/ + +# Comments: https://andrewshitov.com/2020/09/08/lonely-x-the-weekly-challenge-77-task-2/ + +my @matrix = + < O O X >, + < X O O >, + < X O O >; # square matrix + +# my @matrix = +# < O O X O >, +# < X O O O >, +# < X O O X >, +# < O X O O >; + +my @neighbours = ([X] (-1, 0, 1) xx 2).grep(*.all != 0); + +for ^@matrix X ^@matrix -> @coord { + next if @matrix[@coord[0]][@coord[1]] eq 'O'; + + @coord.put if all((@neighbours.map(* <<+>> @coord)).grep(0 <= *.all <= @matrix.end).map({ + @matrix[$_[0]][$_[1]] eq 'O'; + })); +} + +# Output: +# $ raku ch-2.raku +# 0 2 + +# Or: +# $ raku ch-2.raku +# 0 2 +# 2 3 |
