这题就是找规律啦,不解释了,自己意会意会QaQ
提交传送门
#include<cmath>
#include<cstdio>
#include<cstring>
#include<cstdlib>
#include<iostream>
#include<algorithm>
using namespace std;
int a[1100],n,B;
void dfs(int k,int t){
if(k==n+1){
for(int i=n;i>=1;i--){
if(a[i]<10)printf("%d",a[i]);
else printf("%c",a[i]+'A'-10);
printf("\n");
return ;
}
if(t==0){
for(int i=0;i<B;i++){
a[k]=i;
if(i%2==1)dfs(k+1,1);
else dfs(k+1,0);
}
}
else{
for(int i=B-1;i>=0;i--){
a[k]=i;
if(i%2==1)dfs(k+1,0);
else dfs(k+1,1);
}
}
}
int main(){
scanf("%d%d",&n,&B);
dfs(1,0);
return 0;
}