diff options
| author | Stephen Lynn <bizlsg@localhost.localdomain> | 2022-12-10 12:50:06 +0800 |
|---|---|---|
| committer | Stephen Lynn <bizlsg@localhost.localdomain> | 2022-12-10 12:50:06 +0800 |
| commit | 8823eed6e8af52286a712ed97c02088ce3d53a65 (patch) | |
| tree | 2ea896abc17d35aebda22ccaa84db8d549c1c3ef | |
| parent | 7a2923647f16683b31671f10d767e5cf865ca9c7 (diff) | |
| download | perlweeklychallenge-club-8823eed6e8af52286a712ed97c02088ce3d53a65.tar.gz perlweeklychallenge-club-8823eed6e8af52286a712ed97c02088ce3d53a65.tar.bz2 perlweeklychallenge-club-8823eed6e8af52286a712ed97c02088ce3d53a65.zip | |
ch-2.jl
| -rwxr-xr-x | challenge-194/steve-g-lynn/julia/ch-2.jl | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/challenge-194/steve-g-lynn/julia/ch-2.jl b/challenge-194/steve-g-lynn/julia/ch-2.jl new file mode 100755 index 0000000000..41f484c007 --- /dev/null +++ b/challenge-194/steve-g-lynn/julia/ch-2.jl @@ -0,0 +1,32 @@ +#!/usr/bin/env julia + +function frequency_equalizer(s::String ) ::Bool + + d_s = Dict() + + for i in s + d_s[i]=0 + end + + for i in s + d_s[i] += 1 + end + + + v_s=Vector( sort!(unique(values(d_s))) ) + + if ( (length(v_s) <= 2) && + ( (v_s[1] == 1) || + ( length(v_s) > 1 && (abs(v_s[2] - v_s[1]) == 1)) ) ) + return true + end + + return false +end + +println( frequency_equalizer("abbc") ) #true +println( frequency_equalizer("xyzyyxz") ) #true +println( frequency_equalizer("xzxz") ) #false +println( frequency_equalizer("abcde") ) #true +println( frequency_equalizer("abbbccc") ) #true + |
