ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ์ฝ”๋”ฉํ…Œ์ŠคํŠธ ํ’€์ด(js) > ํฌ๋ ˆ์ธ ์ธํ˜• ๋ฝ‘๊ธฐ ๊ฒŒ์ž„(lv1)

2023. 7. 20. 21:00ยท๐Ÿ”’Algorithm

๋ฌธ์ œ ๐Ÿ”ฝ

https://school.programmers.co.kr/learn/courses/30/lessons/64061

 

ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค

์ฝ”๋“œ ์ค‘์‹ฌ์˜ ๊ฐœ๋ฐœ์ž ์ฑ„์šฉ. ์Šคํƒ ๊ธฐ๋ฐ˜์˜ ํฌ์ง€์…˜ ๋งค์นญ. ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค์˜ ๊ฐœ๋ฐœ์ž ๋งž์ถคํ˜• ํ”„๋กœํ•„์„ ๋“ฑ๋กํ•˜๊ณ , ๋‚˜์™€ ๊ธฐ์ˆ  ๊ถํ•ฉ์ด ์ž˜ ๋งž๋Š” ๊ธฐ์—…๋“ค์„ ๋งค์นญ ๋ฐ›์œผ์„ธ์š”.

programmers.co.kr

 

๋‹ค๋ฅธ์‚ฌ๋žŒ ํ’€์ด ๐Ÿ”ฝ

function solution(board, moves) {

    var count =0;
    var stack = [];

    for(var i=0;i<moves.length;i++){
        var now = moves[i]-1
        for(var j=0;j<board.length;j++){
            if(board[j][now]!=0){
                if(stack[stack.length-1]===board[j][now]){
                    stack.pop();
                    count+=2;
                }
                else{
                    stack.push(board[j][now])
                }
                board[j][now] = 0;
                break;
            }
        }
    }
    console.log(stack)
    return count
}

 

๋‚ดํ’€์ด๐Ÿ”ฝ

1. ์„ฑ๊ณต โญ•  

function solution(board, moves) {
    var answer = 0;
    let stack=[]
    let n = board.length
    // 2์ฐจ์› ๋ฐฐ์—ด ๊นŠ์€๋ณต์‚ฌ
    let newBoard = board.map((val)=>{return [...val]})
    for(let i=0; i<n; i++){
        for(let j=0; j<n; j++){
            newBoard[i][j]=board[(n-1)-j][i]
         }
    }

    // 0์„ ๋ชจ๋‘ ์—†์•ฐ
    newBoard.forEach((arr,index)=>{
        newBoard[index]=arr.filter((ele)=>{return ele!==0})
    })

    // stack์— ์ธํ˜•๋“ค์„ ์ˆœ์„œ๋Œ€๋กœ ์Œ“์•„๋„ฃ์Œ
    moves.forEach((val)=>{
        let poppedDoll=newBoard[val-1].pop();
        if(poppedDoll){
            stack.push(poppedDoll);
            if(stack[stack.length-2]===stack[stack.length-1]){
                stack.pop()
                stack.pop()
                answer+=2;
            }
        }
    })
    return answer;
}

๋А๋‚€์ ๐Ÿ”ฝ

๋ฌธ์ œ๋ฅผ ์ž˜๋ชป ์ฝ์–ด์„œ ํ˜ผ๋ž€์Šค๋Ÿฌ์šด ์‹œ๊ฐ„์„ ๋งŽ์ด ๋ณด๋ƒˆ๋‹ค. 

๊ทธ ์ดํ›„์— 2์ฐจ์›๋ฐฐ์—ด์˜ ๊นŠ์€ ๋ณต์‚ฌ์—์„œ ์‹ค์ˆ˜๋ฅผ ํ•ด์„œ ๋˜ ์™œ ์•ˆ๋˜๋Š”์ง€ ์‹œ๊ฐ„์„ ํ—ˆ๋น„ํ–ˆ๋‹ค..

์šฐ์—ฌ๊ณก์ ˆ ๋์— ๊ฒฐ๊ตญ ๋ฌธ์ œ๋ฅผ ํ’€์—ˆ๋‹ค.

๋‹ค๋ฅธ์‚ฌ๋žŒ์˜ ํ’€์ด๋ฅผ ๋ณด๋‹ˆ ๊ตณ์ด ๋ฐฐ์—ด์˜ ๊ฐ€๋กœ์„ธ๋กœ๋ฅผ ์•ˆ๋ฐ”๊พธ๊ณ  ํ’€์–ด์„œ ์‹ ๊ธฐํ–ˆ๋‹ค.

 

๋‹ค์‹œํ•œ๋ฒˆ ๋ณต๊ธฐํ•˜์ž๋ฉด ๋ฐฐ์—ด์ด 1์ฐจ์›์ผ๋•Œ๋Š” 

