java 熄灯问题_遍历搜索空间的例子:熄灯问题
//遍历搜索空间的例子:熄灯问题
#include
int puzzle[6][8],press[6][8];
bool guess()
{
int c,r;
for(r=1;r<5;r++)
for(c=1;c<7;c++)
press[r+1][c]=(puzzle[r][c]+press[r][c]+press[r-1][c]+press[r][c-1]+press[r][c+1])%2;
for(c=1;c<7;c++)
if((press[5][c-1]+press[5][c]+press[5][c+1]+press[4][c])%2!=puzzle[5][c])
return false;
return true;
}
void enumate()
{
int c;
bool success;
for(c=1;c<7;c++)
press[1][c]=0;
while(guess()==false)
{
press[1][1]++;
c=1;
while(press[1][c]>1)
{
press[1][c]=0;
c++;
press[1][c]++;
}
}
return;
}
int main()
{
int cases,i,r,c;
scanf("%d",&cases);
for(r=0;r<6;r++)
press[r][0]=press[r][7]=0;
for(c=1;c<7;c++)
press[0][c]=0;
for(i=0;i
{
for(r=1;r<6;r++)
for(c=1;c<7;c++)
scanf("%d",&puzzle[r][c]);
enumate();
printf("PUZZLE #%d\n",i+1);
for(r=1;r<6;r++)
{
for(c=1;c<7;c++)
printf("%d ",press[r][c]);
printf("\n");
}
}
return 0;
}
posted on
2015-07-20 22:18
_noname
阅读(95)
评论(0)
编辑
收藏
java 熄灯问题_遍历搜索空间的例子:熄灯问题相关推荐
- 枚举--遍历搜索空间的例子:熄灯问题
问题描述 有一个由按钮组成的矩阵,其中每行有6 个按钮,共5 行.每个按钮的位置上有一盏灯. 当按下一个按钮后,该按钮以及周围位置(上边.下边.左边.右边)的灯都会改变一次.即, 如果灯原来是点亮的, ...
- java hashmap is遍历_关于内存:在Java(或Scala)中遍历HashMap的HashMap
我创建了一个类Foo,该类具有返回Array的方法toArray(). 现在,我有一个将字符串映射到HashMaps的HashMap,后者将对象映射到Foo.那是: HashMap> 我想创建一 ...
- java的list遍历_【java】list集合遍历的5种方式
平凡也就两个字: 懒和惰; 成功也就两个字: 苦和勤; 优秀也就两个字: 你和我. 跟着我从0学习JAVA.spring全家桶和linux运维等知识,带你从懵懂少年走向人生巅峰,迎娶白富美! 关注微信 ...
- 学习笔记:Java 并发编程⑥_并发工具_JUC
若文章内容或图片失效,请留言反馈. 部分素材来自网络,若不小心影响到您的利益,请联系博主删除. 视频链接:https://www.bilibili.com/video/av81461839 配套资料: ...
- Java 多维数组遍历
多维数组 数组是Java中的一种容器对象,它拥有多个单一类型的值.当数组被创建的时候数组长度就已经确定了.在创建之后,其长度是固定的.下面是一个长度为10的数组: 1 2 3 4 public cla ...
- java使用htmlparser提取网页纯文本例子
转载自 java使用htmlparser提取网页纯文本例子 这篇文章主要介绍了java使用htmlparser提取网页纯文本例子,需要的朋友可以参考下 package com.test; impo ...
- 学习笔记:Java 并发编程①_基础知识入门
若文章内容或图片失效,请留言反馈. 部分素材来自网络,若不小心影响到您的利益,请联系博主删除. 视频链接:https://www.bilibili.com/video/av81461839 视频下载: ...
- 学习笔记:Java 并发编程②_管程
若文章内容或图片失效,请留言反馈. 部分素材来自网络,若不小心影响到您的利益,请联系博主删除. 视频链接:https://www.bilibili.com/video/av81461839 配套资料: ...
- 学习笔记:Java 并发编程④_无锁
若文章内容或图片失效,请留言反馈. 部分素材来自网络,若不小心影响到您的利益,请联系博主删除. 视频链接:https://www.bilibili.com/video/av81461839 配套资料: ...
- Java编程题_面向对象和常用API01_B级
Java编程题_面向对象和常用API01_B级 第1题 面向对象.异常.集合.IO 题干: 请编写程序,完成键盘录入学生信息,并计算总分将学生信息与总分一同写入文本文件 需求:键盘录入3个学生信息(姓 ...
最新文章
- 手动设计简单的Token验证
- 在windows下用VMware虚拟机来安装linux
- VMWare 环境下devstack创建虚拟机报错及修改nova-api返回数据得条目
- forager有多少个机器人_诠视科技:VSLAM技术进展让移动机器人自主行驶有了更广阔的空间...
- 5008.vs2015创建c++动态库
- android 拍摄二维码图片 变形矫正_鼻中隔先天偏曲矫正特殊案例——我为何给她做了两次手术...
- lempel ziv matlab,精讲Lempel-Ziv压缩算法
- python求斜边上的高是多少厘米_已知一个直角三角形的两条直角边,如何求斜边上的高的长度...
- mysql ipv6 字段_MySQL中ipv6地址用什么类型存储?
- 10款暗色质感和黑白效果LR预设
- cannot uninstall a distutils installed project'
- [ukulele]入门指南
- 华东康桥计算机音乐,感受人文至美 华东康桥2019年第二届音乐飨宴盛大开幕
- 【数据结构——图和图的存储结构】
- 读《计算机网络》——深入浅出——以考研为目标学技术面试知识二刷计网——网络层
- R语言中实现线性回归+l_0范数变量选择的包abess
- maven自带clean_Maven生命周期(示例代码)
- Mac OS X 常用应用程序介绍
- 盛迈坤电商:拼多多开店需要掌握的开店基础
- i.MX8m mini核心板及开发板介绍(MYC-C8MMX)