ZOJ 1354 Extended Lights Out(枚举)
来源:互联网 发布:演唱会门票制作软件 编辑:程序博客网 时间:2024/05/21 07:10
枚举第一行的64种可能,然后对于除第一行的每一个i,j值,若[i-1,j]亮着灯就要把[i,j]开关开起来关掉[i-1,j]的灯
#include <iostream>#include <cstdio>#include <vector>using namespace std;bool maze[5][6],ans[5][6],temp[5][6];int cnt[5][6];int di[]={0,-1,1,0,0},dj[]={0,0,0,-1,1};vector<int>stak;bool dfs(int curi){if(curi==6){memcpy(temp,maze,sizeof(maze));for (int i=0;i<6;++i){if(stak[i]==1){ans[0][i]=1;for (int k=0;k<5;++k){int ni=0+di[k],nj=i+dj[k];if(ni>=0&&ni<5&&nj>=0&&nj<6){temp[ni][nj]^=1;}}}else{ans[0][i]=0;}}for (int i=1;i<5;++i){//只要i-1 j的灯还是亮点的 i j开关就要开起来,关闭掉上面的灯for (int j=0;j<6;++j){if(temp[i-1][j]==1){ans[i][j]=1;for (int k=0;k<5;++k){int ni=i+di[k],nj=j+dj[k];if(ni>=0&&ni<5&&nj>=0&&nj<6){temp[ni][nj]^=1;}}}else{ans[i][j]=0;}}}for (int i=0;i<5;++i){//判断是否全部关闭了for (int j=0;j<6;++j){if(temp[i][j])return false;}}return true;}stak.push_back(1);if(dfs(curi+1))return true;stak.pop_back();stak.push_back(0);if(dfs(curi+1))return true;stak.pop_back();return false;}int main(){int t,cas=1;scanf("%d",&t);while (t--){for (int i=0;i<5;++i){for (int j=0;j<6;++j){int temp;scanf("%d",&temp);maze[i][j]=temp;}}stak.clear();dfs(0);printf("PUZZLE #%d\n",cas++);for (int i=0;i<5;++i){for (int j=0;j<6;++j){if(j>0)printf(" ");printf("%d",ans[i][j]);}printf("\n");}}return 0;}
- poj1222||zoj 1354 Extended Lights Out(枚举)
- ZOJ 1354 Extended Lights Out(枚举)
- ZOJ 1354 Extended Lights Out
- ZOJ 1354 Extended Lights Out——高斯消元法解XOR方程
- POJ 1222 EXTENDED LIGHTS OUT 枚举 || 高斯消元
- uva 1560 - Extended Lights Out(枚举 | 高斯消元)
- POJ 1222 Java: Extended lights out 枚举
- POJ-1222 EXTENDED LIGHTS OUT【暴力枚举】
- Poj-1222-EXTENDED LIGHTS OUT-枚举
- C - Extended Lights Out
- poj EXTENDED LIGHTS OUT
- EXTENDED LIGHTS OUT
- EXTENDED LIGHTS OUT
- poj1222 EXTENDED LIGHTS OUT
- EXTENDED LIGHTS OUT【高斯消元】
- POJ1222 EXTENDED LIGHTS OUT
- Poj1222 EXTENDED LIGHTS OUT
- POJ1222-EXTENDED LIGHTS OUT
- 无路由器情况下多设备使用网络,connectify软件的支持
- JSONKit
- 关于 DataList 、gridview 、 repeter 点击当前行的按钮 获取当前行的某个值
- hdu 单词数
- shell 与 sqlplus 交互
- ZOJ 1354 Extended Lights Out(枚举)
- 双向口 与 准双向口 区别
- 计算机是如何启动的?
- 腾讯抄你肿么办
- 在程序退出时自动清理资源-atexit
- 如何使用Nginx配置虚拟服务器和做负载均衡
- Java Socket编程
- 一个空类会生成哪些默认函数
- 最简单的查询表空间的使用量、剩余量的方法