XOR-ABC
시간 제한1초메모리 제한1024 MB
A, B, C가 1 이상 2^K-1 이하이고 A < B < C이며 A xor B = C를 만족하는 세 수의 조합 수를 1000003으로 나눈 나머지로 구합니다. K는 최대 10^18입니다.
문제
연산은 두 수의 이진수 표현에서 각 자릿수를 비교해, 값이 같으면 , 다르면 을 계산한다.
다음은 자리 이진수 , , 에 대한 예시이다.
와 가 모두 자리 이진수이므로, 또한 자리 이진수이다.
의 번째 비트는 와 의 번째 비트가 모두 로 같으므로 이다.
의 번째 비트는 와 의 번째 비트가 각각 , 로 다르므로 이다.
모든 자릿수에 대해 연산을 수행하면 은 위와 같이 계산된다.
자리 이진수 , , 에 대해 이고 인 쌍의 개수를 구하시오.
입력
첫째 줄에 가 주어진다. ()
출력
주어진 조건을 만족하는 쌍의 개수를 으로 나눈 나머지를 출력한다. 은 소수이다.