μ΄μ§ μ€λΉλ₯Ό νλ©΄μ μ½λ©ν μ€νΈ μ°μ΅μ νκ³ μλλ°, νλ‘κ·Έλλ¨Έμ€λΌλ μ¬μ΄νΈμ λ¬Έμ λ₯Ό νμ΄λ³΄κΈ°λ‘ νλ€. κ·Έ μ€ 2018 KAKAO BLIND RECRUITMENTμ [1μ°¨] λΉλ°μ§λλΌλ λ¬Έμ νμ΄
λ¬Έμ
λ¬Έμ μ΄μ΄λ³΄κΈ°
λ€μ€λ νμ νλ‘λκ° λΉμκΈμ μ¨κ²¨λλ μ₯μλ₯Ό μλ €μ€ λΉλ°μ§λλ₯Ό μμ λ£μλ€. κ·Έλ°λ° μ΄ λΉλ°μ§λλ μ«μλ‘ μνΈνλμ΄ μμ΄ μμΉλ₯Ό νμΈνκΈ° μν΄μλ μνΈλ₯Ό ν΄λ ν΄μΌ νλ€. λ€νν μ§λ μνΈλ₯Ό ν΄λ ν λ°©λ²μ μ μ΄λμ λ©λͺ¨λ ν¨κ» λ°κ²¬νλ€.
- μ§λλ ν λ³μ κΈΈμ΄κ° nμΈ μ μ¬κ°ν λ°°μ΄ ννλ‘, κ° μΉΈμ 곡백(β ) λλλ²½(#β) λ μ’ λ₯λ‘ μ΄λ£¨μ΄μ Έ μλ€.
- μ 체 μ§λλ λ μ₯μ μ§λλ₯Ό κ²Ήμ³μ μ»μ μ μλ€. κ°κ° μ§λ 1κ³Ό μ§λ 2λΌκ³ νμ. μ§λ 1 λλ μ§λ 2 μ€ μ΄λ νλλΌλ λ²½μΈ λΆλΆμ μ 체 μ§λμμλ λ²½μ΄λ€. μ§λ 1κ³Ό μ§λ 2μμ λͺ¨λ κ³΅λ°±μΈ λΆλΆμ μ 체 μ§λμμλ 곡백μ΄λ€.
- μ§λ 1κ³Ό μ§λ 2λ κ°κ° μ μ λ°°μ΄λ‘ μνΈνλμ΄ μλ€.
- μνΈνλ λ°°μ΄μ μ§λμ κ° κ°λ‘μ€μμ λ²½ λΆλΆμ 1, 곡백 λΆλΆμ 0μΌλ‘ λΆνΈννμ λ μ»μ΄μ§λ μ΄μ§μμ ν΄λΉνλ κ°μ λ°°μ΄μ΄λ€.

λ€μ€κ° νλ‘λμ λΉμκΈμ μμ λ£μ μ μλλ‘, λΉλ°μ§λμ μνΈλ₯Ό ν΄λ νλ μμ μ λμμ€ νλ‘κ·Έλ¨μ μμ±νλΌ.
μ λ ₯ νμ
μ
λ ₯μΌλ‘ μ§λμ ν λ³ ν¬κΈ° n κ³Ό 2κ°μ μ μ λ°°μ΄ arr1, arr2κ° λ€μ΄μ¨λ€.
- 1 β¦
nβ¦ 16 arr1,arr2λ κΈΈμ΄nμΈ μ μ λ°°μ΄λ‘ μ£Όμ΄μ§λ€.- μ μ λ°°μ΄μ κ° μμ
xλ₯Ό μ΄μ§μλ‘ λ³ννμ λμ κΈΈμ΄λnμ΄νμ΄λ€. μ¦, 0 β¦xβ¦ 2n - 1μ λ§μ‘±νλ€.
μΆλ ₯ νμ
μλμ λΉλ°μ§λλ₯Ό ν΄λ
νμ¬ '#', 곡백μΌλ‘ ꡬμ±λ λ¬Έμμ΄ λ°°μ΄λ‘ μΆλ ₯νλΌ.
μ μΆλ ₯ μμ
| λ§€κ°λ³μ | κ° |
|---|---|
| n | 5 |
| arr1 | [9, 20, 28, 18, 11] |
| arr2 | [30, 1, 21, 17, 28] |
| μΆλ ₯ | [β#####β,β# # #β, β### #β, β# ##β, β#####β] |
| λ§€κ°λ³μ | κ° |
|---|---|
| n | 6 |
| arr1 | [46, 33, 33 ,22, 31, 50] |
| arr2 | [27 ,56, 19, 14, 14, 10] |
| μΆλ ₯ | [β######β, β### #β, β## ##β, β #### β, β #####β, β### # β] |
νμ΄
μμ λ¬Έμ λ₯Ό λ³΄κ³ μ΄λ―Έμ§μλ μ£Όμ΄μ§λ― 2μ§λ²μ μ΄μ©ν νμ΄λΌλ κ²μ μκ²λκ³ |λΌλ λΉνΈμ°μ°μ μ΄μ©ν΄ νλ €κ³ νλ€. κ·Όλ° νμμ λΉνΈμ°μ°μ΄λΌλ κ²μ λ€μ΄λ§ 보μμ§ μ€λ¬΄μμλ μΈ μΌμ΄ μ μλλ°, μ΄λ² κΈ°νμ μ λλ‘ μκ² λμλ€. κΈ°μ‘΄μ 10μ§λ² μλ₯Ό κ·Έλ₯ |λ₯Ό μ΄μ©ν΄ λΉνΈμ°μ°νλ©΄ λλ€.
첫 μμ μ arr1κ³Ό arr2μ 0λ² μΈλ±μ€λ₯Ό κΈ°μ€μΌλ‘ λΉνΈμ°μ°μ ν΄λ³΄λ©΄,
// javascript
9 |
30(
// 31
31,
).toString(2); // 11111
μμ κ°μ κ²°κ³Όλ₯Ό μ»μ μ μλ€ μ΄λ₯Ό μ΄μ©νλ©΄ λλ€.
// javascript
function solution(n, arr1, arr2) {
var answer = arr1.map((item, index) => {
var bitOr = item | arr2[index];
var binary = bitOr.toString(2);
return binary.replace(/1/g, "#").replace(/0/g, " ");
});
return answer;
}
μμ κ°μ΄ νλ©΄ μμ 1μ ν΅κ³Όμ΄λ μμ 2μμ ν΅κ³Όνμ§ λͺ»νλ€. μ΄μ λ μ«μμ°μ°μ νλ€λ³΄λ μμ리μμ 0μ΄ μ€κ²λλ©΄ κ·Έ μλ μ£Όμ΄μ§ nκ³Ό μλ¦Ώμκ° μλ§κ² λμ λ¬Έμμ΄μ΄ μλ¦Ώμμ λ§κ² μΉνλμ§ μλ λ¬Έμ μλ€. SQLμ LPADμ κ°μ κΈ°λ₯μ νλ λ λ£μ΄μ€ λ€ ν΅κ³Όν μ μμλ€.
μ΅μ’
// javascript
function solution(n, arr1, arr2) {
var answer = arr1.map((item, index) => {
var bitOr = item | arr2[index];
var binary = bitOr.toString(2);
if (binary.length < n) {
binary = "0".repeat(n - binary.length) + binary;
}
return binary.replace(/1/g, "#").replace(/0/g, " ");
});
return answer;
}