ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • ๋ฌธ์ œ 99. ๊ฐœ๊ตฌ๋ฆฌ๋“ค์˜ ํ–‰์ง„
    ๐Ÿง  codingtest/javascript 100์ œ 2022. 5. 3. 10:52
    728x90

     

     

     

    • ๊ฐœ๊ตฌ๋ฆฌ๋“ค์ด ์ง•๊ฒ€๋‹ค๋ฆฌ๋ฅผ ๊ฑด๋„ˆ๋ ค๊ณ  ํ•œ๋‹ค. ํ•˜์ง€๋งŒ ๋Œ์ด ๋ถ€์‹คํ•ด์„œ ๋ช‡๋ฒˆ ๊ฑด๋„ˆ์ง€ ๋ชปํ•  ๊ฒƒ ๊ฐ™๋‹ค.

    ๋Œ€๊ธฐ ์ค‘์ธ ๊ฐœ๊ตฌ๋ฆฌ๋“ค์˜ ํ†ต๊ณผ ์—ฌ๋ถ€๋ฅผ ๋ฐฐ์—ด์— ๋‹ด์•„ ์ถœ๋ ฅํ•ด๋ณด์ž !  

     

    1. ๊ฐ ๊ฐœ๊ตฌ๋ฆฌ๊ฐ€ ์ฐฉ์ง€ ํ• ๋•Œ ๋งˆ๋‹ค ๋Œ์˜ ๋‚ด๊ตฌ๋„๋Š” 1์”ฉ ๊ฐ์†Œ
    2. ๊ฐœ๊ตฌ๋ฆฌ์˜ ์ ํ”„๋ ฅ์ด ๊ฐ์ž ๋‹ค๋ฆ„
    3. ๊ฐ ๊ฐœ๊ตฌ๋ฆฌ๋“ค์€ ์ˆœ์„œ๋Œ€๋กœ ๋‹ค๋ฆฌ๋ฅผ ๊ฑด๋„˜
    // ์ž…๋ ฅ
    ๋Œ์˜๋‚ด๊ตฌ๋„ = [1,2,1,4]
    ๊ฐœ๊ตฌ๋ฆฌ์˜์ ํ”„๋ ฅ = [2,1]
    
    // ์ถœ๋ ฅ
    ['pass', 'pass']
    
    
    // ์ž…๋ ฅ
    ๋Œ์˜๋‚ด๊ตฌ๋„ = [1,2,1,4,5,2]
    ๊ฐœ๊ตฌ๋ฆฌ์˜์ ํ”„๋ ฅ = [2,1,3,1]
    
    // ์ถœ๋ ฅ
    ['pass', 'pass', 'fail', 'fail']
    

     

     

     

    ๋ฏธ๋ฆฌ ์ƒ๊ฐํ•ด ๋ด์•ผํ•  ๊ฒƒ

    • ๊ฐœ๊ตฌ๋ฆฌ๋“ค์ด ์ ํ”„ํ•˜๋ฉด์„œ ๊ฐ์†Œ๋˜๋Š” ๋‚ด๊ตฌ๋„๋ฅผ ์ƒ๊ฐํ•ด๋ณด์ž
    // ์ž…๋ ฅ
    ๋Œ์˜๋‚ด๊ตฌ๋„ = [1,2,1,4,5,2]
    ๊ฐœ๊ตฌ๋ฆฌ์˜์ ํ”„๋ ฅ = [2,1,3,1]
    
    
    // ์ถœ๋ฐœ [1,1,1,3,5,1] ๋„์ฐฉ 2 -> pass
    // ์ถœ๋ฐœ [0,0,0,2,4,0] ๋„์ฐฉ 1 -> pass
    // ์ถœ๋ฐœ [0,0,0,2,4,0] ๋„์ฐฉ 3 -> fail
    // ์ถœ๋ฐœ [0,0,0,2,4,0] ๋„์ฐฉ 1 -> fail
    

     

     

     

    ๋‹ต

    let stone = [1, 2, 1, 4, 5, 2];
    let frog = [2, 1, 3, 1];
    
    function sol(๋‚ด๊ตฌ๋„, ์ ํ”„๋ ฅ) {
      let answer = [];
      for (let i in ์ ํ”„๋ ฅ) {
        answer.push("pass");
      }
      for (let i in ์ ํ”„๋ ฅ) {
        let ๊ฐœ๊ตฌ๋ฆฌ์˜ํ˜„์žฌ์œ„์น˜ = 0;
        while (๊ฐœ๊ตฌ๋ฆฌ์˜ํ˜„์žฌ์œ„์น˜ < ๋‚ด๊ตฌ๋„.length - 1) {
          ๊ฐœ๊ตฌ๋ฆฌ์˜ํ˜„์žฌ์œ„์น˜ += ์ ํ”„๋ ฅ[i];
          ๋‚ด๊ตฌ๋„[๊ฐœ๊ตฌ๋ฆฌ์˜ํ˜„์žฌ์œ„์น˜ - 1] -= 1;
    
          if (๋‚ด๊ตฌ๋„[๊ฐœ๊ตฌ๋ฆฌ์˜ํ˜„์žฌ์œ„์น˜ - 1] < 0) {
            answer[i] = "fail";
          }
        }
        let ๋‚ด๊ตฌ๋„๊ฐ์†Œ = JSON.parse(JSON.stringify(๋‚ด๊ตฌ๋„));// ๊นŠ์€ ๋ณต์‚ฌ๋กœ ๋‚ด๊ตฌ๋„ ๊ฐ์†Œํ˜„ํ™ฉ์„ ๋ณผ์ˆ˜ ์žˆ๋‹ค.
        console.log(๋‚ด๊ตฌ๋„๊ฐ์†Œ)
      }
      return answer;
    }
    
    console.log(sol(stone, frog));
    
    

    ๋Œ“๊ธ€