λ κ°μ inputμλ 볡μμ(complex number)κ° string μΌλ‘ μ£Όμ΄μ§λλ€.
ππ» 볡μμ : a+bi μ ννλ‘, μ€μμ νμλ‘ μ΄λ£¨μ΄μ§ μ
- inputμΌλ‘ λ°μ λ μλ₯Ό κ³±ν΄μ λ°νν΄μ£ΌμΈμ.
: λ°ννλ ννλ 볡μμ ννμ string μ΄μ΄μΌ ν©λλ€.- 볡μμ μ μμ μνλ©΄ (i^2)λ -1 μ΄λ―λ‘ (i^2) μΌλλ -1λ‘ κ³μ°ν΄μ£ΌμΈμ.
: μ κ³± ννμ΄ μ λμ΄ iμ 2μ κ³±μ (i^2)λΌκ³ νννμ΅λλ€.
- κ°μ
inputμ νμ a+bi ννμ λλ€.
outputλ a+bi ννλ‘ λμμΌ ν©λλ€.
μμ 1:
Input: "1+1i", "1+1i" Output: "0+2i" μ€λͺ : (1 + i) * (1 + i) = 1 + i + i + i^2 = 2i 2iλ₯Ό 볡μμ ννλ‘ λ°κΎΈλ©΄ 0+2i.
μμ 2:
Input: "1+-1i", "1+-1i" Output: "0+-2i" μ€λͺ : (1 - i) * (1 - i) = 1 - i - i + i^2 = -2i, -2iλ₯Ό 볡μμ ννλ‘ λ°κΎΈλ©΄ 0+-2i.
μμ 3:
Input: "1+3i", "1+-2i" Output: "7+1i" μ€λͺ : (1 + 3i) * (1 - 2i) = 1 - 2i + 3i -6(i^2) = 1 + i + 6, 7+iλ₯Ό 볡μμ ννλ‘ λ°κΎΈλ©΄ 7+1i.
def complexNumberMultiply(a, b):
"""
:type a: str
:type b: str
:rtype: str
"""
firstArr = a[:-1].split('+')
a1 = int(firstArr[0])
a2 = int(firstArr[1])
secondArr = b[:-1].split('+')
b1 = int(secondArr[0])
b2 = int(secondArr[1])
return f'{a1 * b1 - a2 * b2}+{a1 * b2 + a2 * b1}i'
# λ μ€μΈ λ²μ
def complexNumberMultiply2(a, b):
"""
:type a: str
:type b: str
:rtype: str
"""
a1, a2 = map(int, a[:-1].split('+'))
b1, b2 = map(int, b[:-1].split('+'))
return '%d+%di' % (a1 * b1 - a2 * b2, a1 * b2 + a2 * b1)
μ€λλ λ κ·Έλ λ―μ΄, λ΄κ° λͺ¨λΈ μ루μ
μ μ΄ν΄νμ§ λͺ»νλ건 νμ΄μ¬μ λ΄μ₯ν¨μμ λν μ΄ν΄κ° λΆμ‘±ν΄μ!!!
νμ΄μ¬ λ΄μ₯ν¨μ ππ» νμ΄μ¬μ λͺ¨λ λ΄μ₯ν¨μλ€μ΄ μ 리λμ΄μλ€. μμ£Ό νμΈνκ³ μ΅ν κ²!
map(f, iterable)μ ν¨μ(f)μ λ°λ³΅ κ°λ₯ν(iterable) μλ£νμ μ
λ ₯μΌλ‘ λ°λλ€.
mapμ μ
λ ₯λ°μ μλ£νμ κ° μμλ₯Ό ν¨μ fκ° μνν κ²°κ³Όλ₯Ό λ¬Άμ΄μ λλ €μ£Όλ ν¨μμ΄λ€.
첫λ²μ§Έ μμ.
two_times ν¨μλ 리μ€νΈ μμλ₯Ό μ
λ ₯λ°μ κ° μμμ 2λ₯Ό κ³±ν κ²°κ³Όκ°μ λλ €μ€λ€κ³ κ°μ νμ.
map( )
ν¨μλ₯Ό μ¬μ©νμ§ μμ μμ λ λ€μκ³Ό κ°λ€. ππ»
# two_times.py
def two_times(numberList):
result = [ ]
for number in numberList:
result.append(number*2)
return result
result = two_times([1, 2, 3, 4])
print(result)
κ²°κ³Όκ° : [2, 4, 6, 8]
map( )
ν¨μλ₯Ό μ¬μ©ν μμ λ ππ»
def two_times(x):
return x*2
list(map(two_times, [1, 2, 3, 4]))
κ²°κ³Όκ° : [2, 4, 6, 8]
리μ€νΈμ 첫 λ²μ§Έ μμμΈ 1μ΄ two_times ν¨μμ μ
λ ₯κ°μΌλ‘ λ€μ΄κ°κ³ 1 2μ κ³Όμ μ κ±°μ³μ 2κ° λλ€.
λ€μμΌλ‘ 리μ€νΈμ λ λ²μ§Έ μμμΈ 2κ° 2 2 μ κ³Όμ μ κ±°μ³ 4κ° λλ€.
λ°λΌμ κ²°κ΄κ° 리μ€νΈλ μ΄μ [2, 4]κ° λλ€. μ΄ 4κ°μ μμκ°μ΄ λͺ¨λ μνλλ©΄ λ§μ§λ§μΌλ‘ [2, 4, 6, 8]μ λλ €μ€λ€
(mapμ κ²°κ³Όλ₯Ό 보μ¬μ£ΌκΈ° μν΄ listν¨μλ₯Ό μ¬μ©ν΄μ μΆλ ₯ν¨)
μ΄λ lambdaλ₯Ό μ¬μ©νλ©΄ λ€μκ³½ κ°μ΄ κ°λ΅νκ² ννν μ μλ€. ππ»
list(map(lambda a: a*2, [1, 2, 3, 4]))