atcoder#ABC243C. [ABC243C] Collision 2

[ABC243C] Collision 2

配点 : 300300

問題文

xyxy 座標平面上に NN 人の人がいます。人 ii(Xi,Yi)(X_i, Y_i) にいます。すべての人は異なる地点にいます。

L, R からなる長さ NN の文字列 SS があります。 人 iiSi=S_i = R ならば右向きに、Si=S_i = L ならば左向きに、一斉に同じ速度で歩き始めます。ここで、右は xx 軸の正の向き、左は xx 軸の負の向きです。

たとえば $(X_1, Y_1) = (2, 3), (X_2, Y_2) = (1, 1), (X_3, Y_3) =(4, 1), S =$ RRL の場合は次の図のように動きます。

image

反対の向きに歩いている人同士が同じ地点に来ることを「衝突」と呼びます。すべての人が歩き続けたとき、衝突は発生しますか?

制約

  • 2N2×1052 \leq N \leq 2 \times 10^5
  • 0Xi1090 \leq X_i \leq 10^9
  • 0Yi1090 \leq Y_i \leq 10^9
  • iji \neq j ならば (Xi,Yi)(Xj,Yj)(X_i, Y_i) \neq (X_j, Y_j) である。
  • Xi,YiX_i, Y_i はすべて整数である。
  • SSL および R からなる長さ NN の文字列である。

入力

入力は以下の形式で標準入力から与えられる。

NN

X1X_1 Y1Y_1

X2X_2 Y2Y_2

\vdots

XNX_N YNY_N

SS

出力

衝突が発生するならば Yes を、発生しないならば No を出力せよ。

3
2 3
1 1
4 1
RRL
Yes

この入力は問題文にある例と同じケースです。 すべての人が歩き続けると人 22 と人 33 が衝突します。よって Yes を出力します。

2
1 1
2 1
RR
No

11 と人 22 は同じ向きに歩いているので衝突することはありません。

10
1 3
1 4
0 0
0 2
0 4
3 1
2 4
4 2
4 4
3 3
RLRRRLRLRR
Yes