반응형
1. 문제
https://school.programmers.co.kr/learn/courses/30/lessons/17687
2. 코드
이 문제는 차분하게 for문의 조건을 생각해보는 것이 관건이였던 문제같다. 습관적으로 let i=0부터 적고 나니 머리가 복잡해졌지만, 돌이켜 생각해보니 내 순서와 참여인원을 알고 있으면 쉽게 for문의 조건을 만들어 줄 수 있었다. 차분하게!
function solution(n, t, m, p) {
let answer = [];
let str = "";
let i = 0;
// 내가 필요한 숫자가 저장될 때까지 n진수로 변환
while(answer.length < t*m){
// 숫자 n진수로 변환 후 한 글자씩 떼어줌
answer.push(...(i.toString(n).split("")));
i++;
}
// 내 순서부터 시작해서 참여하는 사람 만큼 건너뛰며 내 순서에 맞는 요소 저장
for(let i=p-1;i<answer.length;i+=m){
if(str.length < t){
if(answer[i] < 10 || answer[i] > 15) str += answer[i];
else str += answer[i].toUpperCase();
}
else break;
}
return str;
}
반응형
'프로그래머스 > 구현' 카테고리의 다른 글
[문자열 & 해시맵] 프로그래머스 '오픈채팅방' (0) | 2023.04.10 |
---|---|
[문자열 & 해시] 프로그래머스 '주차 요금 계산' - js (0) | 2023.04.08 |
[문자열] 프로그래머스 '압축' - js (0) | 2023.04.06 |
[구현] 프로그래머스 '야근 지수' - js (0) | 2023.04.06 |
[문자열&소수] 프로그래머스 'k진수에서 소수 개수구하기' - js (0) | 2023.04.05 |