题意:给出一个5*6的图,每个灯泡有一个初始状态,1表示亮,0表示灭。每对一个灯泡操作时,会影响周围的灯泡改变亮灭,问如何操作可以使得所有灯泡都关掉。

题解:

这题和上一题几乎完全一样。。就是要输出解。。

然后我发现我回代的过程错了TAT 已修改上一题代码和模版

因为回代的过程合!并!了!

 #include<cstdio>
#include<cstdlib>
#include<cstring>
#include<cmath>
#include<iostream>
#include<algorithm>
using namespace std; const int N=;
int a[N][N],ans[N];
int dx[]={,,,-,};
int dy[]={,,,,-};
int idx(int x,int y){return (x-)*+y;} void output()
{
for(int i=;i<=;i++)
{
for(int j=;j<=;j++)
printf("%d ",a[i][j]);
printf("\n");
}
printf("\n");
} void gauss()
{
int i,j,k,l;
memset(ans,,sizeof(ans));
for(i=,j=;i<= && j<=;j++)
{
for(k=i;k<=;k++)
if(a[k][j]) break;
if(a[k][j])
{
for(l=;l<=;l++) swap(a[i][l],a[k][l]);
for(l=;l<=;l++)//debug从1开始(回代)
{
if(l!=i && a[l][j])
for(k=;k<=;k++)
a[l][k]^=a[i][k];
}
i++;
}
}
for(int j=;j<i;j++) ans[j]=a[j][];
//自由元不是必须按的,则标记为0
} int main()
{
freopen("a.in","r",stdin);
int x,y,T,cas=;
scanf("%d",&T);
while(T--)
{
memset(a,,sizeof(a));
for(int i=;i<=;i++)
for(int j=;j<=;j++)
{
scanf("%d",&a[idx(i,j)][]);
for(int k=;k<=;k++)
{
x=i+dx[k];y=j+dy[k];
if(x> || y> || x< || y<) continue;
a[idx(i,j)][idx(x,y)]=;
}
}
for(int i=;i<=;i++) a[i][i]=;
gauss();
printf("PUZZLE #%d\n",++cas);
for(int i=;i<=;i++)
{
printf("%d ",ans[i]);
if(i%==) printf("\n");
}
}
return ;
}

最新文章

  1. AutoMapper不用任何配置就可以从dynamic(动态)对象映射或映射到dynamic对象。
  2. 开源(免费)三维 GIS(地形,游戏)
  3. [Locked] Closest Binary Search Tree Value &amp; Closest Binary Search Tree Value II
  4. PHP消息队列的实现方式与详解,值得一看
  5. 09、 在QQ音乐中查找七里香这首歌的精彩评论
  6. CSS 边框样式
  7. okvis代码解读
  8. re模块 模块
  9. Python练习-装饰器版-为什么我的用户总被锁定
  10. 检查用户输入信息是否完整(vb.net实现)
  11. AE Scene开发中的观察者模式
  12. 学习Maven之PropertiesMavenPlugin
  13. sublime 在Mac终端下设置快捷打开方式
  14. 网络编程----socketserver多并发实现、FTP上传多并发、udp协议套接字多并发
  15. 跟我一起写Makefile(五)
  16. Exception (3) Java exception handling best practices
  17. Linux命令应用大词典-第21章 LVM和RAID管理
  18. ACM学习历程—POJ1088 滑雪(dp &amp;&amp; 记忆化搜索)
  19. 【32.22%】【codeforces 602B】Approximating a Constant Range
  20. Qt使用com组件的一点小心得(使用Qt自带的工具dumpcpp生成.h和.cpp文件)

热门文章

  1. c# word 删除指定内容
  2. 让我们一起来做最漂亮的Android界面吧!
  3. DAY6敏捷冲刺
  4. 刷ROM必備的clockworkmod recovery
  5. Mybatis实现
  6. OSG学习:位置变换节点示例
  7. Innodb 中 RR 隔离级别能否防止幻读?
  8. html5 js canvas中画星星的函数
  9. BZOJ4869 六省联考2017相逢是问候(线段树+欧拉函数)
  10. POJ3041:Asteroids——题解