#! perl -slw use strict; sub nUniqC{ my @uniq; ## Updated. @uniq[unpack 'U*',$_[0]] = (1)x length $_[0]; scalar (grep defined $_, @uniq); } print nUniqC '1010101010'; print nUniqC '1234567812'; #### sub nUniqC{ my @uniq; scalar grep{ ++$uniq[$_] == 1 } unpack('C*',$_[0]); } #### sub nUniqC{ scalar grep{ ++$_[$_] == 1 } unpack('C*',$_[0]); }