1002 A+B for Polynomials
解题思路
看似简单的一题也调试了很多次,不知道是手生了,还是说脑子乱了。这道题首先是数据类型的问题,指数是整数,系数可以是浮点数。然后就是计数的问题,由于两个多项式相加可能会消掉某些项,所以计数只能最后加完再进行,否则会出错😭。最后就是输出的问题,这里我脑子乱了。
先给代码
#include<iostream>
#include<algorithm>
#include<vector>
using namespace std;
vector<double> ans(1010,0);
int main()
{
int cnt = 0 ;
for(int i = 1 ; i <= 2 ; i ++)
{
int n;cin>>n;
for(int j = 1 ; j <= n ; j ++)
{
int zhishu;
double xishu ;
cin>>zhishu>>xishu;
ans[zhishu] += xishu;
}
}
for(int i = 1000 ; i >= 0 ; i--) if(ans[i]) cnt++;
cout<<cnt;
for(int i = 1000 ; i >= 0 ; i -- )
{
if(ans[i])
{
printf(" %d %.1lf" , i , ans[i]);
}
}
return 0;
}

浙公网安备 33010602011771号