Input |
---|
2 1 2.4 0 3.22 2 1.5 1 0.5 |
Output |
3 2 1.5 1 2.9 0 3.2 |
Notes 作者 CHEN, Yue
模拟多项式加法,注意系数为零的项不计也不显示。
#include <iostream>#include <algorithm>#include <map>#include <vector>#include <functional>#include <string>#include <cstring>#include <queue>#include <set>#include <stack>#include <cmath>#include <cstdio>#include <sstream>#include <iomanip>using namespace std;#define IOS ios_base::sync_with_stdio(false)#define TIE std::cin.tie(0)#define MIN2(a,b) (a<b?a:b)#define MIN3(a,b) (a<b?(a<c?a:c):(b<c?b:c))#define MAX2(a,b) (a>b?a:b)#define MAX3(a,b,c) (a>b?(a>c?a:c):(b>c?b:c))typedef long long LL;typedef unsigned long long ULL;const int INF = 0x3f3f3f3f;const double PI = 4.0*atan(1.0);const double eps = 1e-6;int a, b, n;double c;int main(){ n = 0; map<int, double> m; for (int i = 0; i < 2; i++){ scanf("%d", &a); for (int j = 0; j < a; j++){ scanf("%d%lf", &b, &c); if (m.count(b)) m[b] += c; else m[b] = c; } } map<int, double>::reverse_iterator it; for (it = m.rbegin(); it != m.rend(); it++){ if (fabs(it->second) > eps) n++; } PRintf("%d", n); for (it = m.rbegin(); it != m.rend(); it++){ if (fabs(it->second) > eps) printf(" %d %.1lf", it->first, it->second); } printf("/n"); //system("pause");}新闻热点
疑难解答