拉丁矩阵问题
现有n种不同形状的宝石,每种宝石有足够多颗。欲将这些宝石排列成m行n列的一个矩阵,m<=n,使矩阵中每一行和每一列的宝石都没有相同的形状。
试设计一个算法,计算出对于给定的m和n,有多少种不同的宝石排列方案。
#include<stdio.h>
#define N 10
int m,n; //分别为行、列
int count=0;
int a[N][N]={
0};
bool OK(int x,int y) //判断某一行或列到此元素之前不相同
{
int i,j;
for(i=0;i<y;i++) //判断某一行到此元素之前不相同,否则返回false
{
<