#birthday0410c. [birthday0410_c]ロ シ ア
[birthday0410_c]ロ シ ア
问题文
在俄罗斯,睡眠现在非常流行。无论老人、年轻人还是男人女人,每个人都需要睡眠。在俄罗斯没有人不睡觉的。
只有骑上这个大浪潮,让我们一起睡觉!不管是你,还是我,或者是那些正在阅读问题文的人!
哦,看来这里有 个想要睡觉的人。那我们赶快入睡吧!当这 个人一起在一张床上睡觉时,我们就成为了整个俄罗斯的英雄!
快来一起睡觉吧,大家都去睡吧。在苏联俄罗斯,睡眠会掌控你!
不过,让陌生人睡在同一张床上似乎有些困难吧?哎呀,如果是亲戚朋友的话,问题就简单了!只需要亲戚朋友们挨着睡觉就可以了!
而且很方便的是,亲戚朋友之间的关系非常明确!令人惊讶的是,现在我们可以随意给每个人从 到 编号,第 个人只和 和 号人认识, 这真是俄罗斯的奇迹啊!当然,我们假设 号人和 号人是亲戚关系, 号人和 号人也是亲戚关系。
话说有些唠叨了。现在就让我们翘首以待吧,快去睡觉吧!躺在床上,闭上眼睛,深呼吸!一不留神你就会陷入沉睡之中!当你醒来时,你就成为了俄罗斯的英雄!尽情期待吧!!!
嗯?你仍然不知道如何睡觉害怕吗?你真是笨蛋...你看,这个程序已经帮你解决了问题。
任务
有 个人想要睡觉。我们希望将这 个人安排在一个长方形网格的床上睡觉。为此,需要满足两个条件:
第一个条件是对于每个人的姿势。每个人由网格上的准确 个单元格表示。如果没有将 个单元格连接成一列,那么他们将无法入睡。将单元格集合连接成一列是指,为每个单元格分配从 1 到 的编号,以使得每个单元格仅与其编号相差 1 的单元格相邻。而且,两个单元格相邻表示它们共享一条边。
以下是当 时正确的睡姿示例(用 X
表示有人的单元格,用 .
表示没有人的单元格):
XXX XX.
..X .XX
..X ..X
以下是当 时不正确的睡姿示例:
XXX XXX XX.
.XX X.. .X.
... .X. .X.
第一个示例无法将单元格连接成一列。第二个示例有 5 个单元格不连续。第三个示例只有 4 个单元格。
第二个条件是人与人之间的邻居关系。给定 个人,编号为 到 ,第 个人必须与 号和 号人相邻。这里假设 号人是 号人, 号人是 号人。而且,两个人相邻表示它们所在的单元格相邻。
以下是当 时两个人相邻的睡姿示例(用 X
表示第一个人的单元格,用 Y
表示第二个人的单元格,用 .
表示没有人的单元格):
XXX XXXXX
YYX Y....
.YX YY...
.YY .YY..
以下是当 时两个人不相邻的睡姿示例:
XXX XXXXX
..X .....
Y.X YYY..
YY. ..Y..
.YY ..Y..
床由长方形网格表示,它的宽度和高度可以自由选择,但是网格的单元格总数不能超过 。在此前提下,求出满足上述两个条件的 个人的一种睡姿。当然,同一个单元格不能同时有两个