[code] 1002 A+B for Polynomials DAY002
程序员文章站
2024-03-14 20:24:17
...
题目 甲级1002
题意
多项式A,B相加,输出格式需注意指数从大到小,以及空格控制。
思路
这里我开始项的有点多了,我还在想 ${2^2} + 4
会不会计算,纠结了半天去看了别人的题解,发现不用,就是简单的对应指数相加。这里利用到了开数组,下标与指数对应的特性。因为指数最大是1000,所以这里我就申请了大小为1001的数组。
Code in C++
#include <iostream>
double p[1001] = {0.0};
int main()
{
int k, n;
double a;
// first num
std::cin >> k;
for (int i = 0; i < k; ++i) {
std::cin >> n >> a;
p[n] += a;
}
// second num
std::cin >> k;
for (int i = 0; i < k; ++i) {
std::cin >> n >> a;
p[n] += a;
}
int count = 0;
for (int i = 0; i < 1001; ++i) {
if (p[i] != 0)
++count;
}
std::cout << count;
for(int i = 1000; i >=0 ; --i) {
if (p[i] != 0) {
printf(" %d %.1f", i, p[i]);
}
}
}
小结
- 不要过度解读题目。
- 学会利用数组下标的含义。
知识点:数组的利用
上一篇: Linux 安装 JDK1.8
推荐阅读
-
[code] 1002 A+B for Polynomials DAY002
-
1002 A+B for Polynomials (25 point(s))
-
【PAT】A1002 A+B for Polynomials
-
【PAT甲级】【1002】 A+B for Polynomials (25分)
-
PTA 1002 A+B for Polynomials
-
PAT甲级——1002. A+B for Polynomials (25)(C++)
-
1002. A+B for Polynomials(25)—PAT 甲级
-
【PAT】A1002 A+B for Polynomials
-
PAT甲级——1002. A+B for Polynomials (25)(C++)
-
1002 A+B for Polynomials (25 point(s))