JXNVCE ALGO-LOG YouJin Jung

GFG-MULTIPLY-TWO-POLYNOMIALS

#include <iostream>
using namespace std;
 
int *multiply(int A[], int B[], int m, int n) {
   int *prod = new int[m+n-1];
   for (int i = 0; i<m+n-1; i++)
     prod[i] = 0;
     for (int i=0; i<m; i++) {
     for (int j=0; j<n; j++)
         prod[i+j] += A[i]*B[j];
   }
 
   return prod;
}
 
void printPoly(int poly[], int n) {
    for (int i=0; i<n; i++) {
       cout << poly[i];
       if (i != 0)
        cout << "x^" << i ;
       if (i != n-1)
       cout << " + ";
    }
}
 
int main() {
    int A[] = {5, 0, 10, 6};
    int B[] = {1, 2, 4};
    int m = sizeof(A)/sizeof(A[0]);
    int n = sizeof(B)/sizeof(B[0]);
 
    cout << "First polynomial is n";
    printPoly(A, m);
    cout << "nSecond polynomial is n";
    printPoly(B, n);
 
    int *prod = multiply(A, B, m, n);
 
    cout << "nProduct polynomial is n";
    printPoly(prod, m+n-1);
 
    return 0;
}