풀이1)
class Solution {
public boolean solution(String s) {
if (s.length() != 4 && s.length() != 6) return false;
char[] arr = s.toCharArray();
for (char c : arr) {
if ((c - '0') > 9) return false;
}
return true;
}
}
문자열 s의 길이가 4 혹은 6이라는 제한 조건을 못 봐서 한 번 실패했었다...ㅎㅎ
지문을 한 글자 한 글자 제대로 읽는 습관을 들여야겠다.
풀이2)
class Solution {
public boolean solution(String s) {
if (s.length() != 4 && s.length() != 6) return false;
for (char c : s.toCharArray()) {
if (!Character.isDigit(c)) return false;
}
return true;
}
}
풀이3) 정규표현식 이용
class Solution {
public boolean solution(String s) {
return s.matches("[0-9]{4}|[0-9]{6}");
}
}
'Coding Test > 프로그래머스' 카테고리의 다른 글
[프로그래머스/자바] 같은 숫자는 싫어 (0) | 2023.08.03 |
---|---|
[프로그래머스/자바] 수박수박수박수박수박수? (0) | 2023.08.03 |
[프로그래머스/자바] 가운데 글자 가져오기 (0) | 2023.08.03 |
[프로그래머스/자바] 정수 제곱근 판별 (0) | 2023.08.03 |
[프로그래머스/자바] 제일 작은 수 제거하기 (0) | 2023.08.03 |