标签:get ora iostream ems 格式 ios 地址 precision put
题目大意:题目地址>>>>>>>>>传送门?
input:
输入共站两行,多项式A和B各站一行,且每行第一个数k代表这个多项式有k个非0项,随后输入k组数据,每组数据表示每项的指数和系数: 2 1 2.4 0 3.2 //多项式A 这里k=2,1为第一项的指数,2.4为其系数 2 2 1.5 1 0.5 //多项式B 同上
output:
3 2 1.5 1 2.9 0 3.2 //输出多项式A+B,表示规则与输入相同<指数大的在前面>
注意事项:
1.和为0的项不输出 2.每行后没有空格
S-code:
#include<iostream>
#include<cstring>
#include<iomanip> //cout输出格式控制 using namespace std; double a[1001]; int main() { int n1, n2, flag; memset(a, 0,sizeof(a)); cin >> n1; for(int i = 0; i < n1; i++) { cin >> flag; cin >> a[flag]; } cin >> n2; double x; for(int i = 0; i < n2; i++) { cin >> flag; cin >> x; if(a[flag] != 0) //减去A中存在项 n1--; a[flag] += x; if(a[flag] == 0) n1--; //减去和为0的项 } cout << n1+n2; //输出总的非0项,若多项式之和为0,这里输出一个0即可 for(int i = 1000; i >= 0; i--) { if(a[i] != 0) cout << " " << i << " " << fixed << setprecision(1)<< a[i]; //用fixed + setprecision(x),控制保留x位小数 } return 0; }
注意:
若仅后四项检测点未通过,大概率是未减去和系数为0的项(k的值),别问我为什么直到。。。。。。
标签:get ora iostream ems 格式 ios 地址 precision put
原文地址:https://www.cnblogs.com/sunrisepeak/p/9751342.html