오늘의 목표

더보기

✔️ 프로그래머스 코테 문제 풀기

✔️ 개인 과제


⏱️ 오늘의 일정

프로그래머스 코테 문제 풀기

개인 과제


📜 프로그래머스 코테 문제 풀기

 

이진 변환 반복하기

https://github.com/YamSaeng/AlgorithmCodingTest/tree/main/%ED%94%84%EB%A1%9C%EA%B7%B8%EB%9E%98%EB%A8%B8%EC%8A%A4/2/70129.%E2%80%85%EC%9D%B4%EC%A7%84%E2%80%85%EB%B3%80%ED%99%98%E2%80%85%EB%B0%98%EB%B3%B5%ED%95%98%EA%B8%B0

 

AlgorithmCodingTest/프로그래머스/2/70129. 이진 변환 반복하기 at main · YamSaeng/AlgorithmCodingTest

This is an auto push repository for Baekjoon Online Judge created with [BaekjoonHub](https://github.com/BaekjoonHub/BaekjoonHub). - YamSaeng/AlgorithmCodingTest

github.com

 

function solution(s) {
    var answer = [0, 0];

    while (s.length > 1) {
        answer[0]++;

        for (let i = 0; i < s.length; i++) {
            if (s[i] == '0') {
                answer[1]++;
            }
        }

        s = s.split("0").join("");

        let tempSArray = [];
        let tempsLength = s.length;

        let quotient = 0;
        let remain = 0;
        while (true) {
            quotient = Math.floor(tempsLength / 2);
            remain = tempsLength - quotient * 2;

            tempsLength = quotient;

            tempSArray.push(remain);

            if (quotient == 0) {
                break;
            }
        }

        s = tempSArray.reverse().join("");        
    }

    return answer;
}

 

문제 설명대로 구현하니 다행히도 쉽게 해결할 수 있었다.

 

📜 개인과제

 

개인과제를 진행했다.

 

https://dinorunner.com/ko/

 

크롬 다이노 게임 온라인

T-Rex Dinosaur (Dinosaur Google) - 인터넷이 없을 때 Chrome 브라우저에 숨겨진 게임의 복제본. 시작하려면 스페이스바를 누르십시오. 스페이스바 또는 위쪽 화살표와 아래쪽 화살표(↓)를 사용하여 공룡

dinorunner.com

 

 

앞서 언급한대로 크롬 다이노 게임에서 다른 움직임을 줬다.

우선은 좌, 우 화살표로 공룡을 직접 움직일 수 있도록 수정했다.

if (event.code === "ArrowLeft") {
    this.speed = -PLAYER_SPEED;
}

if (event.code === "ArrowRight") {
    this.speed = PLAYER_SPEED;
}

 

keydown 이벤트에서 왼쪽 화살표를 입력하면, -speed 값을 주고,

keydown 이벤트에서 오른쪽 화살표를 입력하면, speed 값을 줘서 공룡 캐릭터를 움직인다.

 

 

if (event.code === "KeyA") {
   if (this.fireAttackTimer <= 0 && this.fireCount > 0) {
        let game = Game.GetInstance();
        if (game != null) {
           this.fireCount--;
           game.jobQue.push(new Job(JOB_TYPE_CREATE_OBJECT_FIRE,
              OBJECT_TYPE_FIRE, this.x, this.y));

           this.fireAttackTimer = FIRE_ATTACK_TIMER;
        }
    }
}

 

A 키를 누르면 공룡 입에서 불꽃을 발사하도록 코드를 수정했다.

불꽃은 일정 개수를 가지고, R키를 눌러 재장전할 수 있다.

 

불꽃은 다가오는 선인장을 제거할 수 있다.

지금은 재장전할때, 바로바로 되는데 재장전시간을 둬서 선인장을 바로 없앨 수는 없도록 하긴 해야겠다.

 

https://github.com/YamSaeng/DinoRunner

 

GitHub - YamSaeng/DinoRunner

Contribute to YamSaeng/DinoRunner development by creating an account on GitHub.

github.com

 

+ Recent posts