/ Vijos / 题库 /

跑步训练

跑步训练

时间限制:1秒  内存限制:256M


【题目描述】

  为准备下次跑步比赛,小H每天都在一条山路上刻苦训练。小H希望能在每次训练中跑得尽可能远,但规定每次训练的时间不得超过 \(M\) 秒,即M秒之内,小H必须回到出发地。

  整条山路被小H划分成N个长度相同的小段,并用 \(S_i\) 表示第 \(i\) 个小段的路况。\(S_i\) 为 u,f,d 这 3 个字母之一,它们分别表示第 \(i\) 个小段是上坡、平地,或是下坡。

  小H要花 \(U\) 秒才能跑完一段上坡路,跑完一段平地的耗时是 \(F\) 秒,跑完一段下坡路要花 \(D\) 秒。注意,沿山路原路返回的时候,原本是上坡路的路段变成了下坡路,原本是下坡路的路段变成了上坡路。

  小H想知道,在能按时返回农场的前提下,他最多能在这条山路上跑多远。

【输入格式】

  第一行包含五个用空格隔开的整数:\(M,N,U,F\)以及\(D\);
  接下来的 \(N\) 行: 第 \(i+1\) 行为 1 个字母 \(S_i\),描述了第 \(i\) 段山路的路况。

【输出格式】

  输出 1 个整数,为小H在按规定时间时回到出发地的前提下,最多能跑到多远。

【输入输出样例1】

 Input

13 5 3 2 1
u
f
u
d
f

 Output

3

【数据限制】

  对于 \(100\%\) 的数据,\(M≤10^7\),\(T≤10^5\),\(1≤U,F,D≤100\)

【来源】

  Mr.he

信息

ID
2222
难度
(无)
分类
模拟 点击显示
标签
(无)
递交数
0
已通过
0
通过率
?
被复制
3
上传者