博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
1009 Product of Polynomials
阅读量:6223 次
发布时间:2019-06-21

本文共 2314 字,大约阅读时间需要 7 分钟。

题目链接:

多项式乘法,下面是代码:

1 //注意输出的格式 2 #include
3 #include
4 #include
5 using namespace std; 6 struct pol{ 7 float xishu; 8 int zhishu; 9 friend bool operator < (pol x,pol y){10 return x.zhishu < y.zhishu;11 }12 friend void operator * (pol &x,pol &other){13 x.xishu *= other.xishu;14 x.zhishu += other.zhishu;15 }16 friend void operator +(pol &x,pol &other){17 x.xishu += other.xishu;18 }19 };20 21 int main(){22 priority_queue
q1;23 priority_queue
q2;24 priority_queue
q3;25 priority_queue
q4;26 pol p;27 int n,m;28 cin >> n;29 for(int i = 0; i < n; i++){30 cin >> p.zhishu >> p.xishu;31 q1.push(p);32 }33 cin >> m;34 for(int i = 0; i < m; i++){35 cin >> p.zhishu >> p.xishu;36 q2.push(p);37 }38 //q3 = q2;39 int n1 = q1.size();40 int n2 = q2.size();41 for(int i = 0 ; i < n1; i++){42 pol p1 = q1.top();43 44 q1.pop();45 for(int j = 0 ; j < n2; j++){46 p = p1;47 pol p2 = q2.top();48 // cout << p2.zhishu << " " << p2.xishu << endl;49 q2.pop();50 q3.push(p2);51 p*p2;52 // cout << p.zhishu << " " << p.xishu << endl;53 q4.push(p);54 }55 while(!q3.empty()){56 q2.push(q3.top());57 q3.pop();58 }59 }60 // for(int i = 0; i < q4.size(); i++){ 61 //// cout << q4.top().zhishu << " " << q4.top().xishu << endl;62 // q4.pop();63 // }64 p = q4.top();65 n1 = q4.size();66 q4.pop();67 for(int i = 0; i < n1-1; i++){68 pol p1 = q4.top();69 q4.pop();70 if(p.zhishu == p1.zhishu) {71 // cout << p.zhishu << " " << p1.zhishu << endl;72 p+p1;73 // cout << p.zhishu << " " << p.xishu << endl;74 75 }76 else{77 if(p.xishu != 0)78 q3.push(p);79 p = p1;80 // cout << p.zhishu << " " << p.xishu << endl;81 }82 }83 if(p.xishu != 0) q3.push(p);84 //q3.push(p);85 cout << q3.size() << " ";86 n1 = q3.size();87 for(int i = 0; i < n1; i++){88 if(i != n1-1){89 cout << q3.top().zhishu << " " << fixed << setprecision(1) << q3.top().xishu << " ";90 q3.pop();91 }92 else cout << q3.top().zhishu << " " << fixed << setprecision(1) << q3.top().xishu;93 }94 // cout << p.zhishu << " " << p.xishu;95 // cout << q3.size() << endl;96 // cout << q3.top().zhishu << " " << q3.top().xishu;97 return 0;98 }

 

转载于:https://www.cnblogs.com/huhusw/p/9755069.html

你可能感兴趣的文章
Javascript中typeof instanceof constructor的区别
查看>>
jenkins忘记管理员登陆密码的补救措施
查看>>
[LeetCode] Sliding Window Maximum 滑动窗口最大值
查看>>
Loopup集合类笔记
查看>>
ylbtech-LanguageSamples-Unsafe(不安全代码)
查看>>
Unable to connect to any of the specified MySQL hosts.
查看>>
Android屏幕尺寸适配注意事项
查看>>
JAVA代码中加了Try...Catch的执行顺序
查看>>
三个c#入门小程序
查看>>
docker中使用systemd
查看>>
[模拟电路] 1、模拟调制、解调电路原理
查看>>
Android Nine Patch图片及按钮背景
查看>>
在.NET中调用Oracle9i存储过程经验总结
查看>>
Eclipse崩溃后无法启动的问题解决
查看>>
Android Studio git ignore
查看>>
springmvc
查看>>
22.2. 用户认证
查看>>
1.7. User interfaces
查看>>
阿里Druid数据连接池在SSM框架中的配置使用
查看>>
基于Metronic的Bootstrap开发框架经验总结(17)-- 使用 summernote插件实现HTML文档的编辑和图片插入操作...
查看>>