2089

    BOJ 2089 -2진수 [Java]

    BOJ 2089 -2진수 1. 문제 링크 https://www.acmicpc.net/problem/2089 2. 문제 해설 -2진수도 2진수와 같이 결국 1과 0으로만 표현해야한다. 10진수를 2진수로 바꿔줄 때와 비슷하게 10진수를 -2로 나누어주며 과정이 진행된다. -2로 나누어주면 나머지가 0 혹은 -1이 나오는데 0의 경우는 2진수와 동일하게 처리가 가능하지만, -1의 경우는 다른 방식이 필요하다. 나머지가 -1인 경우를 어떻게 처리하는지 예시를 들어보겠다. 7을 -2로 나누는 경우를 생각해보자. 7 / (-2) = (-2) x (3) - 1 이다. 이것을 다르게 표현하면, 7 / (-2) = (-2) x (4) + 1 이다. 즉, 나머지가 -1인 경우에는 나머지를 1로 바꿔주고 몫을 1 더해주면..