๋ฌธ์ : Lv.1 ๋ฌธ์์ด๋๋๊ธฐ https://school.programmers.co.kr/learn/courses/30/lessons/140108 ์ธ์ด : JAVA ์ฒด๊ฐ Level : โ โ โ Review: ์๊ณ ๋ฆฌ์ฆ์ ๊ท์น์ ํ์ ํ๊ณ ๊ตฌํํ๊ธฐ |
๐ก์ฒ์ ๊ตฌ์
๋งจ์ฒ์์๋ ์ด๋ฐ์์ผ๋ก ํ๋ํ๋ ๋น๊ตํด๋๊ฐ๋ฉด์
x ์ nox ๋ก ๋ณ์๋ฅผ ๋๊ฐ๋ก ๋๋ ์ ํ๋ ๋ฐฉ๋ฒ์ ์๊ฐํ๋ค
๊ทผ๋ฐ ๋๋ฌด๋๋ ๋นํจ์จ์ ์ผ ๊ฒ ๊ฐ์์.... (์๋์ ์ด์ด์)
// int x = 0;
// int nox = 0;
// int cnt = 0;
// char c = 0;
// for (int i = 0; i < s.length(); i++){
// c = s.charAt(i);
// for (int j = i; j < s.length(); j++){
// if (x == nox) {
// answer ++;
// }
// if (s.charAt(j) == c){
// x++;
// }else {
// nox++;
// }
// }
// }
// System.out.println(x);
// System.out.println(nox);
๐ก ๋ง์ ๋ต
cnt ๋ผ๋ ๋ณ์ ํ๊ฐ๋ก ++ ๊ณผ -- ๋ก flag ์ญํ ์ ๋ง๋ค์ด์
0์ด ๋๋ ์๊ฐ์ ์ก์์ ๊ตฌ๋ถํ๋ฉด ๋๊ฒ ๋ค๋ ์๊ฐ์ผ๋ก
๋ ํจ์จ์ ์ผ๋ก ์ฝ๋๋ฅผ ์์ฑํด๋ดค๋ค.
class Solution {
public int solution(String s) {
int answer = 0;
char c = ' ';
int i = 0;
int j = 0;
int cnt = 0;
while(true){
c = s.charAt(i);
if(c == s.charAt(j)){
cnt ++;
}else {
cnt --;
}
if(cnt == 0 || j == s.length()-1){
i = j+1;
answer ++;
cnt = 0;
}
if (j == s.length()-1){
break;
}
j++;
}
return answer;
}
}