728x90
https://programmers.co.kr/learn/courses/30/lessons/81301
function solution(s) {
// 정답을 담을 변수
var answer = 0;
// 알파벳과 숫자들을 관리할 배열
let alphabet = ["zero", "one", "two", "three", "four", "five", "six", "seven", "eight", "nine"];
let number = [0,1,2,3,4,5,6,7,8,9];
// s로 들어온 값이 숫자가 아니면 계속 true
do{
// 알파벳이나 배열 길이만큼 돌린다. 둘중 누구던 상관없다.
for(let i = 0; i<alphabet.length;i++){
// 받아온 문자열을 replace()를 이용해서, 알파벳을 변경한다.
s = s.replace(alphabet[i],number[i]);
}
}while((isNaN(s)))
// 나온 문자열을 숫자열로 변경해서 정답에 넣는다.
answer = Number(s);
return answer;
}
받아온 값에 들어있는 숫자가 문자로 되어있으면, 숫자로 변경해야하는 문제.
replace를 이용해서 풀어냈다.
정답코드는 거의 비슷하지만, split을 이용해서, 문자열을 검사해냈고,
문자열을 발견하면 split으로 분리를 한다음 그 index를 join을 이용해 끼워주었다.
function solution(s) {
let numbers = ["zero", "one", "two", "three", "four", "five", "six", "seven", "eight", "nine"];
var answer = s;
for(let i=0; i< numbers.length; i++) {
let arr = answer.split(numbers[i]);
answer = arr.join(i);
}
return Number(answer);
}
728x90
'알고리즘' 카테고리의 다른 글
알고리즘 에너그램 (0) | 2022.06.28 |
---|---|
백준 2839번 - 설탕 배달 (0) | 2022.06.26 |
프로그래머스 Level 1 - 같은 숫자는 싫어(JavaScript) (0) | 2022.05.16 |
프로그래머스 Level 1 - 두 개 뽑아서 더하기(JavaScript) (0) | 2022.05.16 |
프로그래머스 Level 1 - 3진법 뒤집기(JavaScript) (0) | 2022.05.15 |