문제
https://school.programmers.co.kr/learn/courses/30/lessons/140108
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
정답
class Solution {
public int solution(String s) {
String[] split = s.split("");
int xCnt=0;
int oCnt=0;
int answer = 1;
String save = "";
for(int i=0;i<split.length-1;i++){
//시작할때 첫문자 저장하고 카운트 1 올리기
if(xCnt==0){
save=split[i];
xCnt=1;
continue;
}
//시작이 아니라면 그문자와 save가 같은지 비교하기
if(save.equals(split[i])){
xCnt++;
}else{
oCnt++;
}
//만약 두수가 같다면 자른셈치고 xCnt초기화
if(xCnt==oCnt){
answer++;
xCnt=0;
oCnt=0;
}
}
return answer;
}
}
문자열을 순차적으로 검사하면서 초기화와 개수 세는 로직을 만드는 문제다.
특별한점은 없어보인다.
'Coding Test > JAVA 코딩테스트 풀이정리(프로그래머스)' 카테고리의 다른 글
프로그래머스 스쿨 Lv.1 - 콜라 문제(조건에 맞는 반복문) (0) | 2024.01.07 |
---|---|
프로그래머스 스쿨 Lv.1 - 로또의 최고 순위와 최저 순위(등수 예외 처리) (1) | 2024.01.07 |
프로그래머스 스쿨 Lv.1 - 정수 제곱근 판별(long 타입) (0) | 2024.01.07 |
프로그래머스 스쿨 Lv.1 - 가장 많이 받은 선물(2024 KAKAO WINTER INTERNSHIP/복잡한 비교) (0) | 2024.01.05 |
프로그래머스 스쿨 Lv.1 - 예산(sort) (0) | 2024.01.02 |