Horner Rule(霍纳法则)
2016-08-18 22:06
169 查看
多项式求值,a0 + a1x + a2x2 +… + anxn;c常规算法就是直接这样求和,但是想也知道肯定效率不高的,这个其实有一个更高效的算法,叫 Horner Rule. 其实就是将多项式变形为
((…(((anx +an-1)x+an-2)x+ an-3)…)x+a1)x+a0
代码样例如下:
((…(((anx +an-1)x+an-2)x+ an-3)…)x+a1)x+a0
代码样例如下:
#include<cstdio> #include<iostream> #include<cmath> using namespace std; const int Max = 1e6+7; int a[100010]; int main() { int n, x; while(~scanf("%d%d",&n,&x))//n 是多项式的最高次数,x是x的值 { for(int i = 0;i<=n;i++) scanf("%d",&a[i]);//系列系数a0..an int sum = 0; for(int i = n;i>=0; --i) { sum = sum*x + a[i]; sum %= Max;//将sum控制在一定大小 } printf("%d\n",sum); } }
相关文章推荐
- 霍纳法则(Horner Rule)
- Horner Rule(霍纳法则)
- 霍纳法则(Horner Rule)介绍及C语言实现
- Horner's rule (霍纳法则)
- 霍纳法则(Horner's rule)
- 霍纳法则(Horner)/秦九韶算法
- 多项式求解(霍纳规则(Horner Rule))
- 多项式求解(霍纳规则(Horner Rule))
- 上机一 D 水水的Horner Rule
- 霍纳法则(Horner's rule)
- 快速计算多项式:霍纳法则(Horner's rule)
- 霍纳法则(Horner's rule)
- 霍纳法则(horner)
- Rule Engine--规则引擎
- boost.spirit -- rule
- The "right-left" rule
- JBoss Rule Engine - Drools (1)
- Jess in Action: Rule-Based Systems in Java
- make: makefile: line 7: Error -- Expecting macro or rule defn, found neither
- The rule of name defination