class Solution {
public String[] solution(int n, int[] arr1, int[] arr2) {
String[] answer = new String[n];
for (int i=0; i<n; i++){
answer[i] = "";
}
String[] str1 = new String[n];
String[] str2 = new String[n];
for (int i=0; i<n; i++){
str1[i] = Integer.toBinaryString(arr1[i]);
while(str1[i].length()<n){
str1[i] = "0" + str1[i];
}
str2[i] = Integer.toBinaryString(arr2[i]);
while(str2[i].length()<n) {
str2[i] = "0" + str2[i];
}
}
for (int i=0; i<n; i++){
for (int j=0; j<n; j++) {
if (str1[i].charAt(j)=='1' || str2[i].charAt(j)=='1')
answer[i] = answer[i] + "#";
else
answer[i] = answer[i] + " ";
}
}
return answer;
}
}
str1, str2 배열에 각각 arr1, arr2를 이진수로 변환한 String값을 넣어 줬고,
둘 중 하나라도 1이면 #가 answer배열에 추가되게 했다.
int num = 77;
String a2 = Integer.toBinaryString(num); // 10진수 -> 2진수
String a8= Integer.toOctalString(num); // 10진수 -> 8진수
String a16 = Integer.toHexString(num); // 10진수 -> 16진수