Algorithms/BOJ
[Java] 10829. 이진수 변환
kyungsubbb
2021. 2. 7. 01:11
10829번: 이진수 변환
첫째 줄에 자연수 N이 주어진다. (1 ≤ N ≤ 100,000,000,000,000)
www.acmicpc.net
문제
자연수 N이 주어진다. N을 이진수로 바꿔서 출력하는 프로그램을 작성하시오.
입력
첫째 줄에 자연수 N이 주어진다. (1 ≤ N ≤ 100,000,000,000,000)
출력
N을 이진수로 바꿔서 출력한다. 이진수는 0으로 시작하면 안 된다.
import java.io.IOException;
import java.util.Scanner;
public class BOJ_10829 {
private static void printbinary(long n) {
if (n <= 1) {
System.out.print(n);
return;
}
printbinary(n / 2);
System.out.print(n % 2);
}
public static void main(String[] args) throws IOException {
Scanner sc = new Scanner(System.in);
long n = sc.nextLong();
printbinary(n);
sc.close();
}
}
재귀 문제가 많이 부족한 것 같아 재귀 파트 문제를 풀고있다.
이진수의 변환은 손쉽게 구현할 수 있었던 것 같다.
하지만 출력부분이 우선되어야하는지 아니면 재귀함수 호출이 먼저인지 고민을 꽤 해봤던 것 같다.
한번에 딱 하고 이해가 되지는 않았다.