jiajianhao
#include<stdio.h>
int map[4][4]={ 0,1,0,0,
0,0,0,0,
0,0,0,0,
0,1,0,0};
int flag=0;
int minci=99999;
int qi[16];
int zhenqi[16];
void fan(int x,int y)
{
map[x][y]^=1;
for(int i=0;i<4;i++)
{
map[x][i]^=1;
map[i][y]^=1;
}
/*for(int i=0;i<4;i++)
{
for(int j=0;j<4;j++)
{
printf("%d ",map[i][j]);
}
printf("\n");
}printf("\n");*/
}
void dfs(int step,int ci)
{
if(ci>minci)
return;
for(int i=0;i<4;i++)
{
for(int j=0;j<4;j++)
{
if(map[i][j]!=0)
{
flag=1;
break;
}
}
if(flag==1)
break;
}
if(flag!=1&&minci>ci)
{
minci=ci;
flag=0;
for(int i=0;i<ci;i++)
{
zhenqi[i]=qi[i];
}
return;
}
flag=0; if(step==16)
{
return;
}
fan(step/4,step%4);
qi[ci]=step;
dfs(step+1,ci+1);
fan(step/4,step%4);
dfs(step+1,ci);
}
int main()
{
dfs(0,0);
printf("%d\n",minci);
for(int i=0;i<minci;i++)
printf("%d %d\n",zhenqi[i]/4+1,zhenqi[i]%4+1);
return 0;
}
jiajianhao的更多相关文章
随机推荐
- Python系统命令操作
系统命令 1.call 执行命令,返回状态码 ret = subprocess.call(['ls', '-l'], shell=False) ret = subprocess.call('ls -l ...
- bootstrap使用心得及css模块化的初步尝试
第一次用bootstrap到实战项目,是一个企业门户站,可以说是强行拿bootstrap上来练手,感觉并不适合. 我是用的less编译bootstrap文件,直接改less变量.然后把不可重用的部分, ...
- ++i vs i++
[分析] i++与++i哪个效率更高? (1)在内建数据类型的情况下,效率没有区别: (2)在自定义数据类型Class的情况下,++i效率更高! 自定义数据类型的情况下:++i返回对象的引用:i++总 ...
- 我常用的crontab命令
命令简介 crontab-操作每个用户的守护程序和该执行的时间表.部分参数说明crontab file [-u user]-用指定的文件替代目前的crontab.crontab-[-u user]-用 ...
- Python之路,Day2 - Python基础2
def decode(self, encoding=None, errors=None): """ 解码 """ ""& ...
- Map java中的map 如何修改Map中的对应元素
Map java中的map 如何修改Map中的对应元素 Map以按键/数值对的形式存储数据,和数组非常相似,在数组中存在的索引,它们本身也是对象. Map的接口 Map ...
- yii2.0 框架邮件的发送
第一步: 在main-local.php中的components中配置mailer: $config = [ 'components' => [ 'mailer' => [ 'class' ...
- vim使用技巧
1.vim 编辑下内容复制.剪切到windows下 "+y 或 "+d 2.从win 复制到 vim CTRL+Shift+v 3.选择文字 v+方向键
- Jetty使用教程(四:24-27)—Jetty开发指南
二十四.处理器(Handler ) 24.1 编写一个常用的Handler Jetty的Handler组件用来处理接收到的请求. 很多使用者不需要编写Jetty的Handler ,而是通过使用Serv ...
- Nginx反向代理的工作方式
如图所示: 当客户端发来HTTP请求时,Nginx并不会立刻转发到上游服务器,而是先把用户的请求(包括HTTP包体)完整地接收到Nginx所在服务器的硬盘或者内存中,然后再向上游服务器发起连接,把缓存 ...