XOR 쌍
면접 대비시간 제한1초메모리 제한1024 MB
A, B, A⊕B가 1 이상 N 이하이고 A와 B가 각각 A⊕B 이하이며 A⊕B가 집합 S에 없는 순서쌍 (A, B)의 개수를 구합니다.
문제
XOR은 대응하는 입력 비트가 서로 다를 때에만 결과 비트를 1로 만드는 비트 연산자이다. 즉 한쪽은 1이고 다른 쪽은 0인 경우이다. XOR 연산자는 보통 기호 로 쓰며, 대부분의 프로그래밍 언어에서는 ^(캐럿) 문자로 쓴다. 예를 들어 이다.
10 => 1010
6 => 0110
----- ⊕
1100 => 12
이 문제에서는 정수 과 정수 집합 이 주어진다. 을 만족하고 인 순서쌍 의 개수를 세어라.
예를 들어 이고 이라고 하자. 조건을 만족하는 쌍은 6개이다.
- →
- →
- →
- →
- →
- →
는 조건을 만족하지 않는다. 이고 이기 때문이다. 도 를 어기므로 조건을 만족하지 않는다.
입력
첫 줄에 정수 과 이 주어진다(, ). 은 주어진 상한이고, 은 집합 의 크기이다. 다음 줄에는 집합의 원소인 정수 가 개 주어진다().
출력
을 만족하고 인 쌍의 개수를 한 줄에 출력한다.