Type: Default 1000ms 256MiB

投球游戏

You cannot submit for this problem because the contest is ended. You can click "Open in Problem Set" to view this problem in normal mode.

题目描述

有一个投球游戏,玩法是将球投到 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

蓝桥杯第十二届c++国赛真题

Not Attended
Status
Done
Rule
IOI
Problem
7
Start at
2023-5-26 7:45
End at
2023-5-28 19:45
Duration
60 hour(s)
Host
Partic.
9