0
点赞
收藏
分享

微信扫一扫

PAT_甲级_1002 A+B for Polynomials 多项式合并(C++)


目录

​​1,题目描述​​

​​2,思路​​

​​3,代码【C++】​​

1,题目描述

PAT_甲级_1002 A+B for Polynomials 多项式合并(C++)_数据

2,思路

由于题目中明确指数的范围是0-1000,所以想到用大小为1001的数组来存储系数,下标表示指数;

签到题。。。

 

3,代码【C++】

#include<iostream>
#include<stdio.h>
#include<stdlib.h>
#include<math.h>
#include<string.h>
#include<algorithm>
#include<map>
#include<vector>
#include<queue>
using namespace std;


int main(){
//#ifdef ONLINE_JUDGE
//#else
// freopen("1.txt", "r", stdin);
//#endif

int num, exp; //exp指数 coe系数
float coe;
float input[1001] = {0}; //0次幂到1000次幂 共1001个数
int k = 0;

cin>>num; //第一行数据
for(int i = 0 ; i < num ; i++){
cin>>exp;
cin>>coe;
input[exp] += coe;
}

cin>>num; //第二行数据
for(int i = 0 ; i < num ; i++){
cin>>exp;
cin>>coe;
input[exp] += coe;
}

//输出系数
for(int i = 0 ; i < 1001 ; i++){
if(input[i] != 0) k++;
}
printf("%d", k);

for(int i = 1000 ; i >= 0 ; i--){
if(input[i] != 0){
printf(" %d %.1f", i, input[i]); //注意空格
}
}



return 0;
}

 

举报

相关推荐

0 条评论