TIL41 | CodeKata 복소수 계산, 리스트 뒤집기

2021. 11. 2. 09:12언어/Python

반응형

CodeKata Week 3

 

문제 1

두 개의 input에는 복소수(complex number)가 string 으로 주어집니다. 복소수란 a+bi 의 형태로, 실수와 허수로 이루어진 수입니다.

input으로 받은 두 수를 곱해서 반환해주세요. 반환하는 표현도 복소수 형태의 string 이어야 합니다.

복소수 정의에 의하면 (i^2)는 -1 이므로 (i^2) 일때는 -1로 계산해주세요.

  • 제곱 표현이 안 되어 i의 2제곱을 (i^2)라고 표현했습니다.

input

"1+1i", "1+1i"  
"1+-1i", "1+-1i"
"1+3i", "1+-2i" 

output

 "0+2i"
 "0+-2i"
 "7+1i"

 

나의 풀이

def complex_number_multiply(a, b):
  a1 = int(a.split('+')[0])
  b1 = int(b.split('+')[0])

  a2 = int(a.split('+')[1].replace('i', ''))
  b2 = int(b.split('+')[1].replace('i', ''))
  return f'{(a1 * b1) + (a2 * b2)*(-1)}+{(a1 * b2) + (a2 * b1)}i' 

 

문제 2

문자로 구성된 배열을 input으로 전달하면, 문자를 뒤집어서 return 해주세요.

  • 새로운 배열을 선언하면 안 됩니다.
  • 인자로 받은 배열을 수정해서 만들어주세요.

input

["h","e","l","l","o"]
["H","a","n","n","a","h"]

output

["o","l","l","e","h"]
["h","a","n","n","a","H"]

 

나의 풀이

def reverse_string(s):
  return s[::-1]
반응형