#geocon2013c. [geocon2013_c]泥棒

[geocon2013_c]泥棒

问题文

你是被小川和绿色环绕的一个小而富饶的王国的盗贼。
由于新国王开始设置监视站以提高治安,所以你需要小心不要引起监视。
在监视站上,他们检查连接到其他监视站的直线上有谁。
你不能穿过这条直线或进入直线上的房屋。
当然,你也不能通过监视站。
给定盗贼家和监视站的位置,请确定你能否从藏身之处安全地到达盗贼家,而不引起监视。
请注意,在进行盗窃时,尚未设置的监视站不会引起监视。


输入

输入从标准输入读取,具有以下格式。NN
第一行包含一个表示盗窃家庭和监视站总数的整数 NN
从第二行到第N+1行,给出一个用空格分隔的字符串 SiSi 和表示坐标的整数 XiYI(1iN,1Xi,Yi108)Xi YI (1 ≦ i ≦ N , 1 ≦ Xi,Yi ≦ 108) 来表示是盗窃家庭还是监视站。
SiSi 可以是 TARGETMONITOR,分别表示盗窃家庭和监视站。
所有的盗窃家庭和监视站都位于不同的位置。换句话说,如果 iji ≠ j,则 (Xi,Yi)(Xj,Yj)(Xi,Yi) ≠ (Xj,Yj)
做盗窃家庭的日期和设置监视站的日期按照输入的顺序给出。
换句话说,当你进入一个家庭进行盗窃时,已经设置好的监视站是指之前给出的监视站。
藏身之处位于原点(0,0)。


输出

对于每个盗窃家庭,判断是否能够在不引起监视的情况下从输入中的规定顺序进入监视站,并输出 SAFE 表示安全,DANGER 表示危险。
每行末尾输出一个换行符。


部分分

此问题分为(1)至(4)四个部分,分别满足以下条件:

  • (1) 50分:盗窃家庭为1个,监视站不超过3个。
  • (2) 50分:盗窃家庭不超过100个,监视站不超过100个。
  • (3) 50分:盗窃家庭不超过1000个,监视站不超过1000个。
  • (4) 150分:盗窃家庭不超过100000个,监视站不超过100000个。

输入例子 1


4
MONITOR 1 1
MONITOR 5 1
MONITOR 1 5
TARGET 2 2

输出例子 1


DANGER

无论如何移动,都无法通过连接到监视站的直线。你无法进入盗贼家庭。


输入例子 2


4
MONITOR 1 1
MONITOR 5 1
TARGET 2 2
MONITOR 1 5

输出例子 2


SAFE

第三个监视站(1,5)在进入盗窃家庭之后设置,因此你可以安全地进入盗窃家庭。


输入例子 3


7
MONITOR 2 1
MONITOR 4 1
MONITOR 6 1
TARGET 1 1
TARGET 3 1
TARGET 5 1
TARGET 7 1

输出例子 3


SAFE
DANGER
DANGER
SAFE

无法进入连接到监视站的直线上的家庭。


输入例子 4


16
TARGET 51120745 10211893
MONITOR 20328222 81595946
TARGET 24623254 3393748
MONITOR 96914389 5611093
MONITOR 26478507 21094604
MONITOR 38390485 52094021
MONITOR 54035108 52551113
MONITOR 32344389 92111226
MONITOR 42882326 49216313
TARGET 82009425 13194112
TARGET 36823977 72449795
TARGET 63951760 31282888
MONITOR 20099707 13753116
MONITOR 19673434 2381167
TARGET 135597 680580
TARGET 21578019 66062479

输出例子 4


SAFE
SAFE
DANGER
DANGER
DANGER
SAFE
DANGER