만드는 중입니다

아직 만드는 중이라 바뀔 수 있습니다

비트 자동총

면접 대비

시간 제한2초메모리 제한1024 MB

요약
발사된 비트 수 n과 관측된 피해량 a가 주어질 때, 비트 하나의 판정을 잘못 읽었을 경우 가능한 최소 및 최대 실제 피해량을 구합니다.
난이도

쉬움10점 중 3점

유형
비트 연산, 수학
정답자
아직 제출이 없습니다

문제

랄프가 새 무기인 비트 자동총을 발견했다. 이 총은 비트를 연속으로 발사한다. 처음 발사된 비트는 표적에 1의 피해를 주고, 그 뒤의 비트는 직전 비트의 두 배 피해를 준다.

사이버 벌레 떼에게 공격을 받을 때 랄프는 어떤 비트가 표적에 맞았고 어떤 비트가 빗나갔는지 확인한다. 오랜 노동으로 시력이 크게 나빠져서, 비트 하나의 궤적을 잘못 인식할 수 있다. 그래서 실제 피해와 랄프가 본 피해는 다를 수 있다. 발사된 비트 수와 관측된 피해가 주어질 때, 사이버 벌레가 실제로 입었을 수 있는 최소 피해와 최대 피해를 구하라.

입력

첫 줄에 두 정수 nn과 aa가 주어진다. nn은 발사된 비트 수이고, aa는 관측된 피해이다 (1≤n≤631 \le n \le 63, 0≤a≤2n−10 \le a \le 2^{n}-1).

출력

랄프가 발사 결과를 최대 한 비트에서만 잘못 인식했다고 가정할 때, 가능한 실제 피해의 최소값과 최대값을 출력한다. 두 수를 공백으로 구분한다. 0≤amin≤amax≤2n−10 \le a_{min} \le a_{max} \le 2^n-1.

예제2

  1. 예제 1

    입력
    3 5
    
    예상 출력
    1 7
    
  2. 예제 2

    입력
    5 0
    
    예상 출력
    0 16