N^2개 순서쌍 각각에 대해 Ai와 Bj의 비트 AND의 합을 1999로 나눈 나머지와, 모든 Ai+Bj 값의 비트 AND를 구한다.
길이 NNN인 자연수 수열 A1,A2,…,ANA_1, A_2, \dots, A_NA1,A2,…,AN과 B1,B2,…,BNB_1, B_2, \dots, B_NB1,B2,…,BN이 주어진다. 1≤i≤N1 \le i \le N1≤i≤N, 1≤j≤N1 \le j \le N1≤j≤N인 모든 순서쌍 (i,j)(i, j)(i,j)마다 다음 두 값을 구하라.
&\mathbin{\&}&는 비트 단위 논리곱을 뜻한다. 정의는 힌트 절에 있다.
첫째 줄에 수열 길이 NNN (1≤N≤1061 \le N \le 10^61≤N≤106)이 주어진다. 둘째 줄에 수열 AAA의 NNN개 수가 공백으로 구분되어 주어지고 셋째 줄에 수열 BBB의 NNN개 수가 공백으로 구분되어 주어진다. AAA와 BBB의 모든 수는 111 이상 2282^{28}228 이하의 자연수이다.
첫째 줄에 위에서 설명한 두 값을 공백으로 구분하여 순서대로 출력한다.
비트 단위 논리곱은 두 이진수 값의 각 자릿수에 적용되는 연산이다. 먼저 두 피연산자를 이진수로 나타낸 뒤 두 수 모두 해당 자릿수가 111일 때만 111로 정하고 그 외에는 000으로 정한다.
하나의 경우로 13&7=513 \mathbin{\&} 7 = 513&7=5이다. 131313은 이진수로 110121101_211012이고 777은 이진수로 1112111_21112이다. 자릿수를 맞추면 110121101_211012와 011120111_201112이며 각 자릿수의 논리곱은 010120101_201012로 십진수 555와 같다.