C. Hamming Codes

    Type: Default 1000ms 125MiB

Hamming Codes

You cannot submit for this problem because the contest is ended. You can click "Open in Problem Set" to view this problem in normal mode.

题目描述

给出 n,b,dn,b,d,要求找出 nn 个由 0,10,1 组成的编码,每个编码有 bb 位),使得两两编码之间至少有 dd 个单位的 “Hamming距离”。“

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

0x554 = 0101 0101 0100
0x234 = 0010 0011 0100
不同位    xxx  xx

因为有五个位不同,所以“Hamming距离”是 55

输入格式

一行,包括 n,b,dn,b,d

输出格式

nn 个编码(用十进制表示),要排序,十个一行。 如果有多解,你的程序要输出这样的解:假如把它化为 2b2^b 进制数,它的值要最小。

样例 #1

样例输入 #1

16 7 3

样例输出 #1

0 7 25 30 42 45 51 52 75 76
82 85 97 102 120 127

提示

【数据范围】 对于 100%100\% 的数据,1n641\le n \le 641b81\le b \le 81d71\le d \le 7

请解释:“必须与其他所有的数相比,Hamming 距离都符合要求,这个数才正确”

答:如样例输出,0,70,70,250,25,比较都符合海明码,同样 7,257,257,307,30,比较也符合要求,以此类推。题中至少有 dd 个单位,意思就是大于等于 dd 个单位的都可以。

scp-j模拟赛2024.7.12

Not Attended
Status
Done
Rule
OI
Problem
3
Start at
2024-7-12 22:15
End at
2024-7-14 18:15
Duration
2.5 hour(s)
Host
Partic.
3