P1174 打砖块

    • 440通过
    • 1.7K提交
  • 题目提供者
  • 评测方式 云端评测
  • 标签 动态规划,动规,dp 高性能
  • 难度 提高+/省选-
  • 时空限制 1000ms / 128MB

题解

  • 提示:收藏到任务计划后,可在首页查看。
  • 最新讨论 显示

    推荐的相关题目 显示

    题目描述

    小红很喜欢玩一个叫打砖块的游戏,这个游戏的规则如下:

    在刚开始的时候,有$n$行$ \times m$列的砖块,小红有$k$发子弹。小红每次可以用一发子弹,打碎某一列当前处于这一列最下面的那块砖,并且得到相应的得分。(如图所示)

    某些砖块在打碎以后,还可能将得到一发子弹的奖励。最后当所有的砖块都打碎了,或者小红没有子弹了,游戏结束。

    小红在游戏开始之前,就已经知道每一块砖在打碎以后的得分,并且知道能不能得到一发奖励的子弹。小红想知道在这次游戏中她可能的最大得分,可是这个问题对于她来说太难了,你能帮帮她吗?

    输入输出格式

    输入格式:

    第一行有$3$个正整数,$n,m,k$。表示开始的时候,有$n$行$ \times m$ 列的砖块,小红有$k$发子弹。

    接下来有$n$行,每行的格式如下:

    $f_1 c_1 f_2 c_2 f_3 c_3 …… f_m c_m$

    其中$f_i$为正整数,表示这一行的第$i$列的砖,在打碎以后的得分。$c_i$为一个字符,只有两种可能,$Y$或者$N$。$Y$表示有一发奖励的子弹,$N$表示没有。

    所有的数与字符之间用一个空格隔开,行末没有多余的空格。

    输出格式:

    仅一个正整数,表示最大的得分。

    输入输出样例

    输入样例#1: 复制
    3 4 2
    9 N 5 N 1 N 8 N
    5 N 5 Y 5 N 5 N
    6 N 2 N 4 N 3 N
    输出样例#1: 复制
    13

    说明

    对于$20\%$的数据,满足$1 \le n,m \le 5,1 \le k \le 10$,所有的字符$c$都为$N$

    对于$50\%$的数据,满足$1 \le n,m \le 200,1 \le k \le 200$,所有的字符$c$都为$N$

    对于$100\%$的数据,满足$1 \le n,m \le 200,1 \le k \le 200$,字符$c$可能为$Y$

    对于$100\%$的数据,所有的$f$值满足$1 \le f \le 10000$

    提示
    标程仅供做题后或实在无思路时参考。
    请自觉、自律地使用该功能并请对自己的学习负责。
    如果发现恶意抄袭标程,将按照I类违反进行处理。