ZOJ-1002 Fire Net
来源:互联网 发布:js创建json数组对象 编辑:程序博客网 时间:2024/06/06 02:48
//这道题太经典了,刚开始还不晓得怎么做,然后看看解题报告,秒懂。。。。。,很难想到的就是以k从1到n*n递增,k/n表示x轴坐标,k%n表示y轴坐标。
AC代码:
#include<stdio.h>#include<string.h>#define max 12char map[max][max];int n,sum;int can(int x,int y){ int i; for(i=x-1;i>=0;i--) { if(map[i][y]=='O') { return 0; } if(map[i][y]=='X') { break; } } for(i=y-1;i>=0;i--) { if(map[x][i]=='O') { return 0; } if(map[x][i]=='X') { break; } } return 1;}void dfs(int k,int min){ if(k==n*n) { if(min>sum) { sum=min; return; } } else { int x=k/n; int y=k%n; if(map[x][y]=='.'&&can(x,y)) { map[x][y]='O'; dfs(k+1,min+1); map[x][y]='.'; } dfs(k+1,min); }}int main(){ while(scanf("%d",&n)!=EOF&&n) { int i; for(i=0;i<n;i++) { scanf("%s",map[i]); } sum=0; dfs(0,0); printf("%d\n",sum); } return 0;}
0 0
- ZOJ-1002-Fire Net
- ZOJ 1002 Fire Net
- ZOJ 1002 Fire Net
- ZOJ 1002 Fire Net
- zoj 1002 Fire Net
- zoj 1002 Fire Net
- ZOJ 1002 Fire Net
- ZOJ 1002 Fire Net
- ZOJ 1002 Fire Net
- ZOJ 1002 Fire Net
- zoj 1002 Fire Net
- ZOJ 1002 Fire Net
- zoj 1002 Fire Net
- zoj 1002 Fire Net
- zoj 1002 Fire Net
- ZOJ-1002 Fire Net
- ZOJ 1002 Fire Net
- ZOJ 1002 Fire Net
- jsp常用指令
- 然而马云并没有收购车投网
- 11g RAC 加节点 之 手动添加vip 资源
- 杭电1073 Online Judge
- MFC学习笔记.day03-菜单,图形标记菜单创建,菜单栏禁用,命令响应,右键弹出菜单,添加菜单
- ZOJ-1002 Fire Net
- phpstrom内置服务器的坑
- 文章标题
- tomcat中建立基于端口号的虚拟主机
- 一个ORM的实现(附源代码)
- 编写nios-shell时想到的问题-回车vs换行
- HDU 1754 I Hate It(线段树)
- RHEL5中无法添加安装软件的解决方法
- canvas和paint画劳力士表盘