Problemas
슈퍼마리오는 아래 그림과 같이 D미터 떨어진 반대편에 있는 버섯을 먹고 다시 돌아오려고 한다.
공중에서 오직 나무토막과 날개 달린 거북이만을 밟으면서 점프해야지만 버섯이 있는 곳으로 이동할 수 있다.
이 때 하늘 위에서의 점프이기 때문에 점프하다가 아래로 떨어지면 죽게 된다.
* 나무 토막의 경우 여러 번 계속 밟을 수 있다. * 날개 달린 거북이의 경우, 한번 밟으면 날개를 잃게 되어 거북이는 떨어진다.
즉, 날개 달린 거북이는 단 한번만 밟고 지나갈 수 있다. * 날개 달린 거북이와 나무토막의 길이는 0으로 간주하고 무시한다. * 버섯은 항상 나무토막 위에 있다.
위 네 가지 조건을 감안할 때,
슈퍼마리오가 버섯을 먹고 다시 처음 위치로 돌아오기 위해서 필요한 최대 점프 거리는 최소한 몇 미터가 되어야 하는가?
Entrada
첫 번째 줄에는 두 개의 정수 N(0≤N≤100)과 D(1≤D≤1,000,000,000)가 주어지고 두 번째 줄에는 N개의 물체(나무토막 혹은 날개 달린 거북이)의 정보가 하나의 스페이스로 구분되어 주어진다. 물체에 대한 정보는 S-M의 형태를 갖는다. S에는 나무토막을 의미하는 'W'나, 거북이를 의미하는 'T'가 주어지고, M자리에는 출발점에서부터 주어진 물체까지의 거리가 주어진다. M값이 작은 순서대로 입력된다.
Salida
각 테스트케이스에 대하여 슈퍼마리오가 버섯을 먹고 처음 위치로 돌아오기 위해 필요한 최대 점프 거리의 최소값(minimized maximum)을 한 줄로 출력한다.
Ejemplo
2 10
W-3 T-6
7