传统题 1000ms 256MiB

造数

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

大样例下载

题目背景

“Hamming距离”是指对于两个编码,他们二进制表示法中的不同二进制位的数目。看下面的两个编码 0x5540x234(十六进制数)

0x554 = 0101 0101 0100

0x234 = 0010 0011 0100

因为有五个对应二进制位不同,所以“Hamming距离”是 55

题目描述

有一个可重集合,包含 N 个二进制数。每个二进制数的长度均为 L。

小明可以进行以下操作:从集合中选择两次,每次任意选择一个数(可以两次均选择同一个元素),将它们进行异或,得到的数添加到集合中。

小明可以重复以上操作任意次。

小明希望通过若干次(至少一次)操作,能够在异或运算时得到二进制数 D。当然,小明也可能永远无法通过异或得到 D。

现在,小明想知道,他可以得到的与 D 的海明距离最小的二进制数是什么?

如果有多个二进制数满足题目要求,请你求出小明操作次数最少情况下可以得到的那一个。如果仍然有多个,请你求出值最小的那一个。

输入格式

第一行:两个整数 L, N

第二行:一个长度为 L 的二进制数 D

接下来 N 行,每行一个长度为 L 的二进制数,描述集合初始时的元素。

输出格式

第一行:一个整数,表示操作次数。

第二行:一个长度为 L 的二进制数,表示可以得到的与 D 海明距离最小的那个二进制数。

样例1输入

3 2
100
100
000

样例1输出

1
100

样例2输入

3 2
110
100
001

样例2输出

2
100

数据范围

100% 的数据:1 ≤ N ≤ 100, 1 ≤ L ≤ 16

2026-04-10

未参加
状态
已结束
规则
OI
题目
4
开始于
2026-4-10 7:20
结束于
2026-4-10 12:00
持续时间
4.7 小时
主持人
参赛人数
7