题号:NC269418
时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
64bit IO Format: %lld
题目描述
你已经获得了木头,通过工作台制作了木镐,获得了圆石和石镐,现在你已经可以采掘铁矿石了。
这一天你挖了一条长度为

,宽度为

的矿道,你最多只能在这条矿道
向左/右正方向拓宽

格,并且你只能
垂直于矿道挖掘。
##*#############**##
#########*##########
....................
#####*######**######
#*##################
如上图所示,'.' 表示矿道,'#' 表示的是圆石,'*' 表示的是矿石。
本题固定第三行为矿道,第一/二行 为你的左侧,第四/五行 为你的右侧。
因为你只能站在矿道上,
至多向左/右正方向拓宽

格,所以本题只给出

的俯视图。
每拓宽一格,需要花费

点体力。现在您有

点体力,问你
最多能得到多少矿石?
以下是合法的两种挖法
### .## ### ..#
### .## ### ..#
... -> ... ... -> ...
### ### ### ###
### ### ### ###
以下是不合法的两种挖法
### ..# ### ...
### .## ### #.#
... -> ... ... -> ...
### ### ### ###
### ### ### ###
输入描述:
第一行 两个正整数
和
,
为 矿道的长度,
为体力大小。
接下来五行 每行一个长度为
的只含有'#','*' 和 '.' 的字符串,'#' 表示圆石,'*' 表示矿石,'.' 表示矿道。五行中的第三行一定全为 '.' 。

输出描述:
一个整数,表示你最多能得到的矿石数量。
示例1
输入
复制
20 7
##*#######**########
#########*##########
....................
#####*######**######
####################
说明
##*#######.*########
#########..#########
....................
#####.######..######
####################
备注:
