728x90
728x90
https://codingbat.com/prob/p186759
= 문제 번역 =
문자열이 주어지면 문자열에서 "x"의 바로 다음에 다른 "x"가 오면 true를 반환합니다.
= 문제푸는 팁 =
우선, 이거는 정해진 조건에 맞추기 위해서 i+1이 str의 렝스보다크면 false를 조건으로 걸고 시작했다.
그 이후에 equals에 처음에는 i와 i+1을했는데, 오류가나서, i+1,i+2로 했더니 정답이나왔다.!
= 해설 =
< 1 >
boolean doubleX(String str) {
int i = str.indexOf("x");
if(i+1>=str.length()) {
return false;
}else{
return str.substring(i+1,i+2).equals("x");
}
}
< 2 >
boolean doubleX(String str) {
int i = str.indexOf("x");
if (i == -1) return false; // no "x" at all
// Is char at i+1 also an "x"?
if (i+1 >= str.length()) return false; // check i+1 in bounds?
return str.substring(i+1, i+2).equals("x");
// Another approach -- .startsWith() simplifies the logic
// String x = str.substring(i);
// return x.startsWith("xx");
}
728x90
'코딩테스트 > Coding Bat' 카테고리의 다른 글
[코딩뱃] [자바] Warmup - 2단계 : stringSplosion 문제 (0) | 2021.11.24 |
---|---|
[코딩뱃] [자바] Warmup - 2단계 : stringBits 문제 (0) | 2021.11.23 |
[코딩뱃] [자바] Warmup - 2단계 : countXX 문제 (0) | 2021.10.12 |
[코딩뱃] [자바] Warmup - 2단계 : frontTimes 문제 (0) | 2021.10.11 |
[코딩뱃] [자바] Warmup - 2단계 : stringTimes 문제 (0) | 2021.10.10 |