3-04. 一元多项式的乘法与加法运算(20)
来源:互联网 发布:控制器解析json数据 编辑:程序博客网 时间:2024/06/15 22:18
由于题中数据量不是很大 想到 类似“散列 查找”的算法 将指数 映射到一维数组的下标 而数组的值为 系数。
#include<iostream>#include<cstring>#include<vector>using namespace std;#define Size 1000000// 1000*1000int Poly_1[Size+1], Poly_2[Size+1], Added[Size+1], Mul[Size+1];// added mul 分别存储 加结果 乘结果 后打印struct Node{ int C;//系数 int E;//指数};int main(){ vector<Node>V; Node num; memset( Poly_1, 0, sizeof( Poly_1) ); memset( Poly_2, 0, sizeof( Poly_2 )); memset( Added, 0, sizeof( Added ) ); memset( Mul, 0, sizeof(Mul) ); int N; cin>>N; for( int i=0; i<N; i++ ){ cin>>num.C>>num.E; Added[num.E]=Poly_1[num.E]=num.C; V.push_back(num); } cin>>N; for( int i=0; i<N; i++ ){ cin>>num.C>>num.E; Poly_2[num.E]=num.C; Added[num.E]+=num.C; for( int i=0; i<V.size(); i++ )// 将每次的输入依次相乘后保存到 Mul 中 Mul[num.E + V[i].E ]+=num.C*V[i].C; } bool flag=true;// 检测 相加 相乘 后的 值是否 为 0 默认 为0 bool first = true; for( int i=Size; i>=0; i-- ) { if( Mul[i]!=0 ){ flag = false; if( first ){ first = false; cout<<Mul[i]<<" "<<i; } else cout<<" "<<Mul[i]<<" "<<i; } } if( flag ) cout<<0<<" "<<0; cout<<endl; flag = true; first = true; for( int i=Size; i>=0; i-- ) { if( Added[i]!=0 ){ flag = false; if( first ){ first = false; cout<<Added[i]<<" "<<i; } else cout<<" "<<Added[i]<<" "<<i; } } if( flag ) cout<<0<<" "<<0; cout<<endl; return 0;}
0 0
- 一元多项式的乘法与加法运算(20 分)
- 一元多项式的乘法与加法运算(20 分)
- 一元多项式的乘法与加法运算(20 分)
- 一元多项式的乘法与加法运算(20 分)
- 3-04. 一元多项式的乘法与加法运算(20)(ZJU_PAT 结构体)
- 3-04. 一元多项式的乘法与加法运算(20)
- 3-04. 一元多项式的乘法与加法运算(20)
- 一元多项式的乘法与加法运算
- 一元多项式的乘法与加法运算
- 一元多项式的乘法与加法运算
- 一元多项式的加法与乘法运算
- 一元多项式的乘法与加法运算
- 一元多项式的乘法与加法运算
- 一元多项式的乘法与加法运算
- 一元多项式的乘法与加法运算
- 一元多项式的乘法与加法运算
- 浙大PAT 3-04. 一元多项式的乘法与加法运算 (解题思路)
- PAT3-04. 一元多项式的乘法与加法运算
- 2015 Bestcoder 47# A
- javascript性能优化的几点建议
- Java Thread.join()详解--父线程等待子线程结束后再结束
- JVM知识
- iOS 在ScrollView 上加 同向滑动手势
- 3-04. 一元多项式的乘法与加法运算(20)
- 函数参数之 传常引用(passed by reference to const)替换 传值(passed by value)
- [LeetCode][Java] Search in Rotated Sorted Array
- 黑马程序员——JAVA基础---基本数据类型
- NYOJ 55懒省事的小明
- 如何解决分类中的样本倾斜问题
- tomcat的结构 以及处理请求的流程
- 【基础练习】【数论/模拟】codevs1670 无穷的序列题解
- 最大公约数Greatest Common Divisor