#LQ1110. 投球游戏

投球游戏

题目描述

有一个投球游戏,玩法是将球投到 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,第二次投 5555,最多可以投进 22 球;
  2. 如果第一次投 200200,第二次投 5555,最多可以投进 22 球;
  3. 如果第一次投 5555,最多可以投进 11 球。

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

输入格式

第一行输入一个正整数 N(2N20)N(2 \le N \le 20) 表示篮筐的个数。

第二行分别输入 NN 个正整数(11 \le 正整数 1000\le 1000)并以一个空格隔开,分别表示按照顺序从前往后的每个篮筐的距离。

每个篮筐的距离都不相同。

输出格式

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

3
130 200 55
2