let newArr = oldArr.slice()   >> slice()๋ฅผ ์ด์šฉํ•˜์—ฌ 1์ฐจ์› ๊นŠ์€ ๋ณต์‚ฌ 

2์ฐจ์› ์ผ๋•Œ ๊นŠ์€๋ณต์‚ฌ๋Š”

let newArr = oldArr.map((val)=>{ return [...val] }) ๋˜๋Š”

let newArr = oldArr.map((val)=>{ return val.slice() } ๋ฅผ ์ด์šฉํ•˜๋ฉด ๋œ๋‹ค. 

'๐Ÿ”’Algorithm' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ์ฝ”๋”ฉํ…Œ์ŠคํŠธ ํ’€์ด(js) > ์ˆซ์ž ์ง๊ฟ(lv1)  (0) 2023.07.22
ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ์ฝ”๋”ฉํ…Œ์ŠคํŠธ ํ’€์ด(js) > ํ–‰๋ ฌ์˜ ๋ง์…ˆ(lv1)  (1) 2023.07.21
ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ์ฝ”๋”ฉํ…Œ์ŠคํŠธ ํ’€์ด(js) > ๋ชจ์˜๊ณ ์‚ฌ(lv1)  (0) 2023.07.19
ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ์ฝ”๋”ฉํ…Œ์ŠคํŠธ ํ’€์ด(js) > ์นด๋“œ๋ญ‰์น˜(lv1)  (0) 2023.07.18
ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ์ฝ”๋”ฉํ…Œ์ŠคํŠธ ํ’€์ด(js) > ๋ฌธ์ž์—ด ๋‚˜๋ˆ„๊ธฐ(lv1)  (0) 2023.07.17
'๐Ÿ”’Algorithm' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€
  • ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ์ฝ”๋”ฉํ…Œ์ŠคํŠธ ํ’€์ด(js) > ์ˆซ์ž ์ง๊ฟ(lv1)
  • ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ์ฝ”๋”ฉํ…Œ์ŠคํŠธ ํ’€์ด(js) > ํ–‰๋ ฌ์˜ ๋ง์…ˆ(lv1)
  • ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ์ฝ”๋”ฉํ…Œ์ŠคํŠธ ํ’€์ด(js) > ๋ชจ์˜๊ณ ์‚ฌ(lv1)
  • ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ์ฝ”๋”ฉํ…Œ์ŠคํŠธ ํ’€์ด(js) > ์นด๋“œ๋ญ‰์น˜(lv1)
devWarrior
devWarrior
  • devWarrior
    devWarrior
    devWarrior
  • ์ „์ฒด
    ์˜ค๋Š˜
    ์–ด์ œ
    • ๐ŸงฉDev (263)
      • โญFE (34)
      • ๐Ÿ”’Algorithm (155)
      • โž•Etc. (11)
  • ๋ธ”๋กœ๊ทธ ๋ฉ”๋‰ด

    • ํ™ˆ
    • ํƒœ๊ทธ
    • ๋ฐฉ๋ช…๋ก
    • ๊ธ€์“ฐ๊ธฐ
    • ๊ด€๋ฆฌ
  • ๋งํฌ

  • ๊ณต์ง€์‚ฌํ•ญ

  • ์ธ๊ธฐ ๊ธ€

  • ํƒœ๊ทธ

    dp
    ๊ตฌํ˜„
    leetcode
    react
    BFS
    ๋ฐฑ์ค€
    ํ‹ฐ์Šคํ† ๋ฆฌ์ฑŒ๋ฆฐ์ง€
    ์‹ค๋ฒ„2
    FE
    ์˜ค๋ธ”์™„
    js
    ์ฝ”ํ…Œ
    ํ”„๋ก ํŠธ์—”๋“œ
    ๊ทธ๋ฆฌ๋””
    Lv2
    Algorithm
    ์‹ค๋ฒ„3
    javascript
    ์ž์Šค
    ์•Œ๊ณ ๋ฆฌ์ฆ˜
    Easy
    ์ฝ”๋”ฉํ…Œ์ŠคํŠธ
    ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค
    nodejs
    ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ
    ๊ณจ๋“œ5
    node.js
    ์‹ค๋ฒ„1
    DFS
    ์‹ค๋ฒ„4
  • ์ตœ๊ทผ ๋Œ“๊ธ€

  • ์ตœ๊ทผ ๊ธ€

  • hELLOยท Designed By์ •์ƒ์šฐ.v4.10.3
devWarrior
ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ์ฝ”๋”ฉํ…Œ์ŠคํŠธ ํ’€์ด(js) > ํฌ๋ ˆ์ธ ์ธํ˜• ๋ฝ‘๊ธฐ ๊ฒŒ์ž„(lv1)
์ƒ๋‹จ์œผ๋กœ

ํ‹ฐ์Šคํ† ๋ฆฌํˆด๋ฐ”