부트캠프

7일차 TIL

ohs020105 2024. 11. 5. 20:54

오늘은 7일 차 평소와 다름없이 JavaScript 수업을 계속해서 들었다.

뭔가 오늘은 평소와 다르게 머리에 잘 들어오는 것 같아서 한번 문제를 가지고 튜터님께 찾아갔다!!

잘 풀리긴 개뿔 ㅋㅋ 가서 엄청 고생했다...

내가 이해를 한게 아니라 겉핥기식으로 강의를 봐서 문제가 많았다.

그래도 오늘은 간단하게라도 if문에 대해서는 분해하고 익혀 보았다

function solution(s){
    // s = "pPoooyY"
    let result = true;
    s = s.toUpperCase(); 
    // s = "PPOOOYY" -> ["P", "P", "O", "O","O","Y","Y"]

    let num = 0;
    //      i = 0; 0 < 7;        0++ ->  1 -> i = 1;
    //             1 < 7;        1++ ->  2 -> i = 2;
    //             2 < 7;        2++ ->  3 -> i = 3;
    //             3 < 7;        3++ ->  4 -> i = 4;
    //             4 < 7;        4++ ->  5 -> i = 5;
    //             5 < 7;        5++ ->  6 -> i = 6;
    //             6 < 7;
    for(let i = 0; i < s.length; i++){
      //if(s[0] === 'P') -> if('P' === 'P') -> if(true)
      //if(s[1] === 'P') -> if('P' === 'P') -> if(true)
      //if(s[2] === 'P') -> if('O' === 'P') -> if(false)
      //if(s[3] === 'P') -> if('O' === 'P') -> if(false)
      //if(s[4] === 'P') -> if('O' === 'P') -> if(false)
      //if(s[5] === 'P') -> if('Y' === 'P') -> if(false)
      //if(s[6] === 'P') -> if('Y' === 'P') -> if(false)
      if(s[i] === 'P') { 
        // 0++ -> 1 -> num = 1;
        // 1++ -> 2 -> num = 2;
        num++; // p이면 갯수 더하기
      }
      //if(s[0] === 'Y') -> if('P' === 'Y') -> if(false) 
      //if(s[1] === 'Y') -> if('P' === 'Y') -> if(false)
      //if(s[2] === 'Y') -> if('O' === 'Y') -> IF(false)
      //if(s[3] === 'Y') -> if('O' === 'Y') -> if(false)
      //if(s[4] === 'Y') -> if('O' === 'Y') -> if(false)
      //if(s[5] === 'Y') -> if('Y' === 'Y') -> if(true)
      //if(s[6] === 'Y') -> if('Y' === 'Y') -> of(true)
      if(s[i] === 'Y') {
        // 2-- -> 1 -> num = 1;
        // 1-- -> 0 -> num = 0;
        num--; // y이면 갯수 빼기
      }
    } 

  //result = (0 === 0); -> result = true;
    result = (num === 0); // p, y 갯수가 같으면 0 (p가 많으면 양수, 반대 음수)
  
    // return true
    return result;
}

const a = solution("pPoooyY");
// a = true
console.log(a);


// for(let i = 0; i < 10; i++) {
    // ~~~~~
    // ~~~~~
    // ~~~~~
// }

이게 문제중 하나의 답을 뜯어서 어떻게 작동하는지 적어놓은 거다.

살짝 이런 순서로 흘러간다.(그림판이라 미안하다!)

for문은 엄청 어려운 줄 알았지만 그래도 어떻게 굴러가는지 보면 이해가 된다. 

오늘은 되게 튜터님께 감사하다 덕분에 땅바닥을 기는 수준에서 엎드려서 기어가는 수준까지 되었으니 ㅎㅎ

오늘 24시까지는 2주 강의를 마치고 내일은 3주 강의를 들은 다음 개인과제 로그라이크 게임 만들기 작업을 슬슬 들어가야 될 것 같다. 오늘 하루도 잘 버텼고 내일 하루도 잘 버틸 수 있기를!

'부트캠프' 카테고리의 다른 글

9일차 TIL  (0) 2024.11.07
8일차 TIL  (3) 2024.11.06
6일차 TIL  (3) 2024.11.04
5일차 TIL  (1) 2024.11.01
1주차 WIL  (2) 2024.11.01