Complex Number Multiplication LeetCode solution in C++
1class Solution {2public:3pair<int, int> parse(string num) {4int i = num.find('+');5double real = stoi(num.substr(0, i));6double imaginary = stoi(num.substr(i + 1, num.size() - i - 2));7pair<int, int> res(real, imaginary);8return res;9}1011string complexNumberMultiply(string num1, string num2) {12pair<int, int> a = parse(num1), b = parse(num2);13int real_a = a.first, imag_a = a.second;14int real_b = b.first, imag_b = b.second;1516return to_string(real_a * real_b - imag_a * imag_b) + '+' +17to_string(real_a * imag_b + real_b * imag_a) + 'i';18}19};