PAT-A 1002. A+B for Polynomials (25)
来源:互联网 发布:js给class加样式 编辑:程序博客网 时间:2024/06/14 03:12
注意点:
保留一位小数;考虑相加为零的项;题目中没说最终结果为零的情况
#include<iostream>#include<iomanip>using namespace std;struct poly{ int ye; double yc;};int main(){ struct poly a[10], b[10], ans[20]; int k1, k2, i, k3 = 0; int t1 = 0, t2 = 0; cin >> k1; for (i = 0; i < k1; i++) cin >> a[i].ye >> a[i].yc; cin >> k2; for (i = 0; i < k2; i++) cin >> b[i].ye >> b[i].yc; while (t1 < k1 && t2 < k2) { if (a[t1].ye > b[t2].ye) { ans[k3] = a[t1]; t1++; k3++; continue; } if (a[t1].ye < b[t2].ye) { ans[k3] =b[t2]; t2++; k3++; continue; } if (a[t1].yc + b[t2].yc > 0.01 || a[t1].yc + b[t2].yc < -0.01) { ans[k3].ye = a[t1].ye; ans[k3].yc = a[t1].yc + b[t2].yc; k3++; } t1++; t2++; } for (i = t1; i < k1; i++) { ans[k3] = a[i]; k3++; } for (i = t2; i < k2; i++) { ans[k3] = b[i]; k3++; } if (k3 == 0) { cout << "0" << endl; return 0; } cout << k3; cout.setf(ios::fixed); for (i = 0; i < k3; i++) { cout << " " << ans[i].ye << " "; cout << fixed << setprecision(1) << ans[i].yc; } return 0;}
阅读全文
0 0
- 【PAT】1002. A+B for Polynomials (25)
- PAT 1002. A+B for Polynomials (25)
- [PAT]1002. A+B for Polynomials (25)
- pat 1002. A+B for Polynomials (25)
- PAT 1002. A+B for Polynomials (25)
- PAT 1002. A+B for Polynomials (25)
- PAT 1002. A+B for Polynomials (25)
- PAT 1002. A+B for Polynomials (25)
- PAT 1002. A+B for Polynomials (25)
- [PAT]1002. A+B for Polynomials(25)
- PAT 1002. A+B for Polynomials (25)
- pat 1002. A+B for Polynomials (25)
- PAT 1002. A+B for Polynomials (25)
- PAT 1002. A+B for Polynomials (25)
- PAT----1002. A+B for Polynomials (25)
- PAT 1002. A+B for Polynomials (25)
- PAT:1002. A+B for Polynomials (25)
- 【PAT】1002. A+B for Polynomials(25)
- WebService的学习笔记00
- redis安装配置
- DeepFashion︱衣物时尚元素关键点定位+时尚元素对齐技术
- Ubuntu14.04中创建SWAP交换分区
- 快速简单理解——直接插入排序
- PAT-A 1002. A+B for Polynomials (25)
- linux主机使用rdesktop连接windows进行usb重定向
- mysql的三种安装方式
- Rikka with Graph
- redis开启远程访问
- c#--wpf数据绑定binding
- DIV标签详细介绍
- StringUtils常用方法+StringUtils详细介绍
- 【机房合作】报表