Sherlock and the Valid String

  • + 0 comments

    def isValid(s):

    c = set(s)
    l = []
    result = "YES"
    for i in c:
        k = s.count(i)
        l.append(k)
    if(max(l) == min(l)):
        return result
    if(max(l)-min(l)== 1):
        if(l.count(min(l))<2 or l.count(max(l))<2):
            return result
        else:
            result = "NO"
            return result
    if(min(l) == 1 and l.count(min(l)==1) and l.count(max(l))==len(l)-1):
        return result
    else:
        result = "NO"  
        return result