오늘부터 재활 들어갑니다..
https://school.programmers.co.kr/learn/courses/30/lessons/17681
프로그래머스
SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프
programmers.co.kr
public String[] solution(int n, int[] arr1, int[] arr2) {
String[] answer = new String[n];
String[] arr1To = new String[n];
String[] arr2To = new String[n];
for (int i = 0; i < n; i++) {
arr1To[i] = String.format("%" + n + "s", Integer.toBinaryString(arr1[i])).replace(" ", "0");
arr2To[i] = String.format("%" + n + "s", Integer.toBinaryString(arr2[i])).replace(" ", "0");
}
for (int i = 0; i < n; i++) {
answer[i] = "";
for (int j = 0; j < n; j++) {
if (arr1To[i].charAt(j) == '1' || arr2To[i].charAt(j) == '1') {
answer[i] += "#";
} else {
answer[i] += " ";
}
}
}
return answer;
}
📍포인트
1. arr1To[i] = String.format("%" + n + "s", Integer.toBinaryString(arr1[i])).replace(" ", "0"); 로 칸 수를 유지하기.
2. 배열이 처음에 null로 들어가있으니, answer[i] = "";로 초기화해주기.
📍삽질
1. toBinaryString() 를 생각하지 못하고 직접 2진수 변환 로직을 구현하다가 1시간 날림.
2. 배열이 null로 초기화되는 사실을 잊고, 그대로 진행하다가 null##### 이런 식으로 나옴.
'코딩테스트' 카테고리의 다른 글
[코딩테스트(Java)] 프로그래머스 50048 베스트앨범 (0) | 2025.03.12 |
---|---|
[코딩테스트(Java)] 프로그래머스 92334 신고 결과 받기 (1) | 2025.03.11 |
[코딩테스트(Java)] 프로그래머스 72410 신규 아이디 추천 (0) | 2025.03.09 |
[코딩테스트(Java)] 프로그래머스 42889 실패율 (0) | 2025.03.08 |
[코딩테스트(Java)] 프로그래머스 17682 다트 게임 (0) | 2025.03.07 |