简单多项式运算,直接按最大存储建立数组,然后检索,注意最后输出格式
一位小数点
#include <iostream>
#include <iomanip>
using namespace std;
double a[1005];
int main(){
int n,k,x,m,count = 0;
double y;
cin>>m;
for(int i = 0; i < m; i++){
cin>>x>>y;
a[x] += y;
}
cin>>m;
for(int i = 0; i < m; i++){
cin>>x>>y;
a[x] += y;
}
for(int i = 0; i < 1001; i++){
if(a[i] != 0) count++;
}
cout<<count;
for(int i = 1001; i >= 0; i--){
if(a[i] != 0){
cout<<" "<<i<<" "<<setiosflags(ios::fixed)<<setprecision(1)<<a[i];
}
}
return 0;
}
setiosflags(ios::fixed)是用定点方式表示实数
setiosflags(ios::scientific)是用指数方式表示实数
使用setprecision(n)可控制输出百流显示浮点数的数字个数
如果度setprecision(n)与setiosflags(ios::fixed)合用,可以控制小数点右边的数字个数。
如果如果setprecision(n)与setiosnags(ios::scientific)合用,可以控制指数表示法的小数位。