Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
Tags
- nextjs
- Each child in a list should have a unique "key" prop.
- Git
- camera access
- electron-packager
- github 100mb
- silent printing
- adb pair
- dvh
- 티스토리 성능
- custom printing
- Can't resolve
- camera permission
- react-native-dotenv
- animation
- npm package
- Recoil
- adb connect
- rolldown
- ffi-napi
- 이미지 데이터 타입
- github lfs
- ELECTRON
- Failed to compiled
- device in use
- github pdf
- html
- vercel git lfs
- react-native
- augmentedDevice
Archives
- Today
- Total
Bleeding edge
[프로그래머스] [3차] n진수 게임 - 자바스크립트 본문
https://programmers.co.kr/learn/courses/30/lessons/17687
코딩테스트 연습 - [3차] n진수 게임
N진수 게임 튜브가 활동하는 코딩 동아리에서는 전통적으로 해오는 게임이 있다. 이 게임은 여러 사람이 둥글게 앉아서 숫자를 하나씩 차례대로 말하는 게임인데, 규칙은 다음과 같다. 숫자를 0
programmers.co.kr
풀이시간 : 16분
아이디어 : 주어진 조건의 숫자가 많기 때문에, MAX치를 계산하고 그에 맞는 값을 구해도 된다.
플로우 :
1. 구해야하는 수와, 인원수를 곱하면, 튜브가 이야기해야하는 숫자보다 크기에 그 숫자를 구한다.
2. 튜브의 순서를 구한다 튜브의 순서는 p-1이다 (array는 순서가 0부터 시작하기에)
3. for문으로, 1에서 구한숫자만큼을, String에 계속 붙인다
(만일 2진법을 3까지붙인다면, 011011)
4. for문으로, 만일 튜브의 숫자가 나온다면, answer에 해당하는 글자를 붙인다.
주의사항 : 알파벳은 대문자로 붙여야하니 toUpperCase()를 붙인다.
로 풀면 쉽게 풀리는 문제이다.
function solution(n, t, m, p) {
const maxSize = t*m;
const ORDER = p-1
let full = ""
let answer = ""
for(let i=0;i<maxSize;i++){
full = full+i.toString(n)
}
for(let i=0;full.length;i++){
if(answer.length===t){
break;
}
if(i%m===ORDER){
answer = answer+full[i].toUpperCase()
}
}
return answer
}
'코딩테스트 공부' 카테고리의 다른 글
[프로그래머스] 구명보트 - 자바스크립트 (0) | 2022.05.13 |
---|---|
조합 nCr 구하기. (0) | 2022.05.12 |
[프로그래머스] 주차 요금 계산 - 자바스크립트 (0) | 2022.05.10 |
[프로그래머스] JadenCase 문자열 만들기 - 자바스크립트 (0) | 2022.05.10 |
[프로그래머스] [3차] 압축- 자바스크립트 (0) | 2022.05.06 |