본문 바로가기

코딩테스트/programmers

n진수 게임

https://school.programmers.co.kr/learn/courses/30/lessons/17687

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

 

주어진 숫자를 n진수로 바꿔주는 Integer.toString() 메서드만 알고 있다면 무난하게 풀 수 있다.

 

0부터 숫자를 1씩 더해가며 n 진수로 바꿔 하나의 문자열로 합치되, 그 문자열의 자릿수는 최대 t(개수) * m(인원수) 이어야 한다.

 

이렇게 하나로 합쳐진 문자열을 대상으로 튜브가 출력할 문자열만 뽑아주면 끝..

 

import java.util.*;


class Solution {
    public String solution(int n, int t, int m, int p) {
        
        int limit = t * m;
        
        StringBuilder sb = new StringBuilder();
        
        int num = 0;
        while (sb.length() < limit) {
            sb.append(Integer.toString(num++, n));
        }
        
        String answer = "";
        int idx = p - 1;
        int count = 0;
        while (count < t) {
            answer += String.valueOf(sb.charAt(idx)).toUpperCase();
            idx += m;
            count++;
        }
        
        return answer;
    }
}

 

 

'코딩테스트 > programmers' 카테고리의 다른 글

모음사전  (0) 2023.10.23
게임 맵 최단거리  (0) 2023.10.23
압축  (1) 2023.10.18
k진수에서 소수 개수 구하기  (0) 2023.10.16
전화번호 목록  (0) 2023.10.16