#D1104. 广义格雷码

广义格雷码

题目描述

在一组数的编码中,若任意两个相邻(首尾也视为相邻)的代码只有一位二进制数不同,则称这种编码为格雷码。如四位格雷码:

0000    0001    0011    0010    0110    0111    0101    0100
1100    1101    1111    1110    1010    1011    1001    1000

现在将格雷码扩展至其他进制,仍然是相邻两个数只能有一位不同。输入两个正整数 n,mn,m,分别表示长度和进制,每行输出一个 nnmm 进制数,输出任意一种编码即可。(提示:putchar 输出效率更高)

输入格式

一行,两个整数 n,mn,m。其中 2n12,2m102 ≤ n ≤ 12 ,2 ≤ m ≤ 10mn500000m^n ≤ 500000

输出格式

任意一种编码方案,每个编码一行。相邻两个编码相差一位。第一个编码和最后一个编码算相邻。

2 3
00
10
20
21
01
11
12
22
02