반응형
BOJ2089.java 생성 - -2진법수로 변환하기
자바에서 음수홀수를 -2로 나누면 나머지가 -1이 나오므로, 예외처리 필요.
나머지가 -1일 때, 몫을 1더하고 나머지를 1로 바꾸어준다.
import java.util.Scanner;
import java.util.Stack;
public class BOJ2089 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int num=sc.nextInt();
Stack<Integer> st=new Stack<>();
if(num==0){
System.out.println("0");
return;
}
while(num!=0) {
int r = num % -2;
if (r == -1) {
num =(num/-2)+ 1;
r = 1;
st.push(r);
}
else{
st.push(r);
num /= -2;
}
}
while(!st.empty()){
System.out.print(st.pop());
}
System.out.println();
}
}
반응형
'Coding Test(Algorithms)' 카테고리의 다른 글
[JAVA] 백준 수학 연습문제 - BOJ 1212 (0) | 2021.07.13 |
---|---|
[JAVA] 백준 수학 연습문제 - BOJ 2004 (0) | 2021.07.12 |
[JAVA] 백준 수학 연습문제 - BOJ 10787 (0) | 2021.07.10 |
[JAVA] 백준 수학 연습문제 - BOJ 17103 (0) | 2021.07.09 |
[JAVA] 수학 연습문제 - 백준 6588 (0) | 2021.07.08 |