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

POJ 1231(简单搜索)

时间:2019-10-03 18:19:18      阅读:70      评论:0      收藏:0      [点我收藏+]

标签:dfs   rap   节点   iostream   char   out   turn   cstring   fine   

没什么意思,注意下细节
//#include<bits/stdc++.h> #include<iostream> #include<cstdio> #include<cstring> #define inf (0x3f3f3f3f) using namespace std; const int maxn = 16; char Grape[maxn][maxn]; bool vis[maxn]; int n,k,ans; void dfs(int row,int num) { if(num==k) { ++ans; return; } if(row>n) return; for(int i=1;i<=n;++i) { if(Grape[row][i]==‘#‘&&!vis[i]) {//对于每一个地图的未访问过节点 vis[i] = true; dfs(row+1,num+1); vis[i] = false; } } dfs(row+1,num);//(SB了,不放旗子时是不需要有位置可以的)拿出循环外,找了n久,一直TLE } int main() { ios::sync_with_stdio(false); cin.tie(0),cout.tie(0); while(cin>>n>>k) { if(n==-1) break; for(int i=1;i<=n;++i) for(int j=1;j<=n;++j) cin>>Grape[i][j]; memset(vis,false,sizeof(vis));//每一列 ans = 0; dfs(1,0); cout<<ans<<‘\n‘; } }

  

POJ 1231(简单搜索)

标签:dfs   rap   节点   iostream   char   out   turn   cstring   fine   

原文地址:https://www.cnblogs.com/newstartCY/p/11620201.html

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