码迷,mamicode.com
首页 > 其他好文 > 详细

A - 棋盘问题 POJ - 1321

时间:2018-04-03 22:00:57      阅读:157      评论:0      收藏:0      [点我收藏+]

标签:标记   ios   use   memset   bool   std   post   poj   bsp   

 1 //纯dfs()
 2 
 3 #include <iostream>
 4 #include <algorithm>
 5 #include <string>
 6 #include <cstdio>
 7 #include <cstring>
 8 
 9 using namespace std;
10 const int maxn = 10;
11 char g[maxn][maxn];
12 bool vis[maxn];        //列标记
13 int n, k;
14 int ans;
15 
16 void dfs(int nowx,int num){
17     if (num == k){
18         ans++;
19         return;
20     }
21     
22     if (nowx >= n)    //越界
23         return;
24 
25     for (int i = 0; i < n; i++){
26         if (g[nowx][i] == # && !vis[i]){
27             vis[i] = 1;
28             dfs(nowx + 1, num + 1);
29             vis[i] = 0;
30         }
31     }
32     dfs(nowx + 1, num);
33     return;
34 }
35 
36 int main(){
37     while (~scanf("%d %d", &n, &k)){
38         if (n == -1 && k == -1)
39             break;
40         ans = 0;
41         memset(vis, 0, sizeof(vis));
42         for (int i = 0; i < n; i++){
43             scanf("%s", &g[i]);
44         }
45         dfs(0, 0);
46         printf("%d\n", ans);
47     }
48     //system("pause");
49     return 0;
50 }

 

A - 棋盘问题 POJ - 1321

标签:标记   ios   use   memset   bool   std   post   poj   bsp   

原文地址:https://www.cnblogs.com/jaydenouyang/p/8711074.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!