1002. A+B for Polynomials
2015-10-08 21:49
148 查看
1002. A+B for Polynomials (25)
时间限制400 ms
内存限制
65536 kB
代码长度限制
16000 B
判题程序
Standard
作者
CHEN, Yue
This time, you are supposed to find A+B where A and B are two polynomials.
Input
Each input file contains one test case. Each case occupies 2 lines, and each line contains the information of a polynomial: K N1 aN1 N2 aN2 ... NK aNK, where
K is the number of nonzero terms in the polynomial, Ni and aNi (i=1, 2, ..., K) are the exponents and coefficients, respectively. It is given that 1 <= K <= 10,0 <= NK < ... < N2 < N1 <=1000.
Output
For each test case you should output the sum of A and B in one line, with the same format as the input. Notice that there must be NO extra space at the end of each line. Please be accurate to 1 decimal place.
Sample Input
2 1 2.4 0 3.2 2 2 1.5 1 0.5
Sample Output
3 2 1.5 1 2.9 0 3.2
题目内容描述的是两个多项式的加法,原则就是对应指数的系数相加即可,但是从结果看,还需要输出该多项式总共有多少项,其实实质的意思,就是两个数组的加法,所以我们选择两个double类型数组str1和str2,分别保存两组的输入,然后进行对应项相加,也就是str2[i] = str1[i] + str1[i],结果保存在str2中,其中我们需要判断str2中有多少项非0,统计个数。
#include<stdio.h> #include<string.h> using namespace std; double str1[1002], str2[1002]; int main() { freopen("E://input.txt", "r", stdin); int n, count = 0; memset(str1, 0, sizeof(str1)); memset(str2, 0, sizeof(str2)); scanf("%d", &n); for(int i = 0; i < n; i ++) { int tmp; scanf("%d", &tmp); scanf("%lf", &str1[tmp]); } scanf("%d", &n); for(int i = 0; i < n; i ++) { int tmp; scanf("%d", &tmp); scanf("%lf", &str2[tmp]); } for(int i = 0; i < 1002; i ++) { str2[i] += str1[i]; if(str2[i] != 0) count ++; } printf("%d", count); for(int i = 1001; i >= 0; i --) { if(str2[i] != 0) printf(" %d %.1f", i, str2[i]); } printf("\n"); return 0; }
相关文章推荐
- 【Linux命令与工具】系统资源查看——free、uname、dmesg以及netstat
- 【SQL】事务
- C++ 面试(1)指针
- S3C2440上移植内核之编译Linux2.6.31出现问题
- DedeCms自定义字段调用长度截取方法
- Swift 细小知识点汇集
- 《TCP/IP详解 卷一:协议》读书笔记--IP选路
- Android 开发第七弹:简易时钟(秒表)
- 软件性能
- linux 初学者之进程控制
- Spring验证、数据绑定和类型转换
- 我的第一篇博客
- 1008. Elevator
- 用jquery写的”抽奖“小游戏的转盘。顺带选人
- (转)Render Path
- [LeetCode-234] Palindrome Linked List(回文链表、链表中间节点查找)
- Java 和Java虚拟机的关系
- MYSQL -- case when用法
- 1011. World Cup Betting
- iOS判断手机是否有网的方法