Hdu1195 两个四位密码 问你最少多少步能到达 /*Huyyt*/ #include<bits/stdc++.h> #define mem(a,b) memset(a,b,sizeof(a)) #define pb push_back using namespace std; typedef l ...
分类:
其他好文 时间:
2018-08-17 21:32:24
阅读次数:
170
Problem Description Suppose that you are an admiral of a famous naval troop. Our naval forces have got 21 battleships. There are 6 types of battleship ...
分类:
其他好文 时间:
2018-08-01 14:07:31
阅读次数:
121
Problem Description Last night, little erriyue had a horrible nightmare. He dreamed that he and his girl friend were trapped in a big maze separately. ...
分类:
Web程序 时间:
2018-07-30 01:10:52
阅读次数:
214
题意略。 思路: 双向bfs。 如图,对于曼哈顿距离为5的地方来说,除去两端的位置,其他位置的状态不会超过曼哈顿距离为4的地方的状态的两倍。 所以,最大曼哈顿距离为n + m。最多的状态不过2 ^ (n + m)。 这个复杂度我们不能接受,但是如果我们从两边向中间bfs的话, 每次bfs的复杂度为2 ...
分类:
其他好文 时间:
2018-07-21 22:42:45
阅读次数:
242
我们知道,BFS是往广处去搜索,我们把这想象成一个以起点为圆心的一个圆,每向前走一步,就是圆的半径增大一个单位,而圆的每个单位面积上是一种状态,当圆增大到目标点那么大时,找到了答案,搜索结束。那么显然的,当半径较大时,每走一步就会有十分大量的状态需要来储存( S=πr2 )。通常的,我们用“判重”的 ...
分类:
其他好文 时间:
2018-07-15 00:13:45
阅读次数:
141
欸我一直以为双向bfs是搜完一半再搜另一半呢,妹想到是两个一起搜 然后队列里放的结构体里不能直接存答案,所以做一个邻接表一样的东西,直接指向需要的字符即可 记录状态用康托展开来hash 以及居然是多组数据啊?! cpp include include include include using na ...
分类:
其他好文 时间:
2018-06-06 21:58:05
阅读次数:
130
上面有正经的题解,这里说一下优化方案。 这题从单向 BFS 的角度去考虑,不难发现每处理一组数据,整个解答数就要重新构造一遍。也就是不停的做重复工作。 那么不难想到,如果把解答数存下来,那么下次要用,就接着上一次的解答树往下走。 这个想法的好处就是,虽然比朴素的双向 BFS 在某个节点的数据量以下的 ...
分类:
其他好文 时间:
2018-01-28 11:16:57
阅读次数:
147
题目 题目 分析 双向bfs,对着书打的,我还调了好久。 代码 cpp include include include include using namespace std; const int maxs=20,maxn=150; const ...
分类:
其他好文 时间:
2017-12-16 19:44:09
阅读次数:
164
NOIP2017 游记 “然而,我宁可保持这种状态到明年4月,甚至是,2018年7月, 雅礼中学。 然而,如果有然而的话。 然而。” ——临汾一中 cyx ?Day 1 哇,还有两天就NOIP了, 我还有好多好多的东西要学。利用起课间操、空堂、非高考和晚自习,再拼一把吧,能多学一点是一点。 课间操急 ...
分类:
其他好文 时间:
2017-12-03 15:33:44
阅读次数:
245
【SinGuLaRiTy-1043】 Copyright (c) SinGuLaRiTy 2017. All Rights Reserved. 桶排序 优先队列 Set Map Hash IDA* (以 埃及分数 为例) 双向BFS (以 HDU-1195 为例) Time: 2017-10-28 ...
分类:
其他好文 时间:
2017-10-28 20:30:25
阅读次数:
197