POJ1321棋盤問題(DFS)
#include<iostream>
using namespace std;
#define maxn 11
char map[maxn][maxn];
int ans=0;
int vis[maxn];
int n,k;
void dfs(int index,int num){
if(index>=n &&num!=0) return ;
if(num>n-index) return ;
if(num==0){
ans++;
return ;
}
int i;
for(i=0;i<n;i++){
if(map[index][i]=='.') continue;
if(!vis[i]){
vis[i]=1; //標記列
dfs(index+1,num-1); //表示這行放棋子
vis[i]=0;
}
}
dfs(index+1,num); //表示這行不放棋子
}
int main(){
while(scanf("%d%d",&n,&k)!=EOF){
ans=0;
if(n==-1&&k==-1) break;
for(int i=0;i<n;i++)
for(int j=0;j<n;j++)
cin>>map[i][j];
dfs(0,k);
cout<<ans<<endl;
}
return 0;
}
相關文章
- 棋盤問題
- 棋盤問題 POJ - 1321
- 棋盤覆蓋問題
- poj 1321 棋盤問題 回溯 JavaJava
- 分治演算法-求解棋盤覆蓋問題演算法
- dfs的return時機問題
- 數獨問題(DFS+回溯)
- HDU - 2553 N皇后問題(DFS)
- 怎樣解題|題3.2.14:填充國際象棋棋盤
- 棋盤 K皇后
- 棋盤覆蓋
- I. 棋盤
- 決策樹減支問題(優化)dfs減支問題優化
- 怎樣解題|題3.3.28:國際象棋棋盤上的車
- 電子棋盤(二)——戰棋地形的多樣性
- n皇后問題--回溯法,以DFS的方式搜尋
- 【每日一題】 688. 騎士在棋盤上的機率每日一題
- DFS序例題+感受
- 第七章 遞迴、DFS、剪枝、回溯等問題 ------------- 7.3 題解:機器人走方格問題遞迴機器人
- 一組簡單一點的題目(六) B – 小兔的棋盤
- turtle繪製國際象棋棋盤
- 馬踏棋盤演算法(騎士周遊問題)----遞迴與貪心優化演算法演算法遞迴優化
- ssh問題之覆盤
- 【題目整理】dfs入門
- CSP歷年複賽題-P3956 [NOIP2017 普及組] 棋盤
- dfs深度優先搜尋解決迷宮類問題(遍歷)
- 413周賽·第一題 - 3274. 檢查棋盤方格顏色是否相同
- 資料結構:稀疏棋盤的實現資料結構
- Processing 網格紋理製作(棋盤格)
- 9路棋盤識別-程式碼備份
- 第九屆藍橋杯省賽C++A組 倍數問題(dfs)C++
- 16×16大小棋盤的五子棋小程式 Java實現Java
- dfs題目這樣去接題,秒殺leetcode題目LeetCode
- 模板題目:DFS (130. Surrounded Regions)
- 迴圈_推導式_繪製棋盤_函式函式
- 【每日一題】1812. 判斷國際象棋棋盤中一個格子的顏色每日一題
- Luogu P5089 元素週期表 / Codeforces 1012B Chemical table 題解 [ 並查集 ] [ 二分圖 ] [ 圖論建模 ] [ 棋盤覆蓋問題 ]並查集圖論
- Flutter_Webview 鍵盤彈出問題FlutterWebView