
문자열 s가 입력되었을 때 다음 규칙을 따라서 이 문자열을 여러 문자열로 분해하려고 합니다.
s					result
"banana"			3
"abracadabra"		6
"aaabbaccccabba"	3
이중 for문을 사용하고 마지막 나머지 문자들을 처리하느라 시간이 좀 오래걸리고 고생한 코드이다.
1. for문으로 문자열의 문자들을 꺼내어 비교해주고
2. 문자들을 사용한 후에 입력값 s를 사용한 문자들을 제거 후 재 사용해주는 재귀용법이다.
3. 조건대로 문자열이 생성이 안되더라도 나머지 문자들을 처리해주는 방법 또한 고려해야한다.
def solution(s):
    answer = []
    s2 = ''
    
    for s1 in s:    
        s2+=s1
        if s2.count(s2[0]) == len(s2)/2 or len(s) == 1 or len(s2) == len(s):
            s = s[len(s2):]
            answer.append(s2)
            s2 = ''
    return len(answer)
answer 변수를 리스트로 설정해준다. 이 리스트에 해당되는 문자열을 넣은 후 개수를 세어 리턴해줄 것이다.s2는 새롭게 생성되는 문자열로 초기화를 먼저 해준다.for문으로 문자열 s에서 한 문자씩 빼내어 s1 변수에 담고 사용해준다.s2에 s1을 계속 더해주어 문자열을 새롭게 생성해주고s2 문자열에서 첫 번째 문자 s2[0]의 개수가 s2의 총 문자 개수의 절반과 같다면 if문에 들어가도록 해준다. if문에 들어가게되면 문자열 s에서 s2를 빼내어 다시 정의해주고 answer변수에 s2를 추가해주며 s2를 초기화해준다. if문의 다른 조건이 두 개 더 있는데 첫 번째는 문자열 s가 마지막 문자 한 개를 빼고 나머지가 다 추출 되었을 때 해당 한 개의 문자를 answer에 추가해주는 조건문이고,answer에 추가해주도록 한다.(예시 s = 'baaa' 가 있다.)