function solution(n) {
var answer = [];
for(let i = 2; i <= n; i++) {
if(n % i == 0) {
while(n % i == 0) {
n = n/i
}
answer.push(i);
}
}
return answer;
}
function solution(my_string) {
let str = my_string.split(" ");
let sum = Number(str[0]);
for(let i = 1; i < str.length; i = i + 2) {
let tmp = Number(str[i+1]);
if (str[i] == "+") sum += (tmp)
else sum -= (tmp);
}
return sum
}
다른 사람의 풀이 : zero부터 nine 까지 객체나 배열에 담아두고 문장 전체를 돌며 해당되는 값이 있으면 split이나 replace로 바꾸는 식이었다.
풀이1)
function solution(numbers) {
const obj = {
zero: 0, one: 1, two: 2, three: 3, four: 4,
five: 5, six: 6, seven: 7, eight: 8, nine: 9
};
const num = numbers.replace(/zero|one|two|three|four|five|six|seven|eight|nine/g, (v) => {
return obj[v];
});
return Number(num);
}
풀이2)
function solution(numbers) {
const number = ["zero","one","two","three", "four", "five", "six", "seven", "eight", "nine"]
for(let i = 0 ; i<number.length; i++){
numbers = numbers.split(number[i]).join(i)
}
return +numbers
}
나는 완전 하드코딩을 했다...ㅎ
function solution(numbers) {
var answer = "";
let arr = numbers.split("")
console.log(arr)
for(let i = 0; i < arr.length; i++) {
if(arr[i] === 'o') {
answer += 1;
i += 2;
}
else if(arr[i] === 't') {
if(arr[i+1] === "w") {
answer += 2;
i += 2;
} else {
answer += 3;
i += 4;
}
}
else if(arr[i] === 'f') {
if(arr[i+1] === "o") {
answer += 4;
} else {
answer += 5;
}
i += 3;
}
else if(arr[i] === 's') {
if(arr[i+1] === "i") {
answer += 6;
i += 2;
} else {
answer += 7;
i += 4;
}
}
else if(arr[i] === 'e') {
answer += 8;
i += 4;
}
else if(arr[i] === 'n') {
answer += 9;
i += 3;
}
else {
answer += 0;
i += 3;
}
}
return Number(answer);
}