[자바JAVA]1059 : [기초-비트단위논리연산] 비트단위로 NOT 하여 출력하기(설명), Scanner로 2진수받기
💡 핵심 요약 (TL;DR)
'1059 : [기초-비트단위논리연산] 비트단위로 NOT 하여 출력하기(설명), Scanner로 2진수받기' 알고리즘 문제의 요구사항을 분석하고 최적의 자료구조와 연산 방식을 적용해 구현한 풀이다. * 2진수 처리 비교- 2진수, 8진수 16진수를 Scanner로 받으려면 String 데이터타입으로 지정해야한다.
문제 1059 : [기초-비트단위논리연산] 비트단위로 NOT 하여 출력하기(설명)
입력 된 정수를 비트단위로 참/거짓을 바꾼 후 정수로 출력해보자.
비트단위(bitwise)연산자 ~ 를 붙이면 된다.(~ : tilde, 틸드라고 읽는다.)
1 | ** 비트단위(bitwise) 연산자는, |
- 입력예시
정수 1개가 입력된다. (-2147483648 ~ +2147483647)
1 | 2 |
- 출력예시
비트 단위로1 -> 0,0 -> 1로 바꾼 후 그 값을 10진수로 출력한다.
1 | -3 |
코드
1 | import java.util.Scanner; |
배운 지식
괜히 어렵게 생각했다. 2진수를 만들어야한다고 생각해서 사용자로부터 String을 받아서 2진수로 변경 후 비트연산자 적용하여 10진수로 출력하려고 했는데 잘 되지않았다.
앞으로 2진수로 받아야한다하면 그냥 int로 받아야겠다!
다른 문제 풀이가 보고싶다면?
[자바JAVA]1059 : [기초-비트단위논리연산] 비트단위로 NOT 하여 출력하기(설명), Scanner로 2진수받기