1009. Product of Polynomials (25)

来源:互联网 发布:onekeytools mac 编辑:程序博客网 时间:2024/06/18 02:38
#define  _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <algorithm>
#include <iostream>
#include <math.h>
#include <string>
#include <string.h>
#include <vector>  
using namespace std;
struct Number
{
int N;
float aN;
Number()
{
N = 0; aN = 0;
}
};
int main()
{
int num1 = 0;
cin >> num1;
Number *A = new Number[num1];
for (int i = 0; i < num1; i++)
{
cin >> A[i].N >> A[i].aN;
}
int num2;
cin >> num2;
Number *B = new Number[num2];
for (int i = 0; i < num2; i++)
{
cin >> B[i].N >> B[i].aN;
}
float *C = new float[A[0].N + B[0].N + 1];
for (int i = 0; i < A[0].N + B[0].N + 1; i++)
C[i] = 0;
for (int i = 0; i < num1; i++)
{
for (int j = 0; j < num2; j++)
{
C[A[i].N + B[j].N] += A[i].aN * B[j].aN;
}
}
int iCount = 0;
for (int i = 0; i < A[0].N + B[0].N+1; i++)
{
if (C[i] != 0)
{
iCount++;
}
}
cout << iCount;
for (int i = A[0].N + B[0].N; i >=0; i--)
{
if (C[i] != 0)
{
printf(" %d %.1f",i,C[i]); 
}
}
return 0;
}
0 0