题目名称 4481. 画线
输入输出 circle.in/out
难度等级
时间限制 1000 ms (1 s)
内存限制 512 MiB
测试数据 10
题目来源 GravatarPXCZM 于2026-09-05加入
开放分组 全部用户
提交状态
分类标签
分享题解
通过:7, 提交:12, 通过率:58.33%
GravatarVTXE 100 0.702 s 7.69 MiB C++
GravatarPXCZM 100 0.740 s 7.99 MiB C++
Gravatar2_16鸡扒拌面 100 1.555 s 15.62 MiB C++
Gravatar终焉折枝 100 1.767 s 32.51 MiB C++
Gravataryanglich 100 2.220 s 13.03 MiB C++
Gravatarexil 100 3.128 s 42.16 MiB C++
Gravatar小福鑫 100 4.504 s 7.96 MiB C++
Gravataryanglich 40 1.150 s 11.45 MiB C++
GravatarPXCZM 40 6.614 s 3.77 MiB C++
Gravatarexil 40 6.615 s 3.94 MiB C++
本题关联比赛
2026.9.12
关于 画线 的近10条评论(全部评论)
Gravatar2_16鸡扒拌面
2026-09-12 15:20 1楼

4481. 画线

★   输入文件:circle.in   输出文件:circle.out   简单对比
时间限制:1 s   内存限制:512 MiB

【题目背景】

弗兰茜和尼利正在一张圆形的纸上画线,可是他们两个各自有各自想画的线,但是他们在画线的规则上达成了一致:

1,画的线是一条从圆上一点到另一点的直线,也就是圆的一条弦。

2,画的线不能与之前画的线有交点。

他们两个人想画的线太多了,不知道哪些该画哪些不该画,于是请你帮助。

【题目描述】

给定一个圆,认为其上有连续 $n$ 点,第 $n$ 个点和第 1 个点也相邻。

给定 $q$ 次询问,每一次询问给定两个点 $x$ 和 $y$,表示一条连接 $x$ 和 $y$ 这两个点的直线。若这条线段能画,则输出“Yes”,并将画上这条线,否则输出“No”。

【输入格式】

第一行两个整数 $n$ 和 $q$。

接下来 $q$ 行,每行两个整数,对于第 $i+1$ 行,表示第 $i$ 条线段的两个端点 $x_i$ 和 $y_i$。

【输出格式】

输出共 $q$ 行,对于第 $i$ 行,输出“Yes”或者“No”,表示第 $i$ 条线能不能画。

【样例输入】

8 3
1 5
2 7
3 4

【样例输出】

Yes
No
Yes

【数据规模与约定】

对于 40% 数据,$n \le 500$。

对于 100% 数据,$n \le 1 \times 10^6,q \le \min(\frac{n}{2},3 \times 10^5)$,保证所有线的两个端点不同,任意两条线的端点均不同。

大样例

AT_abc424_f