题目描述
研究中心正在研究一种数列,该数列由整数组成,
每次可以对相邻的两个数进行相减操作,
并删去这两个数,将运算结果替换进去。直到此数列只剩一个数为止。
现在此研究中心欲使此最后剩下的数字为目标数,请你帮助他们完成这个任务。
若此数列为{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≤N≤10),为数列中数的个数 。
第二行为M,为目标数 。
以下N行每行一个整数,为此数列中的数。
输出
一个整数,为可行方案的数量。
输入
第一行为N (3≤N≤10),为数列中数的个数 。
第二行为M,为目标数 。
以下N行每行一个整数,为此数列中的数。
输出
一个整数,为可行方案的数量。
思路:用深搜解题。
把深度设为n,从1开始,每两个相邻的数相减并存到前一个数,然后把后面的数全部向前移一位,填充相减的第二个数,然后dep累减。当dep为1时就判断最后减出来的数是否为原来的目标数,如果是就累加,否则直接返回。
#