#P523. 对折绳子(folding)

对折绳子(folding)

问题描述:

Problem 1: Folding FJ 有一个长度为L(1<= L <= 10,000)的绳子。 这个绳子上有N(1 <= N <= 100)个结,包括两个端点。 FJ想将绳子对折,并使较短一边的绳子上的结与较长一边绳子上的结完全重合,如图所示:

img

找出FJ有多少种可行的折叠方案。

输入格式:

第一行: 两个整数, N和L

第2至N+1行: 每一行包含一个整数表示一个结所在的位置,总有两个数为0和L

输出格式:

第一行: 一个整数表示FJ可折叠的方案数。

输入样例:(folding.in)

5 10
0
10
6
2
4

输出样例:(folding.out)

4
(可在1,2,3,8点处折叠)