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
- 그래프
- DynamicProgramming
- 이진트리
- 포스트오더
- 1707
- 인오더
- 바인딩
- 완전이진트리
- BFS
- JAVA_HOME
- 알고리즘
- 프로그래머스
- 포화이진트리
- 동적계획법
- 전공자따라잡기
- 웹개발
- 자바
- dfs
- 11724
- Bottom Up
- 백준
- 순회
- 9093
- 연결요소
- 링킹
- n진법게임
- 이분그래프
- 피보나치
- Java
- 도커
Archives
- Today
- Total
물음표 살인마
프로그래머스 N진수 게임으로 알아보는 자바 진법 변환 본문
자바로 진법 변환 하는 법
1. 10진수 -> n진수
Integer.toString(int i, int radix) 사용
첫번째 파라미터에 변환할 숫자, 두번째 파라미터에 변환할 진법을 넣으면 된다.
2진수, 8진수, 16진수의 경우 아래 함수도 사용 가능.
Integer.toBinaryString(int i)
Integer.toOctalString(int i)
Integer.toHexString(int i)
//변환할 숫자
int num = 22;
for (int i = 2; i <= 10; i++) {
System.out.println(i + "진법: " + Integer.toString(num, i));
}
출력 결과
2. n진수 -> 10진수
Integer.parseInt(String s, int radix) 사용
//변환할 숫자
int num = 22;
for (int i = 2; i <= 10; i++) {
String str = Integer.toString(num, i);
System.out.println(i + "진법: " + str);
System.out.println("10진수로 재변환: " + Integer.parseInt(str, i));
}
출력 결과
프로그래머스 N진수 게임 문제 풀이
https://school.programmers.co.kr/learn/courses/30/lessons/17687
static String solution(int n, int t, int m, int p) {
int num = 0;
String str = "0";
while (true) {
str += Integer.toString(++num, n).toUpperCase();
if (str.length() >= m*t) break;
}
String answer = "";
for (int i = 0; i < t; i++) {
answer += str.charAt(i*m + p - 1);
}
return answer;
}
'개발지식 > Algorithm' 카테고리의 다른 글
트리 자료구조 이해하기 (0) | 2023.01.31 |
---|---|
[백준1707] 문제를 통해 이분 그래프 이해하기 (0) | 2023.01.10 |
[백준11724] 연결 요소 - Connected Component란? (0) | 2023.01.10 |
[백준1260] DFS와 BFS 문제를 통해 그래프 탐색 이해하기 (0) | 2023.01.10 |
[백준13023] ABCDE - 그래프 표현 연습 (0) | 2023.01.07 |
Comments