eraser
,erase
,dreamer
,dream
の順に消さないといけなそう。
例えばdreameraserdreamer
はdream/eraser/dreamer
なので、dreamer/aser/dream/er
みたいに扱ってしまう処理をするとハマる。
S = input()
candidate = ("dream", "dreamer", "erase", "eraser")
for c in reversed(candidate):
S = S.replace(c, "")
if S:
print("NO")
else:
print("YES")