티스토리 뷰

 

 

코딩테스트 연습 - [1차] 비밀지도

비밀지도 네오는 평소 프로도가 비상금을 숨겨놓는 장소를 알려줄 비밀지도를 손에 넣었다. 그런데 이 비밀지도는 숫자로 암호화되어 있어 위치를 확인하기 위해서는 암호를 해독해야 한다. 다

programmers.co.kr

이 문제에 핵심은 다음과 같다.

  • 합집합 ( | )
  • 10진수(Integer)를 2진수(String)로 바꿔주는 Integer.toBinaryString

위 핵심을 사용하여 풀이하였다.

class Solution {
    public String[] solution(int n, int[] arr1, int[] arr2) {
        String[] answer = new String[n];
        for(int i = 0;i<n;i++) {
            int val = arr1[i] | arr2[i];
            String str = Integer.toBinaryString(val);
            str = str.replaceAll("1","#");
            str =str.replaceAll("0"," ");
            StringBuilder sb = new StringBuilder();
            int blankLength = n - str.length();
            for(int j = 0;j<blankLength;j++) {
                sb.append(" ");
            }
            sb.append(str);
            answer[i] = sb.toString();
        }
        return answer;
    }
}
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/11   »
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
글 보관함