수열 변환
시간 제한10초메모리 제한512 MB
항목이 [1, 2^k)에 속하는 길이 n 정수 수열 중 접두사 비트 OR 값이 순증가하는 수열의 개수를 구한다. n은 1e18, k는 30000까지이다.
문제
수열 에 연산 를 적용하면 수열 이 된다. 이때 이고, 는 비트 OR 연산이다.
이상 미만의 정수로 이루어진 길이 의 수열 전체에 연산 를 적용한다. 결과가 오름차순, 즉 이 되는 수열의 개수를 구하는 프로그램을 작성하시오.
입력
첫째 줄에 과 가 공백으로 구분되어 주어진다. (, )
출력
첫째 줄에 조건을 만족하는 수열의 개수를 로 나눈 나머지를 출력한다.