#314. 投球游戏

投球游戏

题目描述

有一个投球游戏,玩法是将球投到 NN 个篮筐里。具体玩法如下:

投篮顺序必须同时符合以下三个规则:

例如给出的 33 个篮筐距离和顺序为 130 200 55130 \ 200 \ 55

规则一:第一次投篮可以投任意一个篮筐;

规则二:从第二次投篮开始,每一次投篮只能投顺序在上一次篮筐的后面的篮筐;

如果第一次投的 200200 篮筐,那么接下来就不能投 130130 的篮筐,可以投 5555 的篮筐。

规则三:从第二次投篮开始,每一次投篮只能投比上一次投篮距离更近的篮筐。

如果第一次投的 130130 的篮筐,那么接下来不能投 200200 的篮筐,只能投 5555 的篮筐。

现给出 NN 的数值,和 NN 个篮筐的距离及顺序,假定每次投篮都能投进,请你编写程序计算按照投球规则最多能投进几个球。

如:N=3N=333 个篮筐的距离及顺序为:130 200 55130 \ 200 \ 55

按照三条规则,一共有以下三种投球方案:

1)如果第一次投 130130,那么投 1301305555,最多可以投进 22 球;

2)如果第一次投 200200,那么投 2002005555,最多可以投进 22 球;

3)如果第一次投 5555,那么投 5555,最多可以投进 11 球。

则按照规则最多可投进 22 球。

输入格式

第一行输入一个正整数 N(2<N<20)N(2<N<20) 表示篮筐的个数;

第二行分别输入 NN 个正整数(10<10 < 正整数 <1000< 1000)并以一个空格隔开,分别表示篮筐距离和 NN 个篮筐顺序,每个篮筐的距离都不相同。

输出格式

输出一个整数,表示最多能投进球的个数。

3
130 200 55
2