#P16447. PM10319紧密联络组
PM10319紧密联络组
题目背景
市应急通信中心正在测试一批便携式传感器。每台传感器都有一个互不相同的整数编号。工程师林澈发现,两台设备能否直接建立稳定链路,只取决于它们编号之差的绝对值:若这个差值属于一张允许列表,两台设备就可以直接通信。
为了模拟临时断网时的协作能力,林澈准备从全部设备中选出一个联络组。组内任意两台设备都必须能够直接通信,或者只经过组内的一台中继设备完成通信。中继链路也必须全部位于所选联络组内部。
允许列表中的所有差值在二进制表示末尾都有相同数量的零。利用这一特殊的硬件编号规律,请你帮助林澈求出最多可以选取多少台设备。
题目描述
给定 个互不相同的非负整数
它们分别表示图中的 个顶点。
另给定 个互不相同的正整数
若两个顶点对应的整数为 ,并且
则在这两个顶点之间连一条无向边。
你需要选择尽可能多的顶点。设选出的顶点以及它们之间原有的全部边构成一个子图,要求该子图中任意两个顶点之间的最短路长度都不超过 。
请输出最多可以选择的顶点数量。
注意,距离必须在所选子图内部计算。若两个顶点在该子图中不连通,则它们之间的距离视为无穷大。
输入格式
第一行输入两个整数 ,分别表示顶点数量和允许差值的数量。
第二行输入 个互不相同的整数 。
第三行输入 个互不相同的整数 。
输出格式
输出一个整数,表示满足条件的最大顶点数量。
样例 1
输入
12 3
1 2 3 4 6 9 13 15 16 18 21 26
2 6 10
输出
4
说明
可以选择编号为 的四个顶点。顶点 和 都分别与 相邻,因此所选子图内任意两点之间的距离均不超过 。
样例 2
输入
11 4
4 11 12 10 9 6 2 7 1 8 5
3 5 1 7
输出
9
样例 3
输入
14 6
100 260 164 244 84 340 52 212 388 4 308 180 228 484
16 176 208 48 240 80
输出
8
样例 4
输入
15 20
15905 329 20905 11041 17193 9697 26489 21073 5425 21273 23417 23249 3601 11649 10193
2392 5096 7880 10712 15576 8824 6056 9368 9864 3880 15144 13720 3272 16792 2056 28760 3464 11768 11320 7272
输出
8
样例 5
输入
20 26
2847 79 3075 4811 5003 3195 2663 1907 2467 2891 1459 3315 1287 1867 2363 1471 2795 1483 2667 1695
756 156 1500 988 1100 212 772 612 588 28 556 668 1180 420 172 1212 796 596 1404 972 412 236 1116 1196 780 572
输出
11
数据范围
- ;
- ;
- ;
- ;
- 所有 互不相同;
- 所有 互不相同;
- 所有 的二进制表示末尾连续零的数量相同。
换言之,存在同一个非负整数 ,使得每个 都能写成
其中 为奇数。