結果
問題 |
No.1000 Point Add and Array Add
|
ユーザー |
![]() |
提出日時 | 2023-08-26 15:11:49 |
言語 | C++17(clang) (17.0.6 + boost 1.87.0) |
結果 |
WA
|
実行時間 | - |
コード長 | 573 bytes |
コンパイル時間 | 3,150 ms |
コンパイル使用メモリ | 120,320 KB |
実行使用メモリ | 13,636 KB |
最終ジャッジ日時 | 2024-12-25 13:08:09 |
合計ジャッジ時間 | 18,991 ms |
ジャッジサーバーID (参考情報) |
judge4 / judge2 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | WA * 2 |
other | WA * 6 RE * 12 TLE * 4 |
ソースコード
#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"; } }