功能:行测数列求解(Number Sequence Aptitude Test)

格式:
[v,f]=AptitudeTestNS(y,n)
[v,f]=AptitudeTestNS(y)

y:输入的整数数列
n:寻找层数,默认为3(注意层数从0开始)

v:返回的一个m*2的矩阵变量,第一列表示序号,第二列表示插找到的值
f:返回的推理过程

注意:
1、写这个函数的目的就是为了应付各种行测数列的求解问题,其实严格来讲,任何序列的答案总不唯一,除非你有严格的限制条件,而往往的行测提干却不加限制,所以往往弄得答案不唯一.本程序尽可能考虑更多的情况,如果你的n设置得足够大(n为你输入y数据元素个数即可),则可找到更多解.

2、所有预测的数据均为整数,如果有小数的预测,可按某种规则将小数变为整数预测后再变回去

3、本函数只预测最后一个值,如果你预测的是中间的某个数,比如6，18，(  )，78，126其中给了4个选项,即 A 40，B 42，C 44，D 46 那么使用本函数时可以对每个答案带进去然后预测最后一个值(126).比如带入B选项42则本函数是根据序列6，18，42，78来预测最后一个值,如果预测为126表示42就是所选

4、本函数只预测最后一个值以及推理过程,不预测中间值

5、本函数会预测出程序找到的所有解

6、本函数目前代码量超过4700行(其代码量远远超越其它函数，鉴于其完整性,后续会根据算法进行相应更新)

7、由于是针对的行测进行预测，而行测的数列一般不会趋于复杂，且也不像高中数列那么带有很浓烈的推理难度,也因此本程序只进行常规的预测（算法核心思想也来自于此），亦即请勿过度依靠本程序进行一些重要数据序列的预测，切记！

8、当你使用本程序得到多组解时,建议选择最简洁的表达式作为解(这时你得看参数f的表达式)

例子:

b=[ -1  2  -3   4  -5   6 ];
a=AptitudeTestNS(b)//回车后得到非常多的解,这里就不显示了

//By 2014/11/06 1:07