小苯过马路
题号:NC282428
时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
64bit IO Format: %lld

题目描述

小苯生活在遥远的 B 星球,这天他正在等红绿灯,已知 B 星球的交规是:红灯有 x 秒,绿灯有 y 秒,红灯和绿灯是交替亮灯的。
(红灯上的时间从 x 减少到 1 后,再过一秒灯就会变成绿色,同时灯显示的时间也会变成 y;绿灯也同理。)

已知目前红绿灯颜色为 c,灯显示的时间为 k,小苯过马路需要花费的时间为 t
遵守交规的小苯想知道,从此刻开始到他走到马路对面,最少经过多少秒,请你帮他算一算吧。(小苯一旦开始过马路就不会停下脚步。)

输入描述:

输入包含一行,四个数字 x, y, k, t\ (1 \leq x, y, k, t \leq 1000, t \leq y) 和一个字符 c
分别表示该路口红灯和绿灯的时间 x, y,和目前灯上显示的数字 k,以及小苯通过马路需要花费的时间 t 以及目前灯的颜色 c('G' 表示绿灯,'R' 表示红灯)。
(保证输入的时间是合法的,即如果 c='G',则 k \leq y,否则 k \leq x。)

输出描述:

输出一行一个整数,表示小苯走到马路对面最少经过的秒数。
示例1

输入

复制
30 30 10 10 G

输出

复制
10

说明

目前红绿灯是绿色,还剩 10 秒,刚好够小苯走过马路。
示例2

输入

复制
30 40 5 10 G

输出

复制
45

说明

目前是绿色,但只剩 5 秒,因此小苯需要等下一个绿灯,才能走过去,总共花费 45 秒。

备注:

红灯停,绿灯行。