11 my ($s1, $s2, $d) = /[A-Z]/g;
12 $rules{"$s1$s2"} = [ "$s1$d", "$d$s2", $d ];
16 for my $i (0 .. length($tmpl) - 2) {
17 $pairs{substr($tmpl, $i, 2)}++;
18 $count{substr($tmpl, $i, 1)}++;
20 $count{substr($tmpl, -1, 1)}++;
24 for my $pair (grep { $rules{$_} } keys %pairs) {
25 my $rule = $rules{$pair};
26 $newp{ $rule->[0] } += $pairs{$pair};
27 $newp{ $rule->[1] } += $pairs{$pair};
28 $count{ $rule->[2] } += $pairs{$pair};
33 my @count = sort { $a <=> $b } values %count;
34 say $count[-1] - $count[0];