#include #define MAX 128 #define MAX2 16 int delka,barev,tahu; int tah[MAX][MAX2],tahs[MAX][MAX2]; int poz[MAX],poc[MAX]; int rada[MAX2],radas[MAX2]; int check(int D) { int i,j,k,l,right,right2; for (i=0; iradas[j]) { l=radas[i]; radas[i]=radas[j]; radas[j]=l; } for (i=0; ipoz[i]) return 0; if (D==delka&&rightpoz[i]+poc[i]) return 0; if (D==delka&&right2-right!=poc[i]) return 0; } if (D==delka) return 1; for (i=0; i0&&tahs[i][k]