Given two non-negative integers num1 and num2 represented as strings, return the product of num1 and num2, also represented as a string. Note: You must not use any built-in BigInteger library or convert the inputs to integer directly.
Example 1
Input: num1 = 2, num2 = 3
Output: 6
Explanation: "2" × "3" is a single-digit product: 2 × 3 = 6, so the result is "6".
Example 2
Input: num1 = 123, num2 = 456
Output: 56088
Explanation: 123 × 456 = 123 × 400 + 123 × 50 + 123 × 6 = 49200 + 6150 + 738 = 56088.
Example 3
Input: num1 = 0, num2 = 52
Output: 0
Explanation: Anything multiplied by 0 is 0, so the result is "0" (not "00").
The product of digit i of num1 and digit j of num2 lands in result positions i+j (carry) and i+j+1 (ones). Accumulate all digit-pair products into a result array, then read it off.
Run checks all cases above. Submit evaluates all test cases.