μΌ | μ | ν | μ | λͺ© | κΈ | ν |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 |
Tags
- programmers
- c#
- μ€ν°λ
- ꡬν
- BFS
- DART
- μΌμ±swμν
- νμ΄μ¬
- JS
- μλ°μ€ν¬λ¦½νΈ
- BAEKJOON
- λͺ»κ·Έλ¦¬μ§λ§
- λμ νλ‘κ·Έλλ°
- sort
- κ·Έλν νμ
- μΉ΄μΉ΄μ€
- λ°±μ€
- μκ³ λ¦¬μ¦
- Java
- μ½λ©ν μ€νΈ
- μ°μ ¨μμ
- λ¬Έμμ΄ νμ±
- μ½λνΈλ¦¬
- νλ‘κ·Έλλ¨Έμ€
- DP
- μλ£κ΅¬μ‘°
- μ΄μ§νμ
- Flutter
- JavaScript
- Algorithm
Archives
- Today
- Total
Algo μ°μ
[Programmers] (Javascript) μμ μ΅λν λ³Έλ¬Έ
https://programmers.co.kr/learn/courses/30/lessons/67257
βΆ μ½λ :
function solution(expression) {
var orders = [
['*', '+', '-'],
['*', '-', '+'],
['+', '-', '*'],
['+', '*', '-'],
['-', '+', '*'],
['-', '*', '+'],
];
let answer = -1;
for (const order of orders){
var res = parseInt(recursive(order,0,expression));
res= Math.abs(res);
if (res > answer)
{
answer = res;
}
}
return answer;
}
function recursive(order,n, expr)
{
if (n == 2)
{
return eval(expr);
}
else
{
if (order[n] == '*')
{
let temp = expr.split('*');
let val = [];
for (const e of temp)
{
val.push(recursive(order, n + 1, e));
}
return eval(val.join('*'));
}
else if(order[n] == '-')
{
let temp = expr.split('-');
let val = [];
for (const e of temp)
{
val.push(recursive(order, n + 1, e));
}
return eval(val.join('-'));
}
else if(order[n] == '+')
{
let temp = expr.split('+');
let val = [];
for (const e of temp)
{
val.push(recursive(order, n + 1, e));
}
return eval(val.join('+'));
}
}
return temp;
}
βΆ λ¬Έμ νμ΄ :
1. κ³μ° μμλ₯Ό μ μ₯νλ orders λ°°μ΄μ μμ±νμλ€.
2. κ°κ°μ κ³μ°μμμ λ°λΌ κ³μ°μ μ§ννκ³ , κ²°κ³Όλ₯Ό κ°μ Έμ μ΅μκ°μ answerμ μ μ₯νμλ€.
3. recursiveν¨μλ₯Ό ν΅ν΄ κ³μ°μ μ§ννλ€.
3-1) recursiveν¨μλ n=2μΌλ μ¬κ·λ₯Ό μ’ λ£νλ€.
3-2) κ°κ°μ orderμ μ μ₯λ μ°μ°μλ₯Ό κΈ°μ€μΌλ‘ λλκ³ μ¬κ·λ₯Ό ν΅ν΄ λλ μ§ ννμμλν΄ κ°μ κ³Όμ μ λ°λ³΅νλ€.
3-3) orderμ λ§μ§λ§ μ°μ°μ΄ μ’ λ£λ¨μ λ°λΌ μμ°¨μ μΌλ‘ λ°ννκ³ , μ΄ν λ°νλ κ²°κ³Ό λ¬Έμμ΄λ€μ λ€μ λλ μ°μ°μλ‘ joinνμ¬ κ²°κ³Όλ₯Ό κ³μ°νλ€.
'π― CodingTest > Programmers' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
[Programmers] (Javascript) μΆμ νΈλν½ (0) | 2022.04.26 |
---|---|
[Programmers] (Javascript) νν (0) | 2022.04.25 |
[Programmers] (Javascript) λ΄μ€ ν΄λ¬μ€ν°λ§ (0) | 2022.04.25 |
[Programmers] (Javascript) κ΄νΈ λ³ν (0) | 2022.04.25 |
[Programmers] (Javascript) 거리λκΈ° νμΈνκΈ° (0) | 2022.04.21 |