728x90

πŸ”— 문제 링크

Nμ§„μˆ˜ κ²Œμž„

 

πŸ”Ž λ¬Έμ œ 풀이

진법 λ³€ν™˜λ§Œ ν•˜λ©΄ λ˜λŠ” λ¬Έμ œμ΄λ‹€!

카카였 μ½”ν…ŒλŠ” 같은 Lv.2여도 λŠκ»΄μ§€λŠ” λ‚œμ΄λ„κ°€ μ™œ μ²œμ§€μ°¨μ΄μΌκΉŒ ,,?

직접 μ½”λ“œλ₯Ό κ΅¬ν˜„ν•˜μ—¬ 진법 λ³€ν™˜μ„ ν•˜κ±°λ‚˜,

진법 변경을 μ•Œμ•„μ„œ ν•΄μ£ΌλŠ” Integer.toString(숫자, 진법)을 μ‚¬μš©ν•˜λ©΄ λœλ‹€.

κ°„λ‹¨ν•˜κ²Œ ν›„μžμ˜ 방법을 νƒν–ˆλ‹€.

 

Key Point

πŸ”‘ 숫자λ₯Ό νŠΉμ • μ§„λ²•μœΌλ‘œ λ³€ν™˜ν•œλ‹€.

 

Java μ½”λ“œ

import java.util.*;

class Solution {
    public String solution(int n, int t, int m, int p) {
        String answer = "";
        StringBuilder sb = new StringBuilder();
        int num = 0;
        
        // mλͺ…이 t번 λ§ν•˜λŠ” 경우λ₯Ό StringBuilder둜 μ €μž₯ν•œλ‹€.
        
        while(sb.length() < m*t) {
            sb.append(Integer.toString(num++, n));
        }
        
        // νŠœλΈŒκ°€ 말해야 ν•˜λŠ” 숫자 λΆ€λΆ„λ§Œ answer에 더해쀀닀.
        
        for (int i=p-1; i<m*t; i+=m) {
            answer += sb.charAt(i);
        }
        
        return answer.toUpperCase();
    }
}

 

Kakao Tech λΈ”λ‘œκ·Έμ—μ„œ 문제 해섀을 λ³΄λ‹ˆ 이 λ¬Έμ œλŠ” μ±”νΌλ‚˜μš΄ μˆ˜λΌλŠ” μˆ˜ν•™ μƒμˆ˜λ₯Ό μ΄μš©ν•œ 문제라고 ν•œλ‹€.

 

μ±”νΌλ‚˜μš΄ μƒμˆ˜(Champernowne constant) λž€ ?

μ΄ˆμ›”μˆ˜μ΄μž μ‹€μˆ˜μΈ μˆ˜ν•™ μƒμˆ˜ 쀑 ν•˜λ‚˜λ‘œ μ†Œμˆ˜μ  μ΄ν•˜ μžλ¦Ώμˆ˜μ— νŠΉμ΄ν•œ 점이 μžˆλŠ” μˆ˜μ΄λ‹€.

μ‹­μ§„λ²•μ—μ„œ μ±”νΌλ‚˜μš΄ μˆ˜λŠ” μ†Œμˆ˜ μ „κ°œκ°€ 1λΆ€ν„° μ‹œμž‘ν•˜μ—¬ 연속적인 μ •μˆ˜λ₯Ό μ­‰ 이은  μˆ˜μ—΄μΈ μ‹€μˆ˜μ΄λ‹€.

 

 

이 κΈ‰μˆ˜λ₯Ό 10κ³Ό 9 λŒ€μ‹ μ— b와 b-1둜 각각 λ°”κΏ”μ„œ μž„μ˜μ˜ bμ§„λ²•μœΌλ‘œ μΌλ°˜ν™”ν•  수 μžˆλ‹€κ³  ν•œλ‹€.

 

 


Reference

 

μ±”νΌλ‚˜μš΄ 수 - μœ„ν‚€λ°±κ³Ό, 우리 λͺ¨λ‘μ˜ 백과사전

μœ„ν‚€λ°±κ³Ό, 우리 λͺ¨λ‘μ˜ 백과사전. μˆ˜λ‘ μ—μ„œ μ±”νΌλ‚˜μš΄ 수(μ˜μ–΄: Champernowne constant)λŠ” μ΄ˆμ›”μˆ˜μ΄μž μ‹€μˆ˜μΈ μˆ˜ν•™ μƒμˆ˜ 쀑 ν•˜λ‚˜λ‘œ μ†Œμˆ˜μ  μ΄ν•˜ μžλ¦Ώμˆ˜μ— νŠΉμ΄ν•œ 점이 μžˆλŠ” μˆ˜μ΄λ‹€. λ°μ΄λΉ„λ“œ 가웬 챔퍼

ko.wikipedia.org

 

728x90

+ Recent posts