[10726. 이진수 표현]

문제


마지막 N개의 비트가 모두 1인지 판단하는 문제이다. N개의 11…1 비트를 생성 후 비트 연산자를 통해서 간단하게 확인할 수 있다.

  • Num 111 = NUM;
  • Num ^ 111 = 111;

실수


코드


import java.util.Scanner;
import java.io.FileInputStream;

class Solution
{
	public static void main(String args[]) throws Exception {

        Scanner sc = new Scanner(System.in);
        int T;
        T = sc.nextInt();
        int N, M;
        for (int test_case = 1; test_case <= T; test_case++) {

            /////////////////////////////////////////////////////////////////////////////////////////////
            N = sc.nextInt();
            M = sc.nextInt();
            int a = (int) (Math.pow(2, N) - 1);
            if ((M | a) == M) {
                System.out.println("#" + test_case + " ON");
            } else {
                System.out.println("#" + test_case + " OFF");
            }

            /////////////////////////////////////////////////////////////////////////////////////////////

        }
    }
}

업데이트:

댓글남기기