题目来源:树中的最长路解题思路:枚举每一个点作为转折点t,求出以t为根节点的子树中的‘最长路’以及与‘最长路’不重合的‘次长路’,用这两条路的长度之和去更新答案,最终的答案就是这棵树的最长路长度。只要以类似后序遍历的方式依次访问每个结点,从下往上依次计算每个结点的first值和second值,我就能...
分类:
其他好文 时间:
2014-11-08 22:05:53
阅读次数:
335
题意:给出一些字符串,默认所有字符间存在着某种偏序(如果输入满足时,为良序)关系,如{"free", "gbk", "atoi"},每一个字符串中排在前面的字符总是小于等于排在后面的字符。解题思路是把每一个字符串中任意两个相邻字符看做是 auxQueue = new java.util.Linked...
分类:
编程语言 时间:
2014-11-08 22:03:52
阅读次数:
366
题意就是拓扑排序,要求1的序号尽可能小,然后2的序号尽可能小,3,4...一开始很容易想到直接贪心,每次选一个入度为0的点,如果有多个,就选编号最小的那个,但是很容易找到反例。看了下题解,应该是反着做拓扑排序,每次取编号最大的,但是没有人给出证明。下面给出我的证明,欢迎指出错误。ps:参考了一位大牛...
分类:
其他好文 时间:
2014-11-08 18:10:53
阅读次数:
200
题目来源:基因工程解题思路:假设基因序列长度为N,则需要计算基因序列前K个和后K个相同所需要的最少改变次数sum。假设基因序列为 ATACGTCT (即M=8),K=6;interval=M-K=2; 0 1 2 3 4 5 6 7sq1 A T A C G T C Tsq2 A C GT...
分类:
其他好文 时间:
2014-11-08 00:44:48
阅读次数:
365
题目来源:补提交卡解题思路:假设未提交程序的天数为:a1,a2,....,an,补交的张数为M。依次从a1,a2,....,an中去掉连续的 K 天(0 sum ? max : sum;17 }18 return max;19 }20 21 //从下标...
分类:
其他好文 时间:
2014-11-08 00:42:33
阅读次数:
310
拓扑排序模板。 1 #include 2 #include 3 #include 4 using namespace std; 5 #define N 10001 6 vectorG[N]; 7 stackS; 8 int n,m,x,y,ru[N],tot; 9 int main()10 {11 ...
分类:
编程语言 时间:
2014-11-06 12:33:48
阅读次数:
232
题目来源:后序遍历解题思路:开始时我只知道先通过先序、中序求出二叉树,然后再后序遍历二叉树,这当然也是一种解题思路,但是会做一些无用功,比如:计算二叉树。其实,可以直接通过先序序列和中序序列直接求出后序序列的。思路如下:1、取先序序列的第一个节点为根节点;2、在中序序列中找到根节点的下标,将中序序列...
分类:
其他好文 时间:
2014-11-06 10:29:52
阅读次数:
166
题目地址:POJ 3683
第一次做需要输出可行解的题目。。。大体思路是先用强连通来判断是否有可行解,然后用逆序建图,用拓扑排序来进行染色,然后输出可行解。具体思路见传送门
因为判断的时候少写了一个等号。。检查了好长时间。。sad。。。
代码如下:
#include
#include
#include
#include
#include
#include
#include
#...
分类:
其他好文 时间:
2014-11-05 23:10:02
阅读次数:
218
题目来源:国庆出游解题思路(下面是大神的写的):把题目中的序列称作S,树称作T。那么对于S中的任意节点x,x的子孙节点如果在S出现的话,那么这个子孙节点的位置是有一定要求的:x的所有子孙节点在S中的位置都恰好紧跟在x的后面,没有被其他节点隔开。设x的子孙节点是abcd,那么--xabcd--, --...
分类:
其他好文 时间:
2014-11-05 14:25:47
阅读次数:
320
定比赛名次Time Limit:1000MSMemory Limit:32768KB64bit IO Format:%I64d & %I64uSubmitStatusPracticeHDU 1285Description有N个比赛队(1#include#include#includeusing na...
分类:
编程语言 时间:
2014-11-04 19:31:07
阅读次数:
199