#draw. 2026提高组模拟赛10-T2 程老师的巡查路线
2026提高组模拟赛10-T2 程老师的巡查路线
时间限制:1000ms 内存限制:512MB
题目描述
城郊的湿地公园分好几期建成,园子里有 个景点,景点之间修着 条步行小径,每条小径连接两个不同的景点。老路新路并存,两个景点之间有时不止一条小径相通;也有个别景点当年修到一半停了工,一条小径都没接上,孤零零地留在角落里,游客走不到。
公园管理处雇了巡查员,每天闭园后沿小径巡查,检查路面、垃圾和路灯。管理处对巡查路线的规定是:每条小径恰好走一遍,不能重复,也不能漏掉;从哪个景点出发、最后在哪个景点结束,不作限制,由巡查员自己决定。巡查途中可以多次经过同一个景点,限制只针对小径本身。巡查员只能沿小径行走,小径以外的地方没有路。
这条规定执行了好几年。每新增或拆除一条小径,管理处都要重新核定一次巡查路线,核定结果贴在巡查室的墙上,巡查员照图走。园子越修越大,核定工作越来越费事,但规定本身一直没变过。
巡查员老周在这条规定下干了六年,闭园后拿着核定图出发,天亮前把记录本交回管理处。哪条路修过、哪条路停过,图上都标着。管理处核定路线用的是老办法:在图上拿铅笔画,画不通就改,改不出来就报"无法安排"。这次候选方案太多,铅笔画不过来,才决定请人用程序算。评估表要求一栏一个结论,结论后面附复核人签字。
最近管理处争取到一笔款子,打算新修一条小径。规划科报了 个候选方案,每个方案给出新小径两端的景点 和 (保证是两个不同的景点;新小径与现有小径重合也没关系,落成后算两条独立的小径,巡查时两条都要各走一遍)。这些方案互相独立,评估时假设只修其中一条。管理处要知道的是:每个方案修完后,园里的全部小径(包括新修的这条)能不能排出一条符合规定的巡查路线。每个方案都要给结论:能,或者不能。
评估工作交给了程老师。候选方案的数量很大,景点和小径的数量也很大,一个方案一个方案地在图上试走,根本来不及。程老师需要一种统一的办法,让每个方案都能快速得到正确结论。处长特意交代:结论要经得起复核,将来施工排期就按这张评估表走,评错了不是改个数字的事。
输入格式
第一行三个整数 ,表示景点数、现有小径数和候选方案数。
接下来 行,每行两个整数 ,表示一条连接景点 和 的现有小径。
接下来 行,每行两个整数 ,表示一个候选方案(新修一条连接 和 的小径)。
输出格式
输出 行,第 行输出第 个候选方案的评估结果:如果修建该方案后能排出合规巡查路线,输出 YES,否则输出 NO。
数据范围
| 测试点编号 | 特殊性质 | |||
|---|---|---|---|---|
| 1 ~ 2 | 无 | |||
| 3 ~ 6 | ||||
| 7 ~ 9 | ||||
| 10 ~ 11 | A | |||
| 12 ~ 13 | B | |||
| 14 ~ 16 | 无 | |||
| 17 ~ 20 | ||||
- 特殊性质 A:现有小径把全部 个景点连成一片,从任一景点出发沿小径都能走到任一其他景点。
- 特殊性质 B:每个景点都至少连着一条现有小径。
- 对于全部数据,,,,,;现有小径和候选方案中,同一对景点之间都可能出现多次。
样例
样例 1
输入:
4 3 3
1 2
2 3
3 4
1 4
2 3
1 2
输出:
YES
NO
YES
解释:现有小径是一条链:。方案一在 和 之间补一条,园子变成一个圈,从 出发绕一圈回到 ,每条小径恰好一遍,合规。方案二在 和 之间并排加一条,试着排一排:从 出发走到 是 ,可 和 之间多出的那条就得再走第二遍;从 出发也不行,怎么排都有一条小径要么漏掉要么重复,不合规。方案三在 和 之间并排加一条,从 出发走 (老路)、、,再……不行,得换思路:从 出发,走 (新路)、(老路)、、,每条恰好一遍,合规。
样例 2
输入:
6 2 3
1 2
3 4
2 3
1 2
5 6
输出:
YES
NO
NO
解释:现有小径是互不相通的两小段: 和 。方案一在 和 之间修一条,两小段接成一条链 ,从 走到 ,每条恰好一遍,合规。方案二在 和 之间并排加一条,、 之间两条路可以一来一回走完,可 那段还是孤零零的,巡查员飞不过去,不合规。方案三在 和 之间修一条,园子里变成三小段互不相通,更没戏,不合规。
样例 3
输入:
3 0 2
1 2
2 3
输出:
YES
YES
解释:园子里原本一条小径都没有。方案一修 ,全园就这一条小径,从 走到 ,恰好一遍,合规。方案二修 ,同理合规。
- ID
- 672
- 类型
- 传统题
- Time Limit
- 1000ms
- Memory Limit
- 512MiB
- 上传者