728x90
문제 설명
https://school.programmers.co.kr/learn/courses/30/lessons/17687
문제 풀이 방법
- 진법을 정해주는 n, 구해야할 숫자의 수 t, 참가인원 m, 튜브(플레이어)의 순서 p를 받아 구성한다.
- 우선 준비된 빈 배열에 0부터 t*m까지의 숫자를 n진수로 변환해 넣어준다.
t*m까지의 수까지 범위를 지정한 이유는 숫자가 10진수로 t개를 구해야 하기 때문이다.
즉, 최대 범위를 지정한 것이다. - 구해진 배열 문자열로 바꾼뒤, for문을 이용해 답을 구해준다.
코드
const solution = (n, t, m, p) => {
let answer = '';
let arr = [];
for(let i=0; i<t*m; i++){
arr.push(i.toString(n));
}
const str = arr.join('');
for(let i=p-1; i<str.length; i+=m){
answer += str[i];
if(answer.length === t) return answer.toUpperCase();
}
}
728x90
'코딩 테스트 > 프로그래머스 코딩 테스트 연습' 카테고리의 다른 글
[JS] 2Level / 2022 KAKAO BLIND RECRUITMENT / 주차 요금 계산 (0) | 2023.09.07 |
---|---|
[JS] 2Level / 연습 문제 / 요격 시스템 (0) | 2023.09.06 |
[JS] 2Level / 연습문제 / 할인 행사 (0) | 2023.08.22 |
[JS] 1Level / 연습문제 / 푸드 파이트 대회 (0) | 2023.08.17 |
[JS] 3Level / 2018 KAKAO BLIND RECRUITMENT / [1차] 캐시 (0) | 2023.07.18 |