blob: 3073f155a83833eeb00d32538be634b3555b494d (
plain)
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
35
36
37
38
39
40
41
|
#!/opt/perl/bin/perl
use 5.032;
use strict;
use warnings;
no warnings 'syntax';
use experimental 'signatures';
use experimental 'lexical_subs';
#
# See ../README.md
#
#
# Run as: perl ch-2.pl < input-file
#
#
# Working from the end of the required string backwards, we alternate
# placing a hash, and placing a number. We place them in an array @out,
# and at the end, print out said array in reverse order.
#
while (my $index = <>) {
chomp $index;
my @out;
my $hash = 0;
while ($index) {
if ($hash = !$hash) {
push @out => "#";
$index --;
}
else {
push @out => $index + 1;
$index -= length ($index + 1);
}
}
say join "" => reverse @out;
}
|