원자 컴퓨터
시간 제한1초메모리 제한256 MB
-1, 0, 1로 이루어진 길이가 y인 수열 중에서 2의 거듭제곱 가중합이 x와 같은 경우의 수를 셉니다.
문제
한 교수가 보통 컴퓨터보다 80억 배 빠른 원자 컴퓨터를 만들었다. 이 컴퓨터는 값을 특수한 메모리에 저장하는데, 이 메모리는 한 비트가 -1, 0, 1 세 가지 상태 중 하나를 나타낸다.
비트 메모리에 저장된 비트를 앞에서부터 이라고 하면, 메모리가 나타내는 값은 다음과 같다.
각 는 -1, 0, 1 중 하나다. 예를 들어 은 를 나타낸다. 비트 수는 항상 로 고정이고, 앞쪽 비트가 0인 표현도 서로 다른 저장 방법으로 센다.
저장하려는 정수 와 메모리의 비트 수 가 주어질 때, 를 비트에 저장하는 방법의 수를 구하는 프로그램을 작성하시오.
입력
첫째 줄에 테스트 케이스의 개수 가 주어진다. ()
다음 개 줄에 각각 두 정수 와 가 주어진다. 는 메모리에 저장하려는 값이고, 는 메모리의 비트 수다. (, )
출력
개 줄을 출력한다. 번째 줄에는 를 비트에 저장하는 방법의 수를 출력한다.