diff options
| -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 + |
