#G0042. 进制拆分【2025测试赛T1】
进制拆分【2025测试赛T1】
题目描述
对于任意一个非负整数 ,都可以表示成二进制。
例如 可以表示为 ,即 。
现在你需要把 拆成 位二进制,但是每一位的取值可以是 。同时,还需要保证任意相邻的两位不能同时为 。
形式化来说,你需要构造 个数字 满足下列所有条件:
、, 其中
、,其中
输入格式
每个测试文件包含多组测试数据。第一行包含测试数据的组数 。每组测试数据的格式如下。
每组数据仅包含一行一个非负整数 。
输出格式
对于每组数据,若答案存在,你需要先输出 YES
,然后接下来的 行每行 个数字 ,表示答案。你需要从低位到高位输出。 否则只输出 NO
。如果有多种构造方案,输出任意一种即可。
3
0
3
5
NO
YES
1 -1 -1 -1 -1 -1 -1 -1
-1 -1 -1 -1 -1 -1 -1 -1
-1 -1 -1 -1 -1 -1 -1 -1
-1 -1 -1 -1 -1 -1 -1 1
YES
-1 1 -1 -1 -1 -1 -1 -1
-1 -1 -1 -1 -1 -1 -1 -1
-1 -1 -1 -1 -1 -1 -1 -1
-1 -1 -1 -1 -1 -1 -1 1
数据规模与约定
由于具有明显提示性,本题没有大样例。
子任务编号 | 特殊性质 | 分值 | |
---|---|---|---|
1 | |||
2 | |||
3 | 为 奇数 | ||
4 | 为 偶数 | ||
5 |
对于 的数据:保证 。
相关
在下列比赛中: