https://programmers.co.kr/learn/courses/30/lessons/81301
코딩테스트 연습 - 숫자 문자열과 영단어
네오와 프로도가 숫자놀이를 하고 있습니다. 네오가 프로도에게 숫자를 건넬 때 일부 자릿수를 영단어로 바꾼 카드를 건네주면 프로도는 원래 숫자를 찾는 게임입니다. 다음은 숫자의 일부 자
programmers.co.kr
function solution(s) {
let numbers = ['zero', 'one', 'two', 'three', 'four', 'five', 'six', 'seven', 'eight', 'nine']
let answer = s;
for (i = 0; i < arr.length; i++) {
let arr = answer.split(numbers[i]);
answer = arr.join(i);
}
return Number(answer);
우선, numbers라는 배열에다가 0~9를 문자열로 넣어줬다.
let numbers = ['zero', 'one', 'two', 'three', 'four', 'five', 'six', 'seven', 'eight', 'nine']
그리고 for문을 돌면서 arr라는 곳에다가 주어진 s(answer)를 split(numbers[i]) 해주었다.
let arr = answer.split(numbers[i]);
이렇게 한 이유는 for문을 돌기 때문에 일치하는 영단어가 있으면 그것을 split()해주기 때문이다.
그 다음에는 위처럼 문자열로 정리해둔것을 숫자로 나타내기 위해서 join(i)를 사용했다.
answer = arr.join(i);
그리고 마지막에 리턴할때는 answer가 string이기 때문에 Number()처리를 해줬다.
return Number(answer);
처음에 작성했었던 계획,,
혼란스럽네,,,
'코테연습' 카테고리의 다른 글
44. 없는 숫자 더하기 (0) | 2022.05.13 |
---|---|
43. 크레인 인형 뽑기 게임 (0) | 2022.05.13 |
41. 로또의 최고순위와 최저순위 (0) | 2022.05.11 |
40. 신규 아이디 추천 (0) | 2022.05.05 |
39.Valid Parentheses (0) | 2022.04.28 |
댓글