#686. 加弦

加弦

题目描述

圆上等距放置 NN 个点,按顺时针编号为 1,2,,N1,2,\dots,N

你需要处理 QQ 个询问,按顺序进行如下操作:

对于第 ii 个询问,尝试画出连接点 AiA_iBiB_i 的线段(弦)。但是,如果该线段与已经画出的某条线段相交,则不画该线段。(相交是指在圆内部相交,不包括仅在端点相接的情况。)

已知所有 2×Q2 \times Q 个整数 A1,,AQ,B1,,BQA_1,\dots,A_Q,B_1,\dots,B_Q 两两互不相同

对于每个询问,判断该线段是否被画出。

输入格式

输入共 Q+1Q + 1 行;

  • 第一行输入由空格隔开的两个正整数 N,QN, Q
  • 接下来 QQ 行,第 ii (1iQ)(1 \le i \le Q) 行输入由空格隔开的两个正整数 Ai,BiA_i, B_i

输出格式

输出 QQ 行。第 ii 行若第 ii 次询问画出了线段,则输出 Yes,否则输出 No

样例输入 1

8 3
1 5
2 7
3 4

样例输出 1

Yes
No
Yes

样例输入 2

999999 4
123456 987654
888888 999999
1 3
2 777777

样例输出 2

Yes
No
Yes
No

说明

样例 1 解释

按顺序处理询问:

  • 11 次:画 (1,5)(1,5),可以画出,输出 Yes
  • 22 次:尝试画 (2,7)(2,7),它与已画的 (1,5)(1,5) 相交,故不画,输出 No
  • 33 次:画 (3,4)(3,4),与已画线段不相交,输出 Yes

图片描述

数据范围

  • 2N1062\le N\le 10^{6}
  • 1Q3×1051\le Q\le 3\times 10^{5}
  • 对于每个 ii,满足 1Ai<BiN1\le A_i < B_i \le N
  • A1,,AQ,B1,,BQA_1,\dots,A_Q,B_1,\dots,B_Q 两两互不相同。
  • 所有输入值均为整数。