博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Checker Challenge chapter 1.5
阅读量:5250 次
发布时间:2019-06-14

本文共 1498 字,大约阅读时间需要 4 分钟。

  思路还是比较清晰,自己写的dfs最后一个超时,还得跑到nocow看题解,大牛门不愧是大牛,我用几十行判断能否placequeue,大牛们一句话就完了...看来还是多看看别人的思路,

不想改了,感觉该就得重写,贴个自己的代码在贴个大牛的,用大牛的过了先...

 

/*ID: hubiao cavePROG: checkerLANG: C++*/#include
#include
#include
#include
#include
using namespace std;struct broad{ int column[15];};list
li;int count;int*xie;int cb[15][15];int threetimez=0;int temp[15];void proc(int row,int column);bool Canplace(int ,int);int main(){ ifstream fin("checker.in"); ofstream fout("checker.out"); fin>>count; xie=new int[(count-2)*4+2+2]; memset(xie,0,(count-2)*4+2+2); proc(1,0); list
::iterator it=li.begin(); int m=3; while (m>0) { int flag=0; for(int i=1;i<=count;i++) { if(!flag) { fout<
column[i]; flag=1; } else { fout<<" "<
column[i]; } } fout<
1&&i
1&&i
1) { if(xie[count-1+column-1]==1||xie[2*count-3+column-1]==1) return false; return true; } } return true;*/}

大牛的

#include
#include
#include
using namespace std;ifstream fin("checker.in");ofstream fout("checker.out");int N;int tot=0;int C[255];int vis[3][255];//这个如果是用[3][14]的话,可能会产生缓冲区溢出。。我懒得试了 就开个大的。。最后还只是用了3K多Kbvoid search(int cur){ int i,j; if(cur==N) { tot++; if(tot<4) { for(int n=0;n
>N; memset(C,0,14); search(0); fout<
<

 

转载于:https://www.cnblogs.com/cavehubiao/p/3263603.html

你可能感兴趣的文章
31 Days of Windows Phone
查看>>
poj 1184(聪明的打字员)
查看>>
Ubuntu下面安装eclipse for c++
查看>>
C#压缩或解压(rar和zip文件)
查看>>
让IE浏览器支持CSS3圆角属性的方法
查看>>
巡风源码阅读与分析---nascan.py
查看>>
LiveBinding应用 dataBind 数据绑定
查看>>
Linux重定向: > 和 &> 区别
查看>>
nginx修改内核参数
查看>>
【欧拉函数模板题】最大公约数
查看>>
C 筛选法找素数
查看>>
TCP为什么需要3次握手与4次挥手(转载)
查看>>
IOC容器
查看>>
织梦仿站第三课:网站的文件分割
查看>>
Windows 2003全面优化
查看>>
URAL 1002 Phone Numbers(KMP+最短路orDP)
查看>>
web_day4_css_宽度
查看>>
用sql删除数据库重复的数据的方法
查看>>
学习笔记21—PS换图片背景
查看>>
electron入门心得
查看>>