S41808.18-8 联络各方

传统题 时间 1000 ms 内存 256 MiB 3 尝试 0 已通过 0

18-8 联络各方

联络各方

据点的信号塔修好了——用废弃的通讯模块拼的,功率不大,但够用了。

"呼叫所有频道。"你说,"所有能听到的,回话。"

静电噪音。然后是断断续续的声音:

"北区……听到……" "南区……在……" "东区……请求……"

"有人。"CC说,"真的有人。"

"对。"你说,"但信号太弱,听不清。"

"咋个整?"

"一个一个来。"你说,"先联北区,再联南区,再联东区。每个区找一个代表,建立稳定的频道。"

你开始调。把信号塔分成三个频段——低频联北区,中频联南区,高频联东区。每个频段只跟一个代表通话,避免干扰。

"北区,我是主频道。"你说,"听到请回答。"

"听到。"一个男人的声音,沙哑但清楚,"你们是谁?"

"反抗者。"你说,"我们有据点了,有路线了。你们来,我们联合。"

"凭啥子信你?"

"凭我们解了Zero的杀人游戏。"你说,"凭我们活着站在这里。"

对方沉默了很久。

"好。"他说,"我们派人过去。"

"南区?"你切到另一个频段。

"南区在。"一个女人的声音,"我们也有据点,但快撑不住了。"

"撑住。"你说,"我们来接你们。"

"真的?"

"真的。"你说,"我们有退路,有哨兵,有加固的据点。你们来,我们一起。"

"……好。"

"东区?"

没有回应。只有静电噪音。

"东区。"你又说了一遍,"听到请回答。"

还是静。

"他们可能没了。"CC说。

"再试一次。"

你调高了功率——信号塔嗡嗡响,像要烧起来。

"东区。"你说,"最后一次。听到请回答。"

"……听到。"一个孩子的声音,"我是小明。大人们都……都不在了。"

你的手握紧了通讯器。

"小明。"你说,"听我说。你待在那里,不要动。我们派人来接你。"

"真的?"

"真的。"你说,"你数到一百,我们就到。"

"好。"孩子说,"我开始数了。一、二、三……"

Echo把东区的坐标标在地图上——一个红点,孤零零的。

"最近的路线。"她说,"走南线,十五分钟到。"

"CC。"你说。

"在。"她说。

"去接他。"

"我一个人?"

"你一个人够快。"你说,"我们在这里守着。"

她站起来,把数据刀插回腰间。

"十五分钟后。"她说,"回来。"

"十五分钟。"你说。


题目描述

nn 个区域,有些区域之间可以建立通讯频道。要建立最少数量的频道,使得所有区域都能互相通讯(直接或间接)。求最少频道数和方案。

输入格式

n,mn, m。然后 mm(u,v)(u, v) 表示可以建立频道。

输出格式

最少频道数,以及方案。

输入样例

3 2
1 2
2 3

输出样例

0.000
2.000
0.000

提示

  • 最小生成树问题。
  • Kruskal或Prim算法。
  • 输出任意一种最小生成树即可。

"接回来了。"CC的声音从通讯器里传来,"是个男孩,七岁。"

"他咋样?"

"害怕。"CC说,"但没说哭。"

"带他回来。"

"在路上了。"

你看着地图上的红点——它在移动,很慢,但确实在往据点靠近。

"还有谁?"Echo问。

"还有——"你想了想,"可能还有躲起来的人。"

"躲起来的?"

"对。"你说,"不敢出来,不敢回应。但他们在。"

"咋个找?"

"搜。"你说,"一个区域一个区域地搜。"

[第九题:寻回幼童]

在线编程 IDE

建议全屏模式获得最佳体验