public class Solution {
public String[] solution(int n, int[] arr1, int[] arr2) {
// 새로운 지도를 저장할 배열
String[] answer = new String[n];
// 두 배열을 하나씩 비교하며 새로운 지도를 만든다.
for (int i = 0; i < n; i++) {
// OR 연산을 통해 두 지도를 합치고, 이진수로 변환한다.
answer[i] = Integer.toBinaryString(arr1[i] | arr2[i]);
// 이진수를 주어진 길이에 맞게 포맷팅한다.
answer[i] = String.format("%" + n + "s", answer[i]);
// 1을 '#'으로, 0을 ' '으로 치환한다.
answer[i] = answer[i].replaceAll("1", "#");
answer[i] = answer[i].replaceAll("0", " ");
}
// 새로운 지도를 반환한다.
return answer;
}
}