Pascal神秘数列研究中心正在研究一种数列,该数列由整数组成,每次可以对相邻的两个数进行相减操作,并删去这两个数,将运

问题描述:

Pascal神秘数列
研究中心正在研究一种数列,该数列由整数组成,每次可以对相邻的两个数进行相减操作,并删去这两个数,将运算结果替换进去.直到此数列只剩一个数为止.现在此研究中心欲使此最后剩下的数字为目标数,请你帮助他们完成这个任务.
若此数列为{12,10,4,3,5},目标数为4,E(n)表示对第n和第n+1数进行相减并替换.
E(2)={12,6,3,5} (6=10-4)
E(3)={12,6,-2} (-2=3-5)
E(2)={12,8} (8=6-(-2))
E(1)={4} (4=12-8)
则最后达到目的,数列仅剩一目标数,则此过程为:2,3,2,1
[输入]
输入文件第一行为N (3
1个回答 分类:综合 2014-11-01

问题解答:

我来补答
数组a[1..n]保存数列,
在设一个b[1..n]的数组,其中储存的数为1或-1,只有b[1]永远为1;
穷举所有b[1..n]可能情况,写个求和函数Sum,Sum(n)=a[n]*b[n]+Sum(n-1),且Sum(1)=a[1],如果Sum(n)与目标数相同,那么从头扫描数组b,如果b[x]=1,那么求E(x),直到数组b中只有-1,然后从头开始,同样的,如果b[x]=-1,那么求E(x),直到全部结束.
至于一共多少种+个计数器就行.
思路给你了,做起来应该很方便.
如果实在不行再给我发短消息,不过至少要提高悬赏到100,这程序写起来要时间的
 
 
展开全文阅读
剩余:2000
上一页:圆向量