#包括#包括//#定义N 7//#定义ALLOWED_CHANGES 1整数X[N][N][N][N][N][N];长cnt=0;内联int test_valid(int a,int b,int c,int d,int e,int f){整数i1、i2、i3、i4、i5、i6、i7;int场景=0;对于(int z=0;zALLOWED_CHANGES)返回0;}返回1;}内联无效显示(){cnt++;printf(“#%ld:”,cnt);for(int a=0;a0 ?"+":"-");}}}}} }printf(“\n”);}无效rec_fill2(int a,int b,int c,int d,int e,int f){如果(a==b){a=0;b++;如果(b==c){b=1;c++;如果(c==d){c=2;d++;如果(d==e){d=3;e++;如果(e==f){e=4;f++;}}}}}如果(f==N){显示();}其他的{对于(int v=-1;v<=+1;v+=2){X[a][b][c][d][e][f]=v;if(测试有效(a,b,c,d,e,f))rec_fill2(a+1,b,c,d,e,f);X[a][b][c][d][e][f]=0;} }}无效init_zeros(){for(int a=0;a-->