본문 바로가기

Algorithm(Javascript)

알고리즘 문제 10

 

const complexNumberMultiply = (a, b) => {
  let realNum1 = Number(a.split('+')[0])
  let fakeNum1 = Number(a.split('+')[1].split('i')[0])
  let realNum2 = Number(b.split('+')[0])
  let fakeNum2 = Number(b.split('+')[1].split('i')[0])
  let answerRealNum = realNum1*realNum2 - fakeNum1*fakeNum2
  let answerFakeNum = realNum1*fakeNum2 + realNum2*fakeNum1
  return String(answerRealNum) + '+' + String(answerFakeNum) + 'i'

}

 

이 문제는 split메소드를 잘 사용해야된다. 허수와 실수 부분은 항상 뒤에 있는 +기호로 나누어지기때문이다.

 

split사용방법

 

그래서 실수부분은 '+'부분으로 쪼개서 반환된 배열중 0번 인덱스를 할당해주고 허수부분은 1번인덱스를 할당해준다.

그렇게 실수 허수 부분을 다 나누고나서 문자열로 다시 합쳐줘서 반환을 해준다.

 

 

'Algorithm(Javascript)' 카테고리의 다른 글

알고리즘 문제 12  (0) 2021.11.04
알고리즘 문제 11  (0) 2021.11.03
알고리즘 문제 9  (0) 2021.10.28
알고리즘 문제 8  (0) 2021.10.27
알고리즘 문제 7  (0) 2021.10.26