#P1538. Extrapolation Using a Difference Table

    ID: 539 传统题 1000ms 256MiB 尝试: 4 已通过: 1 难度: 10 上传者: 标签>模拟组合数学数据结构差分North Central North America 1993

Extrapolation Using a Difference Table

题目描述

一种古老的数列外推技术基于差分表的使用。以包含4个值的数列$3,6,10,15$为例,其差分表展示如下:

差分表构建规则:

  1. 第一列为原始数列
  2. 第二列(一阶差分)由相邻元素的差构成
  3. 第三列(二阶差分)由相邻一阶差分的差构成,以此类推
  4. 最后一列恒为单值($n$个元素的数列有$n$列,第$n$列为$n-1$阶差分)

外推方法:假设最高阶差分恒定,通过逆向计算各阶差分来预测后续数列值。下表演示了如何外推得到下一个值$21$(方框标注新增值):

输入格式

输入包含若干组外推请求。每组首行为整数$n$($1 \leq n \leq 10$)表示数列长度,$n=0$时程序终止。随后给出$n$个整数表示的数列,最后是外推次数$k$($k \geq 1$)。

输出格式

对每组请求,输出通过$k$次外推得到的第$n+k$项的值,格式为"Term X of the sequence is Y"。

样例输入

4  3  6  10  15  1
4  3  6  10  15  2
3  2  4  6  20
6  3  9  12  5  18  -4  10
0

样例输出

Term 5 of the sequence is 21
Term 6 of the sequence is 28
Term 23 of the sequence is 46
Term 16 of the sequence is -319268

提示

注意$k$可能极大,无法存储完整的差分表。

来源

North Central North America 1993