아주 오랜만입니다. PS 꾸준히 하자고 약속했었는데.. 쉽지가 않습니다. 세상은 넓고 재밌는건 너무 많습니다.
사실 삼성 상반기 문제 풀려고 했는데 표준 입력 받는 것도 생각안나길래 걍 접었습니다.
이번에 올해 상반기 카카오 인턴십 문제가 나왔다고 해서 한 번 풀어보려고 합니다. 호호
근데 첫 문제는 너무 쉽네요;;
class Solution {
public int solution(String s) {
String[] arry = {"zero", "one", "two", "three", "four", "five", "six", "seven", "eight", "nine"};
for(int i = 0; i < arry.length; i++) {
s = s.replaceAll(arry[i], String.valueOf(i));
}
return Integer.parseInt(s);
}
}
사실 맨처음에는 이렇게 안풀었습니다. s의 길이만큼 돌면서 숫자면 StringBuilder에 바로 추가하고 아니면 무슨 알파벳으로 시작하는지 체크해서 StringBuilder에 추가하는 식으로 말도 안되게 어렵게 짰었는데 ㅎㅎ;; 역시 PS는 감이 중요한 것 같습니다.
String 클래스의 replaceAll() 메서드는 다음과 같이 선언되어 있네요.
public String replaceAll(String regex, String replacement) {
return Pattern.compile(regex).matcher(this).replaceAll(replacement);
}
아주 잘 만들어놨습니다. 우린 이걸 잘 쓰기만 하면 됩니다. 내부적으로 어떻게 동작하는지는 잘 안나오네요ㅜ
앞으로 심심할때마다 한 문제씩 풀어야겠습니다~~
심심할 일이 별로 없겠지만~~ㅎ
'Algorithm > Programmers' 카테고리의 다른 글
[2021 카카오 채용연계형 인턴십][구현] 표 편집 - Java (2) | 2021.09.03 |
---|---|
[2021 카카오 채용연계형 인턴십][BFS] 거리두기 확인하기 - Java (0) | 2021.08.24 |
[완전 탐색/소수 판별] 소수 찾기 - Java (0) | 2020.12.15 |
[2017 카카오코드 예선][BFS] 카카오프렌즈 컬러링북 - Java (0) | 2020.12.14 |
[2019 카카오 개발자 겨울 인턴십][이분 탐색(Parametric Search)] 징검다리 건너기 - Java (0) | 2020.12.14 |