반응형
Notice
Recent Posts
Recent Comments
Link
관리 메뉴

짧은코딩

공주 구하기 본문

반응형

해결법

이 문제는 일단 왕자의 수 만큼 배열에 넣어둔다. 그리고 우선 k-1만큼 앞 왕자를 빼서 뒤로 보낸다. 그리고 k번째 왕자가 있는 숫자를 제거한다. 이것을 1명의 왕자가 남을 때 까지 반복하면 된다.

코드

<html>
  <head>
    <meta charset="UTF-8" />
    <title>출력결과</title>
  </head>
  <body>
    <script>
      function solution(n, k) {
        let answer;

        let ary = [];
        for (let i = 1; i <= n; i++) ary.push(i);

        while (ary.length > 1) {
          for (let i = 0; i < k - 1; i++) {
            ary.push(ary.shift());
          }
          ary.shift();
        }

        answer = ary[0];

        return answer;
      }

      console.log(solution(8, 3));
    </script>
  </body>
</html>
반응형
Comments