Comment detail

あみだくじ (Nested Flatten)

ひねりなし

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
use strict;
use warnings;

sub swap {
    @_[0, 1] = @_[1, 0];
}

sub amida {
    my $str = shift;
    my @lines = split /\n/, $str;
    my @header = split //, shift @lines;

    print join '', @header, "\n";

    for (@lines) {
        print $_, "\n";
        while (/-/g) {
            swap($header[pos() - 2], $header[pos]);
        }
    }

    print join '', @header, "\n";
}

my $data = do { local $/; <DATA> };
amida($data);

__DATA__
A B C D E
| | |-| |
|-| | |-|
| |-| |-|
|-| |-| |
|-| | | |

Index

Feed

Other

Link

Pathtraq

loading...