![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据结构
文章平均质量分 77
普通网友
这个作者很懒,什么都没留下…
展开
-
POJ 1840 Eqs
<br />题意:求方程 a1*x1^3 + a2*x2^3 + a3*x3^3 + a4*x4^3 + a5*x5^3=0的整数解个数,其中,-50<=ai,xi<=50,且xi!=0。输入给出ai。<br />思路:将算式化成 a1*x1^3 + a2*x2^3 =-( a3*x3^3 + a4*x4^3 + a5*x5^3),先求出左边所有的可能值,存入哈希表,再枚举右边的x3,x4,x5,对解计数即可。<br />我犯的错误:我一开始写的hash搜索函数,在找到一个之后立刻返回,因为有重复的,应该找原创 2010-10-19 17:22:00 · 304 阅读 · 0 评论 -
POJ 2513 Colored Sticks
这个题目涉及了多个基本数据结构和算法,虽然简单,但是比较综合。知识考查点:1,字典树;2,欧拉路:其中又考察了判断是否为连通图;3,并查集;一:图是联通的,将木棍两头的颜色并起来,如果最后有颜色的boss不一样,说明不能连成一条线,impossible。二:每种颜色的个数要么全为偶数,要么有且仅有两个点的度数为奇数,否则,impossible。<br />可以一边插入字典树,一边记录颜色的编号,一边进行并查集操作。<br />#include <iostream> #include <cstdio> #原创 2010-10-28 16:22:00 · 417 阅读 · 0 评论 -
POJ 3253 Fence Repair
本题是简单的赫夫曼,因为每次将他们分开两半的时候都要按照长度收费,也就是说第一次被分开的只收费了一次,第二次被分开的收费了二次(因为前面已经收费了一次)......第n次分开的要收费n次。就是求如何合理的安排是的总费用最小,这是典型的最优生成树的问题,本题可以不用建树,根据所给的数据计算一下总的权值即可。 本题虽简单,但还是水了一把,主要是对总权值的计算理解错了,每次从优先队列中拿出两个最小的算出和,总全职加上这个和,然后把这个和插入到优先队列里。还有,数据量比较大,总权值用long原创 2010-10-27 16:59:00 · 302 阅读 · 0 评论 -
Ural 1136. Parliament
<br /> 应该算是一道数据结构题吧,但是放到了ural的图论专区了,给出一棵二叉搜索树按左、右、中的顺序输出的序列,求按右、左、中顺序输出的序列。解法是对于二叉搜索树后序输出的序列,将序列从后到前的顺序加入二叉搜索树,就可以还原出树来(同样对于先序的序列,可以从前到后加入),建好树后,再按右、左、中顺序输出,就可以了。当然,也可以不建树,直接递归模拟出来。<br />#include <cstdio> using namespace std; int dat[3002]; bool原创 2010-11-04 19:37:00 · 536 阅读 · 0 评论 -
遍历二叉树的各种操作
http://blog.csdn.net/hackbuteer1/article/details/6583988转载 2015-05-05 15:38:08 · 333 阅读 · 0 评论