[Programmers] [3차] n진수 게임 - JavaScript

Joosi_Cool·2023년 3월 1일
0

Programmers

목록 보기
28/98
post-thumbnail

문제설명




설계 과정

  1. 게임에 해당 되는 숫자를 담당하는 변수(num), 내가 몇개 말했는지 카운트 해주는 변수(count), 순서를 담당하는 변수 3개를 만든다(order).
  2. count 와 t가 같아질때까지 아래 과정반복
    -> num을 n진수로 바꾸고, 그걸 하나씩 갖는 배열로 만듬.
    -> 이 배열을 하나씩 체크
  • 내가 말할 부분인지 체크 -> order%m===p인지 체크 맞다면 내가 말할 것임.
    -> answer에 넣어준다. count++
    n진수로 바꾼 것을 한바뀌 돌았다면 다음 숫자로 넘어감 num++;
  1. count와 t가 같아지면 영어는 대문자로 바꿔서 리턴


정답 코드

function solution(n, t, m, p) {
    var answer = [];
    //게임에서 해당 되는 숫자 
    var num = 0;
    var checkNum;
    //내가 몇개 말했는지 변수
    var count = 0;
    //순서
    var order = 1;
    while(true){
        if(count===t) return answer.join("").toUpperCase();
        checkNum = num.toString(n).split("");
        for(var i = 0; i<checkNum.length;i++){
            if(p===m) p=0;
            else if(order%m===p){
                answer.push(checkNum[i]);
                count++;
                if(count===t) break;
             }
             order++;
        }
        num++;
    }    
}


결과

profile
집돌이 FE개발자의 노트

0개의 댓글