07 2014 档案

摘要:正如书上所说,本题需要用IDA*算法求解启发函数是3d+h>3maxd(d为当前操作步骤数,h为当前逆序对数,maxd为当前枚举的最大步骤数)可见迭代递归的核心思想是枚举ans去dfs是否可行,相反常规搜索是dfs去需找ans。一开始卡在状态图的转移与回溯上,参考(http://blog.csdn.... 阅读全文
posted @ 2014-07-31 17:47 ACBingo 阅读(606) 评论(1) 推荐(0)
摘要:搜索+剪枝如此水的一个题,居然搞了一上午出错在bfs与dfs时共用了一个vis数组,导致bfs完后返回dfs应该能访问到的点访问不到自己想怎么剪枝,想了几个剪枝方法,又证明,又推翻,再想,再证明,再推翻用了好长时间T T自己还是水的不行啊两个剪枝:1.若,当前求出来的解now的长度+当前状态下从no... 阅读全文
posted @ 2014-07-31 12:01 ACBingo 阅读(362) 评论(0) 推荐(0)
摘要:刘儒家翻译的走出的图形可以自交,不知道大家是怎么理解的,反正我是认为这句话的意思是告诉我允许一个点访问多次这样是WA的,n=15和n=16时多输出很多数据,应该是不允许自交,也就是不允许一个点访问多次。(找这个错花了我整整一下午的时间,总之找出来了还是蛮开心的)#include #include #... 阅读全文
posted @ 2014-07-30 12:48 ACBingo 阅读(370) 评论(0) 推荐(0)
摘要:要事先判断结点1能否到达K,否则真的会超时的= =(我一开始不信,感觉应该能正常退出dfs啊,结果真的超时了)我是判断的k是否与其他结点有路,是的话才dfs(数据水,居然过了)#include #include #include #include #include #include #define ... 阅读全文
posted @ 2014-07-29 16:31 ACBingo 阅读(472) 评论(0) 推荐(0)
摘要:反正书上讲的把我搞得晕头转向的,本来就困,越敲越晕......转网上一个大神写的吧,他分析的很好(个人感觉比书上的清楚多了)转:http://blog.csdn.net/u010536683/article/details/12450865 阅读全文
posted @ 2014-07-29 15:33 ACBingo 阅读(220) 评论(0) 推荐(0)
摘要:注意1堆的时候,pile后面没有s!!!!因为这个WA了一次,否则就1A了犯了一个很幼稚很幼稚的错误,申请ans[]后玩了吧ans置0,结果调了好长好长时间,本来是敲完就能过的T T啊啊啊啊啊啊,一个多小时没了啊附上我调试时写的代码(把每一次运转都输出了= =一个一个看的,真心用了好长时间,头都大了... 阅读全文
posted @ 2014-07-29 09:44 ACBingo 阅读(169) 评论(0) 推荐(0)
摘要:带状态的bfs不是1A过的T T ,一开始TLE,改了下后WA...后来把访问状态数组改成了3维的,加了个维是当前的命条数仍是bfs模板题,加了一维状态而已,没啥难度自己注意一定注意vis不要丢维度...#include #include #include #include #include #in... 阅读全文
posted @ 2014-07-28 19:09 ACBingo 阅读(829) 评论(0) 推荐(0)
摘要:BFS模板大水题虽然是大水题,但是1A过的还是蛮开心的~感觉需要注意的地方就是下标要ch-'b'(有些人比如我总是习惯性的减a,这题下标是从1开始的,当然你就是从0开始当我没说= =)...减a的会在样例h8过不去的#include #include #include #include #inclu... 阅读全文
posted @ 2014-07-28 17:15 ACBingo 阅读(176) 评论(0) 推荐(0)
摘要:说实话,这题参考的:http://blog.csdn.net/u013382399/article/details/38227917倒着BFS就把我难住了T T,原来这样倒着BFS一遍,遍历完所有的点后就能得到每一点到终点的最短距离啊(其实做完反思后仔细想了想,发现其实当第一次bfs到首节点时,该图... 阅读全文
posted @ 2014-07-28 16:47 ACBingo 阅读(574) 评论(0) 推荐(1)
摘要:给出n个单词,如果一个单词的尾和另一个单词的头字符相等,那么可以相连,问这n个单词是否可以排成一列。欧拉路应用,构图:一个单词的头尾字母分别作为顶点,每输入一个word,该word的头指向word的尾画一个有向边,并且记录每个顶点的出入度。利用dfs先判断是否为一个连通图,如果是的话则判断是否有且仅... 阅读全文
posted @ 2014-07-28 13:01 ACBingo 阅读(330) 评论(0) 推荐(0)
摘要:#include #include #include #include #include #include #include using namespace std;const char*dirs="NESW";const char*turns="FLR";int r0,c0,dir,r1,c1,r... 阅读全文
posted @ 2014-07-26 17:45 ACBingo 阅读(319) 评论(1) 推荐(0)
摘要:#include #include int main(){ int n; scanf("%d", &n); char s[100]; while(n--) { scanf("%s", s); int len = strlen(s); ... 阅读全文
posted @ 2014-07-25 23:17 ACBingo 阅读(466) 评论(0) 推荐(0)
摘要:#include #include #include using namespace std;int main(){double c,h,o,n;int t,i,j;cin>>t;getchar();double ans;char s[100];while (t-->0){gets(s);c=0;h... 阅读全文
posted @ 2014-07-25 23:16 ACBingo 阅读(970) 评论(0) 推荐(0)
摘要:#include #include #include using namespace std;int main(){ char s[100]; int i,j,n,ans; cin>>n; getchar(); while (n>0) { n--; ... 阅读全文
posted @ 2014-07-25 23:15 ACBingo 阅读(384) 评论(0) 推荐(0)
摘要:水题,1A过的数据才100,o(n^3)都能过,感觉用优先队列来做挺麻烦的,直接暴力就可以了,模拟的队列,没用stl#include #include #include #include #include #define maxn 100+5using namespace std;int mid[m... 阅读全文
posted @ 2014-07-24 16:20 ACBingo 阅读(426) 评论(0) 推荐(0)
摘要:这题居然是1A过的.....最近无比失落的心情顿时愉悦起来~将数据全部读入先用二维数据来存储坐标(先把题做出来再说= =)题目中的x,y的坐标范围是-1W到1W....在数组下标里是不能用负数保存的(当然你偏用map当额没说= =),其实可以把x坐标左移1W个单位,这样最小坐标就从0开始了然后随便找... 阅读全文
posted @ 2014-07-24 14:57 ACBingo 阅读(642) 评论(0) 推荐(0)