結果

問題 No.1000 Point Add and Array Add
ユーザー vjudge1
提出日時 2023-08-26 14:47:11
言語 C++14
(gcc 13.3.0 + boost 1.87.0)
結果
WA  
実行時間 -
コード長 573 bytes
コンパイル時間 1,010 ms
コンパイル使用メモリ 64,212 KB
実行使用メモリ 13,772 KB
最終ジャッジ日時 2024-12-25 12:32:56
合計ジャッジ時間 15,187 ms
ジャッジサーバーID
(参考情報)
judge2 / judge1
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample WA * 2
other WA * 8 RE * 11 TLE * 3
権限があれば一括ダウンロードができます

ソースコード

diff #

#include<cstdio>
#include<iostream>
#include<cstring>
using namespace std;
char ch[10][10];
int vis[10],n,k,ans=0,num=0;
void dfs(int i)
{
	int j;
	if(num==k)
	{
		ans++;
		return;
	}
	if(i>n)
	{
		return ;
	}
	for(j=1;j<=n;++j)
	{
		if(!vis[j]&&ch[i][j]=='#')
		{
			vis[j]=1;
			num++;
			dfs(i+1);
			vis[j]=0;
			num--;
		}
	}
	dfs(i+1);
}
int main()
{
	int i,j;
	memset(vis,0,sizeof(vis));
	while(cin>>n>>k)
	{
		if(n==-1&&k==-1)
		break;
		ans=0;
		num=0;
		for(i=1;i<=n;++i)
		{
			for(j=1;j<=n;++j)
			{
				cin>>ch[i][j];
			}
		}
		dfs(1);
		cout<<ans<<"\n";
	}
}
0