POJ2965-The Pilots Brothers' refrigerator
来源:互联网 发布:mysql 删除外键 编辑:程序博客网 时间:2024/05/21 08:40
与POJ1753思想基本一致,刚开始用栈记录路径,结果超时,后来想用两个数组覆盖路径即可。
#include <cstdio>#include <cstring>#include <algorithm>#include <stack>#include <cmath>#include <set>#include <iostream>const double PI=acos(-1.0);using namespace std;typedef long long ll;bool str[6][6];int Row[20],Col[20],k;int flag,step;bool judge_all(){ for(int i=1;i<5;i++) { for(int j=1;j<5;j++) { if(str[i][j]!=true) return false; } } return true;}void flip(int row,int col){ for(int i=1;i<5;i++) { str[row][i]=!str[row][i]; str[i][col]=!str[i][col]; } str[row][col]=!str[row][col];}void dfs(int row,int col,int deep){ if(deep==step) { if(judge_all()) { flag=1; } return ; } if(row>4||flag) { return ; } flip(row,col); Row[deep]=row; Col[deep]=col; if(col<4) dfs(row,col+1,deep+1); else dfs(row+1,1,deep+1); flip(row,col); if(col<4) dfs(row,col+1,deep); else dfs(row+1,1,deep); return ;}int main(){ for(int i=1;i<5;i++) { for(int j=1;j<5;j++) { char temp; cin>>temp; if(temp=='-') str[i][j]=true; else str[i][j]=false; } } flag=0; for(step=0;step<=16;step++) { dfs(1,1,0); if(flag) break; } printf("%d\n",step); for(int i=0;i<step;i++) { printf("%d %d\n",Row[i],Col[i]); } return 0;}
0 0
- POJ2965 The Pilots Brothers' refrigerator
- POJ2965----The Pilots Brothers' refrigerator
- poj2965 The Pilots Brothers' refrigerator
- POJ2965-The Pilots Brothers' refrigerator
- poj2965--The Pilots Brothers' refrigerator
- poj2965 The Pilots Brothers' refrigerator
- poj2965 The Pilots Brothers' refrigerator
- The Pilots Brothers' refrigerator Poj2965
- POJ2965-The Pilots Brothers' refrigerator
- POJ2965-The Pilots Brothers' refrigerator
- poj2965-The Pilots Brothers' refrigerator
- poj2965-The Pilots Brothers' refrigerator
- poj2965 The Pilots Brothers' refrigerator
- POJ2965-The Pilots Brothers' refrigerator
- poj2965 The Pilots Brothers\' refrigerator
- poj2965 The Pilots Brothers' refrigerator
- POJ2965 The Pilots Brothers' refrigerator 枚举
- poj2965——The Pilots Brothers' refrigerator
- 在腾讯云安装PHPMyAdmin的过程
- 广告分析
- CentOS7下Mysql Cluster 7.4安装配置
- C#的第五节课
- Android Xutils框架使用详解
- POJ2965-The Pilots Brothers' refrigerator
- 8086汇编语言 U命令查看指定内存处内容翻译成的指令
- greendao数据库框架
- Python学习笔记(1)—文件操作
- jsp-servlet监听器
- 上下界网络流
- 算法日记(Java实现)第20160717(3)期——POJ1005/POJ1006
- Nginx配置文件nginx.conf中文详解
- Hadoop高级编程之--Oozie