自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

DrawnBreak

接受现实的基础上,向未来进发

  • 博客(25)
  • 资源 (1)
  • 收藏
  • 关注

原创 poj2001~自己种的第一颗字典树Trie!

很裸的Trie!注意数组开大点就好了#include<iostream>#include<string>using namespace std;#define MAX 27char str[10001][25];typedef struct Trie //字典树{ Trie *next[MAX]; //这个看最多有几个字符, int v; ...

2014-07-29 20:42:43 343

转载 字典树详解(转载)

本文讨论一棵最简单的trie树,基于英文26个字母组成的字符串,讨论插入字符串、判断前缀是否存在、查找字符串等基本操作;至于trie树的删除单个节点实在是少见,故在此不做详解。l       Trie原理Trie的核心思想是空间换时间。利用字符串的公共前缀来降低查询时间的开销以达到提高效率的目的。l       Trie性质好多人说trie的根节点不包含任何字符

2014-07-29 20:35:57 476

原创 poj1182~食物链~种类并查集

思路:首先需要这个小技巧,不然很难写kind[a]=0表示a与父节点属于同一类。kind[a]=1表示a吃父节点。kind[a]=2表示父节点吃a。 (后二种情况下的赋值可以改变,但对后续有点小影响)1.有一种关系b是a父节点,c是b父节点,  a与c的关系可以表示为 (kind[a]+kind[b])%3    (延续性,适用于多个节点的延续,如3个节点根据二次计算即可完成)2.b是a的父节点,...

2014-07-29 10:42:24 327

原创 poj2524(并查集基础基础基础题)

#include<iostream>#include<string>#include<algorithm>#define M 50005using namespace std;int pre[M];int find(int x) //带状态压缩的查找{ int y=x,temp; while(y!=pre[y]) y=pre[y]; w...

2014-07-27 18:36:22 380

原创 poj2155~Matrix~二维树状数组!

讲解这题的过程需要一些图,有空再上图好了

2014-07-27 16:04:50 337

原创 poj2481~Cows~(树状数组)

题意:一群区间,问你对于每个区间,他被多少个区间覆盖?例如2-4就是被1-5覆盖的,但是需要区间长度不能相等,例如2-4是被2-5覆盖,但是不被2-4覆盖。思路:树状数组。继续直接用例子来讲思路吧。样例:41 31 34 54 62 6 首先,我会将以区间的终点为依据进行降序排序,如果终点相等就对起点升序排序,排完后就变成了这样:终点:6 6 5 3 3起点:2 4 4 1 1序号:1 2 3 4...

2014-07-27 10:48:55 322

原创 poj1850~Code~(组合数的应用)

 今天的数论测试的题目。我只写出了这一题。对数学中的组合数的求法记得更深了:void get() //组合数的求法{ int i,j; for( i=0;i<=26;i++) for( j=0;j<=i;j++) { if(j==0||i==j) c[i][j]=1; else c[i][j]=c[i-1][j]+c[i-1][j-1];...

2014-07-26 16:55:40 460

原创 poj1990~MooFest(哥拿下的第一个树状数组)

题意:

2014-07-25 16:09:04 430

转载 树状数组原理(转载)

第01讲 什么是树状数组?树状数组用来求区间元素和,求一次区间元素和的时间效率为O(logn)。有些同学会觉得很奇怪。用一个数组S[i]保存序列A[]的前i个元素和,那么求区间i,j的元素和不就为S[j]-S[i-1],那么时间效率为O(1),岂不是更快?但是,如果题目的A[]会改变呢?例如:我们来定义下列问题:我们有n个盒子。可能的操作为1.向盒子k添加石块2.查询从盒子

2014-07-25 15:35:49 416

原创 poj2255~~Tree Recovery (树的遍历构造~)

题意:给出二叉树的前序遍历和中序遍历,求它的后序遍历思路:我先给出一个二叉树做例子,告诉你整个算法的原理和过程。对于这棵树,它的前序遍历应该是:ABDECFG,中序遍历是DBEAFCG,后续遍历是DEBFGCA(不清楚的翻翻你的数据结构书)主要思想:前序遍历的作用就是找根节点,中序用来找根的位置来确定左右子树!然后把根放进后序的最后对于以A为根的这棵树,他是前序遍历中第一个碰到的,所以它必定是根,...

