PAT 1002. A+B for Polynomials C语言
2016-08-03 09:26
183 查看
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
Sample Output
3 2 1.5 1 2.9 0 3.2
Tips:double输入使用%lf
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
Tips:double输入使用%lf
#include <stdio.h> int main(void){ int n,i,max=0,k,count=0; double s,a[1001]={0}; for (int j=0;j<2;j++){ scanf("%d",&am 4000 p;n); for (i=1;i<=n;i++){ scanf("%d%lf",&k,&s); if (a[k]==0) count++; a[k]+=s; if (a[k]==0) count--; if (k>max) max=k; } } printf("%d",count); while (max>=0){ if (a[max]!=0){ printf(" %d %.1f",max,a[max]); } max--; } }
相关文章推荐
- PAT练习(2)-1002 All Roads Lead to Rome
- PAT 1002. 写出这个数 (20)
- PAT 乙级 1002
- PAT-B 1002. 写出这个数
- PAT (Basic Level) Practise (中文)1002 写出这个数(20)
- 【PAT_Basic日记】1002. 写出这个数
- PAT 乙级 1002. 写出这个数 (20) Java版
- PAT1002 写出这个数 int《=》string
- PAT-乙级-1002. 写出这个数 (20)
- PAT (Basic Level) Practise 1002
- pat1002
- PAT (Basic Level) Practise (中文)1002.写出这个数
- PAT乙级.1002. 写出这个数 (20)
- 1002. 写出这个数 (20)-PAT乙级
- PAT (Basic Level) Practise (中文)1002. 写出这个数 (20)(java实现)
- PAT考试乙级1002(C语言实现)
- PAT1002. A+B for Polynomials (25)
- PAT (Basic Level) Practise (中文)1002. 写出这个数 (20) C语言
- 【C++】浙大basic level PAT 代码1001,1002,1003
- PAT 乙等 1002 C语言