2013-04-10 22:43:41 -07:00
|
|
|
sub balanced($s) {
|
|
|
|
|
my $l = 0;
|
|
|
|
|
for $s.comb {
|
|
|
|
|
when "]" {
|
|
|
|
|
--$l;
|
|
|
|
|
return False if $l < 0;
|
|
|
|
|
}
|
|
|
|
|
when "[" {
|
|
|
|
|
++$l;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
return $l == 0;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
my $n = prompt "Number of brackets";
|
2015-11-18 06:14:39 +00:00
|
|
|
my $s = (<[ ]> xx $n).flat.pick(*).join;
|
2013-04-10 22:43:41 -07:00
|
|
|
say "$s {balanced($s) ?? "is" !! "is not"} well-balanced"
|