2021. 1. 4. 01:22γπ Algorithm/πͺπ» Python λ¬Έμ νμ΄
λ¬Έμ μ€λͺ
λ€μ€λ νμ νλ‘λκ° λΉμκΈμ μ¨κ²¨λλ μ₯μλ₯Ό μλ €μ€ λΉλ°μ§λλ₯Ό μμ λ£μλ€. κ·Έλ°λ° μ΄ λΉλ°μ§λλ μ«μλ‘ μνΈνλμ΄ μμ΄ μμΉλ₯Ό νμΈνκΈ° μν΄μλ μνΈλ₯Ό ν΄λ ν΄μΌ νλ€. λ€νν μ§λ μνΈλ₯Ό ν΄λ ν λ°©λ²μ μ μ΄λμ λ©λͺ¨λ ν¨κ» λ°κ²¬νλ€.
- μ§λλ ν λ³μ κΈΈμ΄κ° 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μ λ§μ‘±νλ€.
μΆλ ₯νμ
μλμ λΉλ°μ§λλ₯Ό ν΄λ νμ¬ '#', 곡백μΌλ‘ ꡬμ±λ λ¬Έμμ΄ λ°°μ΄λ‘ μΆλ ₯νλΌ.
μ μΆλ ₯ μμ
νμ΄ κ³Όμ
λ¨Όμ 2μ§λ²μΌλ‘ λ³ννλ transλΌλ ν¨μλ₯Ό λ§λ€μ΄ 리ν΄ν΄μ£Όλ μμ μ νμκ³ , κ·Έλ€μμ λμ€ νλλΌλ '1'μ΄λΌλ©΄ string μ '#'μ μλλ©΄ ' 'μ λν΄μ£Όλ νμμΌλ‘ ꡬννμλ€.
def solution(n, arr1, arr2):
answer = []
def trans(num):
temp = []
while num >= 2:
temp.append(str(num % 2))
num = num // 2
temp.append(str(num))
temp = list(reversed(temp))
nums = ''.join(temp)
nums = nums.zfill(n)
return nums
for i in range(n):
tmp1 = list(trans(arr1[i]))
tmp2 = list(trans(arr2[i]))
string = ""
for j in range(n):
if tmp1[j] == '1' or tmp2[j] == '1':
string += "#"
else:
string += " "
answer.append(string)
return answer
λΉνΈμ°μ°μλ₯Ό μ΄μ©ν νμ΄ κ³Όμ
def solution(n, arr1, arr2):
answer = []
for i,j in zip(arr1,arr2):
a12 = str(bin(i|j)[2:])
a12=a12.rjust(n,'0')
a12=a12.replace('1','#')
a12=a12.replace('0',' ')
answer.append(a12)
return answer
'π Algorithm > πͺπ» Python λ¬Έμ νμ΄' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
[Python - νλ‘κ·Έλλ¨Έμ€ Level1] μμ° (0) | 2021.01.04 |
---|---|
[Python - νλ‘κ·Έλλ¨Έμ€ Level1] λ€νΈ κ²μ (0) | 2021.01.04 |
[Python - νλ‘κ·Έλλ¨Έμ€ Level2] λ°°μ λΉμ© μ΅μν (0) | 2021.01.03 |