programmers.co.kr/learn/courses/30/lessons/17681
class Solution {
public String[] solution(int n, int[] arr1, int[] arr2) {
String[] answer = new String[n];
char[][] arr1Binaries = new char[n][n];
char[][] arr2Binaries = new char[n][n];
decryptMap(n, arr1, arr1Binaries);
decryptMap(n, arr2, arr2Binaries);
char[][] decryptedMap = new char[n][n];
for (int row_i = 0; row_i < n; row_i++){
for (int col_i = 0; col_i < n; col_i++){
if (arr1Binaries[row_i][col_i] == '1' || arr2Binaries[row_i][col_i] == '1'){
decryptedMap[row_i][col_i] = '#';
}else{
decryptedMap[row_i][col_i] = ' ';
}
}
}
for (int i = 0; i < n; i++){
answer[i] = String.valueOf(decryptedMap[i]);
}
return answer;
}
private void decryptMap(int n, int[] arr, char[][] arrBinaries) {
for (int row_i = 0; row_i < n; row_i++) {
int secretRowNum = arr[row_i];
String decryptedRow = String.format("%0" + n + 'd', Long.parseLong(Integer.toBinaryString(secretRowNum)));
for (int char_i = 0; char_i < n; char_i++) {
arrBinaries[row_i][char_i] = decryptedRow.charAt(char_i);
}
}
}
}
'Problem-solving > 프로그래머스' 카테고리의 다른 글
프로그래머스 - (2018 KAKAO BLIND RECRUITMENT) [1차]다트 게임 (Java) (0) | 2020.11.22 |
---|---|
프로그래머스 - (2019 KAKAO BLIND RECRUITMENT) 실패율 (Java) (0) | 2020.11.22 |
프로그래머스 - (2020 카카오 인턴십) 키패드 누르기 (Java) (0) | 2020.11.21 |
프로그래머스 - (2019 카카오 개발자 겨울 인턴십) 크레인 인형뽑기 게임 (Java) (0) | 2020.11.21 |
프로그래머스 - (2018 KAKAO BLIND RECRUITMENT) [3차]자동완성 (Python3) (0) | 2020.09.03 |
댓글