因式分解(2019,牛客 ,7场B)

题目:不可约多项式
链接:https://ac.nowcoder.com/acm/contest/887/B
题意:
T组样例,每组一个n,代表多项式的最高次数,n+1个数,代表系数。
输出多项式能不可分解 Yes, 可分解 No.

输入:
2
2
1 -2 1
2
1 0 1
输出:
No
Yes

因式分解一般结论:
因式分解与解高次方程有密切的关系。
1)对于一元一次方程和一元二次方程,初中已有相对固定和容易的方法

对于一元三次方程和一元四次方程,也有固定的公式可以求解。
对于三次多项式和四次多项式也有固定的分解方法,只是比较复杂。
例如:可以用待定系数法进行分解,分解后式子会比较复杂。

对于五次以上的一般多项式,已经证明不能找到固定的因式分解法,五次以上的一元方程也没有固定解法。
在这里插入图片描述
2)所有的三次和三次以上的一元多项式在实数范围内都可以因式分解,
所有的二次或二次以上的一元多项式在复数范围内都可以因式分解。

所以,本题题解
n=0或1,Yes.
n>=3 , No.
n==2, if(bb<4a*c) Yes
else No

具体证明:
1.
n=0时 多项式为 a
n=1时 多项式为 ax+c
已经是最简式,所以都不可分解。
2.
n==2, 一元二次方程:
由代数基本定理,一元二次方程有且仅有两个根(重根按重数计算),根的情况由判别式决定 b^2-4ac 。在这里插入图片描述
在这里插入图片描述
3.三次及以上可以因式分解的原因:
因为,由代数基本定理可知n次一元多项式总是有n个根,也就是说,n次一元多项式总是可以分解为n个一次因式的乘积。
定理:实系数多项式的虚数根两两共轭的,将每对共轭的虚数根对应的一次因式相乘,可以得到二次的实系数因式,从而这条结论也就成立了。

证明:寻找一个中心为原点,半径为r的闭圆盘D,使得当|z| ≥ r时,就有|p(z)| > |p(0)|。因此,|p(z)|在D内的最小值(一定存在,因为D是紧致的),是在D的内部的某个点z0取得,但不能在边界上取得。于是,根据最小模原理,p(z0) = 0。也就是说,z0是p(z)的一个零点(根)。

(尽管这个定理被命名为“代数基本定理”,但它还没有纯粹的代数证明,许多数学家都相信这种证明不存在。另外,它也不是最基本的代数定理;因为在那个时候,代数基本上就是关于解实系数或复系数多项式方程,所以才被命名为代数基本定理。
该定理的第一个证明是法国数学家达朗贝尔给出的,但证明不完整。接着,欧拉也给出了一个证明,但也有缺陷,拉格朗日于1772年又重新证明了该定理,后经高斯分析,证明仍然很不严格的。)

#include <iostream>
using namespace std;
int main()
{
	int t;
	cin>>t;
	long long int d[21],a,b,c,n; 
	while(t--)
	{
		cin>>n;
		if(n==0||n==1) {
			for(int i=0;i<n+1;i++)
			{
				cin>>d[i];
			}
			cout<<"Yes"<<endl;  
		} 
		else if(n>=3) { 
			for(int i=0;i<n+1;i++)
			{
				cin>>d[i];
			}
			cout<<"No"<<endl;  
		}
		else {
			cin>>a>>b>>c;
			if(b*b<4*a*c) cout<<"Yes"<<endl;
			else cout<<"No"<<endl;
		}
	}
	return 0;
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值