水题,大水题,只不过bzoj上没有设special judge,WA了几次
const int N = 20;
int Dat[N], Base[N], Sum;
int n, m;
inline void Input() {
scanf("%d%d", &n, &m);
Sum = 1;
Rep(i, n) Sum *= m, Base[i] = 1;
}
inline void Write() {
Sum--;
Rep(i, n) printf("%c", Dat[i] < 10 ? '0' + Dat[i] : 'A' + Dat[i] - 10);
printf("\n");
}
inline void Solve() {
Write();
while(Sum) {
Rep(i, n)
if(Dat[i] + Base[i] > -1 && Dat[i] + Base[i] < m) {
Dat[i] += Base[i];
break;
} else Base[i] *= -1;
Write();
}
}
int main() {
#ifndef ONLINE_JUDGE
SETIO("1081");
#endif
Input();
Solve();
return 0;
}