[プログラマーレベル1]秘密地図回答
に質問
ニオは秘密の地図を手に持って、プロドが普段私房のお金を隠している場所を教えた.しかし、この秘密地図はデジタル暗号化されており、位置を確認するために解読が必要です.幸いなことに、地図のパスワードを解読する方法が書かれたメモも見つかった.
1
に符号化し、空白部分を0
に符号化したときに得られるバイナリ値の配列である.📥 入力フォーマット
地図に入る枠線のサイズ
n
と2つの整数配列arr1
、arr2
を入力します.n
≦ 16 arr1
,arr2
は整数配列であり、長さはn
である.x
をバイナリ数に変換した場合の長さn
以下.すなわち、0≤|2 n-1を満たす.📤 出力フォーマット
元の秘密マップを復号し、
x
、'#'
からなる文字列配列に出力します.🖨️ I/O例
💡 に答える
class Solution {
public String[] solution(int n, int[] arr1, int[] arr2) {
int[] arr = new int[n];
for(int i = 0; i < n; i++)
arr[i] = arr1[i] | arr2[i];
String[] answer = new String[n];
for(int i = 0; i < n; i++) {
String result = "";
for(int j = 0; j < n; j++) {
if(arr[i] % 2 == 1)
result = "#" + result;
else
result = " " + result;
arr[i] /= 2;
}
answer[i] = result;
}
return answer;
}
}
✏️ comment
`arr[i] = arr1[i] | arr2[i];'なんで計算に通るとは思わなかったんだろう…!
Reference
この問題について([プログラマーレベル1]秘密地図回答), 我々は、より多くの情報をここで見つけました https://velog.io/@yuuuzzzin/프로그래머스-Level-1-1차-비밀지도-문제-풀이テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol