首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

POJ-1321-棋盘有关问题

2012-08-11 
POJ-1321-棋盘问题POJ-1321-棋盘问题http://poj.org/problem?id1321基本的DFS#includestdio.h#include

POJ-1321-棋盘问题

POJ-1321-棋盘问题

http://poj.org/problem?id=1321

基本的DFS

#include<stdio.h>#include<string.h>#include<stdlib.h>int n,t,ans;char map[10][10];int visit[10];void dfs(int x,int y){int i;if(y==t){ans++;return;}if(x>=n)return;    for(i=0;i<n;i++)  //x行放棋子{        if(!visit[i]&&map[x][i]=='#'){visit[i]=1;dfs(x+1,y+1);visit[i]=0;}}dfs(x+1,y);  //x行不放棋子}int main(){int i;while(scanf("%d%d",&n,&t),n!=-1&&t!=-1){for(i=0;i<n;i++)scanf("%s",map[i]);ans=0;memset(visit,0,sizeof(visit));dfs(0,0);printf("%d\n",ans);}return 0;}


热点排行