프로그래머스 - 문자열 나누기
풀이
- 첫 번째 문자 기준
- 기준 문자의 개수와 기준 문자가 아닌 문자들의 개수를 세어줌
- 만약 기준 문자의 개수와 아닌 문자들의 개수가 같을 경우 반환할 결과값을 증가시킨 후 기준 문자를 바꿔줌
코드
public class DivideString {
public int solution(String s) {
char first = s.charAt(0);
int firstNum = 0;
int diff = 0;
int result = 0;
for (int i = 0; i < s.length(); i++) {
if (firstNum == diff) {
result++;
first = s.charAt(i);
}
if (s.charAt(i) == first) firstNum++;
else diff++;
}
return result;
}
public static void main(String[] args) {
DivideString divideString = new DivideString();
System.out.println(divideString.solution("banana"));
System.out.println(divideString.solution("abracadabra"));
System.out.println(divideString.solution("aaabbaccccabba"));
}
}