Algorithm/PROGRAMMERS[Java]
Lv1. 숫자 문자열과 영단어[카카오]
씨니
2022. 5. 1. 15:27
728x90
▶ 문제


▶ 풀이방법
- 첫번째 풀이방법
class Solution {
public int solution(String s) {
int answer = 0;
String result = "";
String str = "";
String[] arr = {"zero", "one", "two", "three", "four", "five", "six", "seven", "eight", "nine"};
for(int i = 0; i < s.length(); i++){
char c = s.charAt(i);
if('0' <= c && c <= '9'){
result += c;
}else{
str += c;
}
if(!str.equals("")){
for(int j = 0; j < arr.length; j++){
if(str.equals(arr[j])){
result += String.valueOf(j);
str = "";
}
}
}
}
answer = Integer.parseInt(result);
return answer;
}
}
- 두번째 풀이방법( string원하는 문자로 바꿈 -> String.replaceAll() )
class Solution {
public int solution(String s) {
int answer = 0;
String[] arr = {"zero", "one", "two", "three", "four", "five", "six", "seven", "eight", "nine"};
for(int i = 0; i < arr.length; i++){
String str = String.valueOf(i);
s = s.replaceAll(arr[i], str); //문자열 숫자로 대체
}
answer = Integer.parseInt(s);
return answer;
}
}
728x90