blob: 2c4a458e46693bad3812a378dd0f06b71fa315cb (
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
|
use v5.30.0;
my $allow = 'eiufhkljwodkg';
open fh, "<", "words" or die 'no file?';
my @word = <fh>;
close fh;
word: foreach my $word (@word) {
chomp $word;
my $WORD = $word;
my $allow = $allow; # local copy
my $cnt = 0;
for my $i (0 .. -1 + length $word) {
my $letter = substr $word, $i, 1;
if ($allow =~ $letter) {
$cnt++;
}
}
if ($cnt < length $word) {
next word;
} else {
my $index = 0;
do {
my $let = substr $allow, $index, 1;
if ($word =~ /$let/) {
$allow =~ s/$let//;
$word =~ s/$let//;
} else {
$index++
}
} while ($index < length $allow);
}
say "$WORD" unless ($word);
}
|