标签:
#include<cstdio> #include<cstring> char m[13][13]; int place[13]; using namespace std; int ans,cmn;//ans放棋子方案数,cmn你放棋子数 int n,k; void dfs(int i) { if(k==cmn) { ans++; return ; } if(i>=n) return ; for(int j=0;j<n;j++) { if(!place[j]&&m[i][j]=='#') { place[j]=1; cmn++; dfs(i+1); place[j]=0; cmn--; } }dfs(i+1); } int main() { while(scanf("%d%d",&n,&k)&&n!=-1&&k!=-1) { //getchar(); for(int i=0;i<n;i++) { scanf("%s",&m[i]); //getchar(); } memset(place,0,sizeof(place)); cmn=0; ans=0; dfs(0); printf("%d\n",ans); } return 0; }
版权声明:本文为博主原创文章,未经博主允许不得转载。
标签:
原文地址:http://blog.csdn.net/a1967919189/article/details/47130303