2014-07-24 21:36:37 404

原创 WA了一天还没解决的poj1442!

跪了,先存在这以后再解决!我用标准程序试了好几组数据,都和我的是对得上的,而且我还特地把M啊INF啊什么的往大地开,没超出范围,就怕不够范围,可是一直WA,哭了,难道我没理解堆的含义吗/#include<iostream>#include<string>using namespace std;#define M 100000#define INF 20100000...

2014-07-24 20:14:49 401

原创 2014-7-23 栈训练总结

训了一天,写了一道栈的基础题加3道单调栈,算是对栈的类型搞明白了。如果碰到区间题,而且结果由区间+区间中的某个东西决定,那么就要想到单调栈,将不适合的东西提前挤出去并计算、...

2014-07-23 22:21:29 321

原创 poj2082----Terrible Sets(处女座单调栈求区间问题)

题意:处女座的出题人!!!太禽兽的,题意简单的一道题给他出成这样。给你几个紧贴着的矩形,高度宽度各不相同,但是边上是紧贴着的,底边在同一水平线上,于是可以看成是一个有凹有凸的图形,问在这个图形里找一个面积最大的矩形。思路:单调栈求区间,做这提前最好做一下poj2796。#include<iostream>#include<string>#define M 50050u...

2014-07-23 21:55:13 393

原创 poj2796--Feel Good(单调栈求区间问题)

题意:区间内数的总和 乘上 区间内的最小值 为心情值,求心情值的最大值思路:虽然知道是单调栈但是想了好久都没想出来怎么用到单调栈,后来终于给我推出来了,我用图解的形式一步步告诉你讲解之前先放上单调栈的概念,已经知道的可以忽略~单调栈指栈中的元素从上往下看都是按一定的大小排下来的。所以一个元素进栈时要先让一些元素出栈才能再进站。这里我用单调递增栈做个例子,即从栈顶往下看是越来越大的。有一群数字2,9...

2014-07-23 18:59:52 790 2

原创 poj3250-Bad Hair Day(单调栈)

题意:一群不同身高的牛按相同站向站成一排,每头牛只能看见前方比他矮的牛的发型(牛也有发型啊- -),同时可能会被高的牛给遮住。问每头牛能看见的发型数量相加起来的总和。思路:看了discuss都说是单调栈,先讲下单调栈的概念单调栈指栈中的元素从上往下看都是按大小排下来的。所以一个元素进栈时要先让一些元素出栈才能再进站。这里我用单调递增栈做个例子,即从栈顶往下看是越来越大的。有一群数字2,9,4,7,...

2014-07-23 15:03:48 564

原创 poj1363——Rails(简单栈结构)

题意:有n辆车在右边的铁轨上,中间有一短竖着的过渡的铁轨,他们都要开到左边的铁轨上,不能来回开,进中间铁轨后只能选择停留或者开到左边铁轨。右边铁轨的车的排列顺序都为1,2……n,给你左边的铁轨的排列顺序,问你有没有可能出现左边的情况思路:运用栈的结构写。第一段代码是用stl写的,第二段是手写的#include<iostream>#include<string>#incl...

2014-07-23 12:04:03 755

原创 poj1013-Counterfeit Dollar(简单逻辑题)

题意:有12枚硬币,其中有一枚假币,假币可以轻也可能重,试着通过3次称量找出那枚假币并说明它是重的还是轻的思路:算是水题吧,通过对一些小例子进行简单的逻辑推理,AB DE upAC FE upBE HJ even可以得到4点结论:(这里可知A是重的假硬币)1.如果左右两边是even的,说明左右两边的硬币肯定都是真的。所以BEHJ的嫌疑都排除了2.含有A的那一边总是重3.B,C和A放在一起时也会显示...

2014-07-23 10:22:19 411

原创 poj3623(暴力枚举+贪心)

