
Subin 在醫院拿了處方,並在藥局購買了 $N$ 天份的藥。一天份的藥由晨藥、午藥、晚藥各一包組成,總共 $3N$ 個藥袋按以下順序連成一排:
如果是普通人,只要每天按時吃三餐,從前往後依序剪下藥袋服用即可。但 Subin 的生活作息並不尋常。有時一天只吃晚餐,有時又會跳過早餐。因此,Subin 不打算從前往後按順序吃藥,而是想按照自己用餐的順序來吃藥。當然,Subin 打算把藥全部吃完,一包也不剩。
然而,Subin 非常討厭看到連在一起的藥袋被分成兩截。因此,每次吃藥時,Subin 只會從目前剩餘藥袋的最前面或最後面剪下一包藥來吃。剪下中間的藥袋從而導致剩餘藥袋分成兩截是不被允許的。
給定 Subin 想要吃藥的順序,請判斷是否能夠在遵守上述條件的前提下,按該順序吃完所有的藥。
輸入格式
第一行包含一個整數 $N$,表示購買的藥的天數。($1 \le N \le 1\,000\,000$)
第二行包含一個長度為 $3N$ 的字串 $S$,表示 Subin 想要吃藥的順序。字串 $S$ 僅由 B、L、D 組成,且這三個字元各自恰好出現 $N$ 次。
字元 B 表示晨藥,L 表示午藥,D 表示晚藥。
輸出格式
如果能在遵守條件的前提下按 $S$ 的順序吃完所有的藥,則輸出 Yes,否則輸出 No。
範例
輸入格式 1
1 LBD
輸出格式 1
No
輸入格式 2
2 BLDDBL
輸出格式 2
Yes
說明
在第一個範例中,初始剩餘的藥袋從前往後依序為晨藥、午藥、晚藥。第一次要吃的藥是午藥,但午藥既不在最前面也不在最後面,因此無法在遵守條件的前提下吃到。
在第二個範例中,按照最前面、最前面、最前面、最後面、最前面、最前面的順序剪下藥袋服用,即可按照給定的順序吃完所有的藥。