标签:
http://blog.csdn.net/dark_scope/article/details/8880547
1 bool find(int x){ 2 int i,j; 3 for (j=1;j<=m;j++){ //扫描每个妹子 4 if (line[x][j]==true && used[j]==false) 5 //如果有暧昧并且还没有标记过(这里标记的意思是这次查找曾试图改变过该妹子的归属问题,但是没有成功,所以就不用瞎费工夫了) 6 { 7 used[j]=1; 8 if (girl[j]==0 || find(girl[j])) { 9 //名花无主或者能腾出个位置来,这里使用递归 10 girl[j]=x; 11 return true; 12 } 13 } 14 } 15 return false; 16 } 17 for (i=1;i<=n;i++) 18 { 19 memset(used,0,sizeof(used)); //这个在每一步中清空 20 if find(i) all+=1; 21 }
标签:
原文地址:http://www.cnblogs.com/mitrenick/p/4423662.html