use 5.20.0;
use warnings;

use List::AllUtils qw/ uniq min /;

use experimental qw/
    signatures
    postderef
/;

my $code = <>;
chomp $code;

use DDP;

say min
    map { length react($_) }
    map { $code =~ s/$_//irg }
    'a'..'z';


sub react ($code) {
    my @combos = map { create_dual($_) } uniq split '', $code;
    my $re = join '|', @combos;

    1 while $code =~ s/$re//g;

    return $code;
}

sub create_dual($x) {
    $x . ( $x eq uc $x ? lc $x : uc $x );
}