📄 4795496_ac_16ms_280k.cpp
字号:
#include<iostream>
using namespace std;
char map[10][10];
bool used[10];
int n,k;
int result;
void dfs(int x,int k)
{
int j;
if(k>n-x) return ;
if(x>n-1) return ;
for(j=0;j<n;j++)
{
if(map[x][j]=='#'&&used[j]==false)
{
if(k==1) result++;
else
{
used[j]=true;
dfs(x+1,k-1);
used[j]=false;
}
}
}
dfs(x+1,k);
}
int main()
{
while(cin>>n>>k)
{
if(n==-1) return 0;
int i,j;
for(i=0;i<n;i++)
for(j=0;j<n;j++)
cin>>map[i][j];
result=0;
memset(used,false,sizeof(used));
dfs(0,k);
cout<<result<<endl;
}
return 0;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -