
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.math.BigInteger;
import java.util.StringTokenizer;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
// 첫 번째 줄에서 테스트 케이스의 수를 읽는다.
int T = Integer.parseInt(br.readLine());
for (int t = 0; t < T; t++) {
StringTokenizer st = new StringTokenizer(br.readLine());
String A = st.nextToken();
String B = st.nextToken();
// BigInteger 형변환 하면서 10진수로 바꿔준다.
BigInteger A_binary = new BigInteger(A, 2);
BigInteger B_binary = new BigInteger(B, 2);
BigInteger sum = A_binary.add(B_binary);
// 2진수로 변환
String sum_binary = sum.toString(2);
System.out.println(sum_binary);
}
}
}
⭐새롭게 알게 된 점
BigInteger : int는 32비트까지만 담음. 그러나 문제는 2의 81승까지 계산해야 했기에 int보다 더 큰 BigIneger라는 자료형을 사용. 해당 자료형은 한계가 없음