537. 复数乘法

exiaohu 于 2022-02-25 发布

题目链接:537. 复数乘法

如题计算即可。先用正则表达式找到复数的实部和虚部,然后计算,再拼成结果字符串即可。

import re
from typing import Tuple


class Solution:
    def split(self, num: str) -> Tuple[int, int]:
        r, v = re.fullmatch(r'(-?\d+)\+(-?\d+)i', num).groups()
        return int(r), int(v)

    def complexNumberMultiply(self, num1: str, num2: str) -> str:
        r1, v1 = self.split(num1)
        r2, v2 = self.split(num2)

        return f'{r1 * r2 - v1 * v2}+{r1 * v2 + r2 * v1}i'