1002. A+B for Polynomials (25)
1.直接建立1001长度的数组,分别进行存储,最后累加输出
AC代码:
//#include<string>
//#include<stack>
//#include<unordered_set>
//#include <sstream>
//#include "func.h"
//#include <list>
#include <iomanip>
#include<unordered_map>
#include<set>
#include<queue>
#include<map>
#include<vector>
#include <algorithm>
#include<stdio.h>
#include<iostream>
#include<string>
#include<memory.h>
#include<limits.h>
#include<stack>
using namespace std;
int main(void)
{
vector<float> N1(1002, 0);
vector<float> N2(1002, 0);
int n, m;
cin >> n;
for (int i = 0; i < n; i++)
{
int idx = 0;
cin >> idx;
cin >> N1[idx];
}
cin >> m;
for (int i = 0; i < m; i++)
{
int idx = 0;
cin >> idx;
cin >> N2[idx];
}
for (int i = 0; i < N1.size(); i++)
{
N1[i] = N1[i] + N2[i];
}
int sum = 0;
for (int i = 0; i < N1.size(); i++)
if (N1[i] != 0) sum++;
cout << sum;
for (int i = N1.size() - 1; i >= 0; i--)
{//高位先输出
if (N1[i] != 0)
printf(" %d %.1f",i, N1[i]);
}
return 0;
}

浙公网安备 33010602011771号