AT_arc138_d.[ARC138D] Differ by K bits
省选/NOI-
通过率:0%
AC君温馨提醒
该题目为【atcoder】题库的题目,您提交的代码将被提交至atcoder进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
给定整数 N,K。请判断是否存在一个 $ (0,1,\cdots,2^N-1) $ 的排列 P=(P0,P1,⋯,P2N−1),使其满足以下条件,并在存在时构造出一个这样的排列。注意,P 的下标从 0 开始。
- 对于所有 i(0≤i≤2N−1),Pi 和 P(i+1)mod2N 在二进制表示下恰好有 K 位不同。比较时需将二者都补齐前导 0 使其长度为 N 位。
输入格式
输入从标准输入中给出,格式如下:
N K
输出格式
如果不存在满足条件的 P,输出 No。如果存在,输出如下格式的答案:
Yes P0 P1 ⋯ P2N−1
如果有多个满足条件的解,输出任意一个均可。
输入输出样例
输入#1
3 1
输出#1
Yes 0 1 3 2 6 7 5 4
输入#2
2 2
输出#2
No
说明/提示
限制
- 1≤K≤N≤18
- 所有输入值均为整数
样例解释 1
将 P 用二进制表示为 P=(000,001,011,010,110,111,101,100)。例如 P1=001,P2=011,它们恰好有 1 位不同,因此对于 i=1 条件成立。对所有 i 也都满足条件。
由 ChatGPT 4.1 翻译
输入解题思路,AI测评打分。不知道怎么写?