https://programmers.co.kr/learn/courses/30/lessons/81301
class Solution {
String[] numWord = {"zero","one","two","three","four","five","six","seven","eight","nine"};
public int solution(String s) {
int answer = 0;
String targetStr = "";
for (int i = 0; i < s.length(); i++) {
if('a' <= s.charAt(i) && s.charAt(i) <= 'z') { // 문자를 만나면
targetStr+=String.valueOf(s.charAt(i));
int num = findNum(targetStr);
if(num == -1) { // 못찾음
continue;
}else { // 찾음
answer = (answer * 10) + num;
targetStr = "";
}
}else {
answer = (answer * 10) + (s.charAt(i)-'0'); // 숫자를 만나면
}
}
return answer;
}
private int findNum(String targetStr) {
int num = -1;
for (int i = 0; i < numWord.length; i++) {
if(targetStr.equals(numWord[i])) {
num = i;
break;
}
}
return num;
}
}
'JAVA > 프로그래머스' 카테고리의 다른 글
32. LEVEL1 - 키패드 누르기 (0) | 2021.08.26 |
---|---|
31. LEVEL1 - 직업군 추천하기 (0) | 2021.08.26 |
29. LEVEL 2 - 거리두기 확인하기 - BFS (0) | 2021.08.25 |
28. LEVEL 2 - 큰 수 만들기- Greedy (0) | 2021.08.17 |
28. LEVEL 2 - 구명보트 - Greedy, Two-Pointer (0) | 2021.08.16 |