题意:给一个字符串,让你每次从头和尾选一个字符到新字符串,使得最后选得的字符串在字典序最小。注意输出格式,每80个换行,除非最后一个已经是换行否则不换行思路:这题据说是用后缀数组写的,等我学到了再做一遍~我看到的第一个思路就是枚举同时包含点贪心的思想。枚举即按照顺序一个个选字符进新字符串贪心即肯定选择两边最小的字母,因为按照字典序的话是成立的。枚举中要处理的一些细节,例如CCBDCC和CCBCC,...

2014-07-22 22:41:03 738

原创 poj2965(dfs暴力枚举)

题意:一个4*4的矩阵,只有+和-,每当对一个格子进行一次“改变”时,都会同时改变那一行和那一列的正负。问最少改变几次能变成全是-的矩阵,并给出改变的过程。思路:和poj1753一样的思路,只要记住翻转顺序不影响结果,翻转2次和翻转0次是一样的,翻转3次和翻转1次是一样的,故问题就变成十六个格子里选几个格子进行改变。 #include<iostream>#include<str...

2014-07-22 19:48:01 576

原创 poj1753(dfs暴力枚举)

题意:有4*4的正方形,每个格子要么是黑色,要么是白色,当把一个格子的颜色改变(黑->白或者白->黑)时,其周围上下左右(如果存在的话)的格子的颜色也被反转,问至少反转几次可以使4*4的正方形变为纯白或者纯黑?思路:做这道题,首先要自己试试几个例子,然后提炼2个要点:1.对同一个格子翻2次和翻0次的效果是一样的,同理翻3次和翻0次的效果也是一样的2.对于2个格子,他们翻的顺序不影响结果...

2014-07-22 13:33:04 844

原创 poj3094(字符串基础)

题意就是读入一个字符串,A代表1,Z代表26,除了空格外,sum等于下标*字母数值之和,下标从1开始。例如AAB=1*1+2*1+3*2;这题是大水题而已,需要注意的是空格是可以被读入的,故要用gets( )函数,还有strcmp()==0才是两字符串相等,这种基础知识我都忘了,惭愧惭愧#include<iostream>#include<string> usin...

2014-07-21 10:39:33 480

原创 2014-7-20

哎,不要心急啊!!倒数几名什么关系,你是信息学院的,

2014-07-20 23:00:09 413

原创 poj3006(素数筛法)

筛法原理见: http://blog.csdn.net/a799581229/article/details/37995531这里就不多说了,水题一个,不过哪个大神能告诉我为什么我这题的要240MS这么多,这题我该如何优化?#include<iostream>#include<string>#define M 1000002 using namespace...

2014-07-20 22:26:01 439

原创 poj1503(高精度运算之大数相加)

题目意思很容易懂,明显的大数相加,但是需要注意程序会输入类似0035这样有前导0的数字思路:我的原则:不追求速度,只追求方便理解。倒序处理大数,直接给例子。先将读入的s字符串0038,下标是0123,,逆序转化为整数组s2,0038的下标是4321,前面全是0然后各种相加就很简单了,不用考虑什么前缀0啊几位啊,只要考虑个进位就行,s1和s2直接就从第0位开始加,非常方便最后输出记得倒着输出,输出前...

2014-07-20 21:50:43 518

原创 poj 2262(筛法求素数)

题意:就是一百万内的哥德巴赫猜想,每个整数都能拆成两个素数之和,输入一个数,把这个等式打印出来,输出整数=最小+最大就可以了这里必须要用到筛法:用筛法求素数的基本思想是:把从1开始的、某一范围内的正整数从小到大顺序排列, 1不是素数,首先把它筛掉。剩下的数中选择最小的数是素数,然后去掉它的倍数。依次类推,直到筛子为空时结束。如有:1 2 3 4 5 6 7 8 9 1011 12 13 14 15...

2014-07-20 19:37:38 616 2

unp.h源码(CentOS上可无错编译)

修改过一些带有编译错误问题的unp.h源码,可在CentOS的服务器上编译,不需要再修改。编译过程如下: tar -zxvf unpv13e.tar.gz rm -y unpv13e.tar.gz cd unpv13e cd lib make cd ../libfree make cd .. cp libunp.a /usr/lib cp lib/unp.h /usr/include cp config.h /usr/include 具体可参见: http://blog.csdn.net/a799581229/article/details/79085925

2018-01-17

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除