POJ 1538
1 #include <iostream> 2 #include <iomanip> 3 using namespace std; 4 5 int _v[11]; 6 //拉格朗日插值算法 7 int main() 8 { 9 //freopen("acm.acm","r",stdin); 10 int n; 11 int i; 12 int j; 13 int x; 14 double sum; 15 double temp; 16 while(cin>>n,n) 17 { 18 for(i = 1; i <= n; ++ i) 19 { 20 cin>>_v[i]; 21 } 22 cin>>x; 23 sum = 0; 24 x += n; 25 for(i = 2; i <= n; ++ i) 26 { 27 if(_v[i] != _v[1]) 28 { 29 break; 30 } 31 } 32 if(i > n) 33 { 34 sum = _v[n]; 35 } 36 else 37 { 38 for(i = 1; i <= n; ++ i) 39 { 40 temp = 1; 41 for(j = 1; j <= n; ++ j) 42 { 43 if(i == j) 44 { 45 continue; 46 } 47 temp *= (x-j); 48 temp /= (i-j); 49 } 50 temp *= _v[i]; 51 sum += temp; 52 } 53 } 54 cout<<"Term "<<x<<" of the sequence is "; 55 cout<<setiosflags(ios::fixed)<<setprecision(0)<<sum<<endl; 56 } 57 }
关注我的公众号,当然,如果你对Java, Scala, Python等技术经验,以及编程日记,感兴趣的话。
技术网站地址: vmfor.com