문제를 이해하고 있다면 바로 풀이를 보면 됨
전체 코드로 바로 넘어가도 됨
마음대로 번역해서 오역이 있을 수 있음
당신은 부호가 없는 32비트 정수의 목록을 주어지게 될 것이다. 모든 비트를 뒤집고(1 -> 0, 0 -> 1), 결과를 부호가 없는 정수로 반환해라.
n = 9₁₀
9₁₀ = 1001₂이다. 우리는 32비트로 작업 중이다.
00000000000000000000000000001001₂ = 9₁₀
11111111111111111111111111110110₂ = 4294967286₁₀
4294967286을 반환해라.
flippingBits 함수를 완성해라.
flippingBits 함수는 아래와 같은 매개변수를 가지고 있다.
bit 계산은 잘 하지 않아서 구글링을 했다. 매개변수 n에 0xFFFFFFFFL을 ^연산을 하면 문제를 해결할 수 있다.
return n ^ 0xFFFFFFFFL;
public static long flippingBits(long n) {
return n ^ 0xFFFFFFFFL;
}