传统题 1000ms 256MiB

排座椅 (seat)

该比赛已结束,您无法在比赛模式下递交该题目。您可以点击“在题库中打开”以普通模式查看和递交本题。

Background

Special for beginners, ^_^

Description

上课的时候总有一些同学和前后左右的人交头接耳,这是令小学班主任十分头疼的一件事情。不过,班主任小雪发现了一些有趣的现象,当同学们的座次确定下来之后,只有有限 的 D 对同学上课时会交头接耳。同学们在教室中坐成了 M 行 N 列,坐在第 i 行第 j 列的同 学的位置是(i,j),为了方便同学们进出,在教室中设置了 K 条横向的通道,L 条纵向的 通道。于是,聪明的小雪想到了一个办法,或许可以减少上课时学生交头接耳的问题:她打 算重新摆放桌椅,改变同学们桌椅间通道的位置,因为如果一条通道隔开了两个会交头接耳 的同学,那么他们就不会交头接耳了。

请你帮忙给小雪编写一个程序,给出最好的通道划分方案。在该方案下,上课时交头 接耳的学生对数最少。

Format

Input

输入文件 seat.in 的第一行,有 5 各用空格隔开的整数,分别是 M,N,K,L,D(2<=N, M<=1000,0<=K<M,0<=L<N,D<=2000)。

接下来 D 行,每行有 4 个用空格隔开的整数,第 i 行的 4 个整数 Xi,Yi,Pi,Qi,表示 坐在位置(Xi,Yi)与(Pi,Qi)的两个同学会交头接耳(输入保证他们前后相邻或者左右相邻)。

输入数据保证最优方案的唯一性。

Output

第一行包含 K 个整数,a1a2……aK,表示第 a1 行和 a1+1 行之间、第 a2 行和第 a2+1 行之 间、…、第 aK 行和第 aK+1 行之间要开辟通道,其中 ai< ai+1,每两个整数之间用空格隔开(行 尾没有空格)。

第二行包含 L 个整数,b1b2……bk,表示第 b1 列和 b1+1 列之间、第 b2 列和第 b2+1 列之 间、…、第 bL 列和第 bL+1 列之间要开辟通道,其中 bi< bi+1,每两个整数之间用空格隔开(行 尾没有空格)。

Samples

4 5	1 2 3
4 2	4 3	
2 3	3 3	
2 5	2 4	
2	
2 4

Limitation

上图中用符号*、※、+ 标出了 3 对会交头接耳的学生的位置,图中 3 条粗线的位置表示通 道,图示的通道划分方案是唯一的最佳方案。

11月26日作业(5)

未认领
状态
已结束
题目
9
开始时间
2022-11-27 0:00
截止时间
2022-12-12 23:59
可延期
24 小时