1 /* 2
题意:给出N个单词,一个单词的头字母和另一个单词的尾字母相同则可以相连,问这N个单词是否能完全相连成一行 3 4 题解:求欧拉路径 5
首先以每个单词的首字母和尾字母为点并且连边,然后用DFS求该图是否连通,然后根据点的入度和出度判断是否存在 6 欧拉路径或者欧拉回路(存在回路也是.....
分类:
其他好文 时间:
2014-05-08 13:48:48
阅读次数:
262
上一篇刚刚学习了C++图的实现,今天对深度优先搜索(DFS)进行了一定学习,并作出一定实现。在本文中图的实现,以及相应的函数调用(如获得第一个邻接顶点、获得下一个邻接顶点等)均是基于上文中的实现,故如果想参考测试代码,还需导入上文中相应的类定义。关于C++图的实现可参考此处,这里实现了对图的邻接表....
分类:
其他好文 时间:
2014-05-08 09:06:19
阅读次数:
296
参考算法导论第三版中译本,DFS的Pseudocode如下: 1 DFS(G) 2 for
each vertex u ∈ G.V 3 u.color = WHITE 4 u.π = NIL 5 time = 0 6 for each ve...
分类:
其他好文 时间:
2014-05-08 06:44:52
阅读次数:
380
OJ题目:click here~~
树上的01背包
const int maxn = 102;
int val[maxn];
int w[maxn];
vector g[maxn];
int dp[maxn][maxn];
int n , m ;
void dfs(int u , int father){
int v , i , j , k;
for(i = w[u];i...
分类:
其他好文 时间:
2014-05-08 05:09:28
阅读次数:
323
题目链接:
http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=3736
Pocket Cube
Time Limit: 2 Seconds Memory Limit: 65536 KB
Pocket Cube is a 3-D combination puzzle. It is a 2 ×...
分类:
其他好文 时间:
2014-05-07 23:53:24
阅读次数:
709
挺不错的一道题,首先可以知道若存在形如 k
所以对于这样的i,j我们连一条边,然后dfs染色,若染色中发现相邻点颜色相同,则无解,否则我们按照1,2,1,2的顺序染色。
确定了每一个数属于哪个栈后,用2个stack模拟一下就好了。
#include
#include
#include
#include
#include
using namespace std;
int n,to...
分类:
其他好文 时间:
2014-05-07 23:49:17
阅读次数:
441
题目链接:click here~
此题我估计是加强过数据,在我纠结了很久的时候我交了好几份网上的代码不是WA就是TLE。在我很迷茫的时候我又交了一份,AC了(虽然我用随机数据找到了他代码一个不能过的数据)。
给了我信心,然后我拿他的代码用随机数跟我的代码进行测试,再用FC找不同。。发现了一个致命的错误,一般来说,BFS或者DFS都是需要有一个vis数组或者哈希来判重,但是此题判重是有很大问题的...
分类:
其他好文 时间:
2014-05-07 22:48:42
阅读次数:
400
题目链接:点击打开链接
题意:rt
思路:从最低位开始构造,若x位的平方数是自身则继续构造。
mark:
#pragma comment(linker, "/STACK:1024000000,1024000000")
#include
#include
#include
#include
#include
#include
#include
#include
#include
#inc...
分类:
其他好文 时间:
2014-05-07 11:59:23
阅读次数:
303