프로그래머스 - [1차]비밀지도

Jongleee·2022년 7월 21일
1

알고리즘

목록 보기
35/39
import java.util.Arrays;

class Solution {
    public String[] solution(int n, int[] arr1, int[] arr2) {
        String[] answer = new String[n];
        Arrays.fill(answer,"");
        String[] temp1 = new String[n];
        String[] temp2 = new String[n];
        for (int i = 0; i < n; i++) {
            String tempVal = Integer.toString(arr1[i], 2);
            int size = tempVal.length();
            while (size < n) {
                tempVal = Integer.toString(0) + tempVal;
                size = tempVal.length();
            }
            temp1[i] = tempVal;
        }

        for (int i = 0; i < n; i++) {
            String tempVal = Integer.toString(arr2[i], 2);
            int size = tempVal.length();
            while (size < n) {
                tempVal = Integer.toString(0)  + tempVal;
                size = tempVal.length();
            }
            temp2[i] = tempVal;
        }
        for (int i = 0; i < n; i++) {
            for (int j = 0; j < n; j++) {
                if (temp1[i].charAt(j)=='1' ||temp2[i].charAt(j)=='1' ) answer[i]+="#";
                else answer[i]+=" ";
            }
        }

        return answer;
    }
}

비트연산 쓰면 쉽지만 그건 재미없으니 각각 구해봄

0개의 댓글