Argorithm
[Programmers]LV.1 문자열 나누기
빙응이
2023. 12. 6. 21:45
📝풀이
가장 중요한 것은 차례대로 비교할 때 어떻게 비교할 것인가이다.
나는 일단 첫번째 값을 할당하고 same을 1로 시작했다.
그리고 문자열 덩어리는 1개부터 시작이므로 answer도 1로 시작하여
현재의 값과 전 값을 비교하게 만들었다.
중요한 것은 단어 비교 순서를 어떻게 할까이다.
class Solution {
public int solution(String s) {
int answer = 1; //최소 1개의 문자열 덩어리가 존재
char first = s.charAt(0); // 첫 번째 단어 저장
int same = 1; //같을 때 이미 1개를 저장했으므로
int different = 0; //다를 때
for(int i = 1; i < s.length()-1; i++){
if(first == s.charAt(i))
same++;
else
different++;
if(same == different){
first = s.charAt(i+1);
answer++;
same = 0;
different = 0;
}
}
return answer;
}
}