自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

ljd4305的专栏

直道相思了无益,未妨惆怅是清狂.

  • 博客(16)
  • 资源 (7)
  • 收藏
  • 关注

原创 hdu 2227 Find the nondecreasing subsequences (树状数组+dp+离散化)

题意:给定一个长度为n(n 对于某些序列中的递增序列的个数是可以用dp来求解的,其状态转移方程为:dp[i] = sum(dp[j]) + 1,j 根据状态转移方程可以得知这样dp的时间复杂度为O(n^2),而对于题目给定的10^6的数量级来说,这样dp是不行的。那么我们根据a[j]因此我们想到了树状数组,而对于题目给的a[i]元素的大小,a[i] 我们发现总共的元

2013-08-28 13:27:48 882

原创 hdu 2852 KiKi's K-Number (树状数组)

题意:给定一个容器,里面存放各种数值,规定三个操作,一个是在容器中增加一个数值,一个是在容器中删掉一个数值,一个是询问容器中比a大的数中第k大的数,将其输出。如果在删除过程中没有这个数,则输出"No Elment!",如果容器中没有比a大的第k个数,则输出"Not Find!". 此题因为是增加和删除元素的值,所以比较容易往树状数组的方向想,用树状数组当容器。采用一个标记数组来标记某个数值

2013-08-26 12:21:55 1470

原创 hdu 2688 Rotate (树状数组)

题意:给定一串数字,支持查询和旋转两种操作,查询是查询在经过前面的一些操作之后形成的现在这个序列里的顺序对数,旋转是对给出的[s,t]这一段进行旋转,是将s位置的元素移至t元素的后面,这样会形成一个新串,然后继续操作,直至没有操作。对于求逆序对数和顺序对数,我们可以想到树状数组来快速求解,因为题目给出的数据量是百万级,而时限是1s,那么O(n^2)是肯定不行的。所以用树状数组我们就可以

2013-08-25 17:00:29 1160

原创 hdu 1394 Minimum Inversion Number (树状数组)

题意:求给出的一串数字序列的各种排列的最小逆序对数。这里的各种排列是将第一个元素移至最后形成的新排列。求逆序对数很自然的想到了树状数组,又快又简便。最开始的想法是,我们能用树状数组快速的求出某一串序列的逆序对数,但是这里对于一串n长的数列它的各种排列就有n种,如果对每一种排列都用树状数组求一次逆序对数,那么时间复杂度将达到O(n^2logn),这对于题目给的数量级别及时间限

2013-08-24 12:22:41 742

原创 hdu 2838 Cow Sorting (树状数组)

题意:就是求将之前的排列变成一个递增的排列,每交换两个数的代价为两个数的和,求变成递增的排列所需的最小代价为多少。本题相当于冒泡排序,对于冒泡排序,每个点的贡献价值的次数等于前面大于它的数的个数加上后面小于它的个数。分析:其实这个结果和逆序数有关,对某个位置i,如果前面比他大的有x个,那么a[i]至少要加x次 如果后面有y个比a[i]小,那么a[i]至少要加y次,也就是说用两个树状数组

2013-08-23 12:29:50 1339

原创 hdu2689 Sort it (树状数组)

题意:给定一个正整数n,和一个1-n的一个排列,每个数可以和旁边的两个数的任意一个交换,每交换一次总次数就要加一,问将这个排列转换成一个递增的排列需要多少次交换?题意可以转换成求这个排列的逆序对数。这里用树状数组来解决它。树状数组的处理能力是很强的,对于要用它来解决的问题,关键就在于如何将题目的关键地方和你的树状数组C[]联系起来。此题较为简单,应属树状数组的基本应用-单点更新,区

2013-08-22 18:23:50 1689

原创 hdu 1541 Stars (树状数组)

题意:大概就是计算每颗星星左下边包括了多少颗星星,这个数值就是level。左下边不包括本身,不超过本身的x,y的坐标,可以等于。问每种level有多少颗星星。这题,一开始想不到怎么用到树状数组,后来看了一下,发现题目给的数据是已经按x,y排好序的。所以我们可以不用管y的值,为什么呢?我们一个星星一个星星的读取进来它的坐标,因为它先要把y相等的星星全输出完了,而且是按x递增的方式输出

2013-08-22 15:38:36 3274 2

原创 hdu 1166 敌兵布阵 (树状数组)

小记:这题基本上算是一维树状数组的最简单的应用了。一维数组最简单的应用就是:单点更新,区间求和。这题只要理解了树状数组,不懂的可以去看看我的树状数组 详解,就能做出来,题意很清楚。下面附上代码:#include #include #include using namespace std;#define N 50001int C[N];int n;in

2013-08-21 13:03:36 915

原创 树状数组 详解

对于普通数组,其修改的时间复杂度位O(1),而求数组中某一段的数值和的时间复杂度为O(n),因此对于n的值过大的情况,普通数组的时间复杂度我们是接受不了的。在此,我们引入了树状数组的数据结构,它能在O(logn)内对数组的值进行修改和查询某一段数值的和。树状数组是一个查询和修改复杂度都为log(n)的数据结构,假设数组a[1..n],那么查询a[1]+...+a[n]的时间是log级别的,

2013-08-20 12:08:26 20019 6

转载 最长不重复字串

文章作者:Yx.Ac   文章来源:勇幸|Thinking (http://www.ahathinking.com)题:从一个字符串中找到一个连续子串,该子串中任何两个字符不能相同,求子串的最大长度并输出一条最长不重复子串。本节从最直接的方法逐步优化,渐进探索了四种实现方式,并最终找到时间复杂度为O(N),辅助空间为常数的方案,内容如下:==基本算法 使用Hash=

2013-08-19 11:43:30 1065

转载 不使用 +-×÷ 运算符来实现 加减乘除 四项运算

原文出自:http://www.cppblog.com/qingbizhu/archive/2012/03/30/168148.html最近,在看《剑指Offer——名企面试官精讲典型编程题》一书,当看到“面试题47:不用加减乘除做加法”时,经过一分钟左右思考后,得出了思路,跟书上一对照,基本一致,呵呵O(∩_∩)O~。于是,随即又开始思考:加法是实现了,那么减法、乘法还有除法又该怎么

2013-08-19 10:59:23 1116

原创 poj 1422 Air Raid (二分图匹配)

最小路径覆盖问题:用尽量少的不相交的简单路径覆盖有向无环图的所有顶点将每个顶点分成两个,分别在X集和Y集,如果存在有向边(a,b),对应在图中就有(Xa,Yb)。建好图,匈牙利算法一上,1A。参考资料:http://wenku.baidu.com/view/3e756f335a8102d276a22f16.html代码奉上:#include #include #in

2013-08-16 16:41:49 637

原创 最大流 Dinic 算法实现的各种版本

http://blog.csdn.net/hqd_acm/article/details/6648290  解决hdu的爆栈问题测试了一下迭代+前向星 交 hdu 4280 7093ms 感觉还不错。//递归+矩阵版本#include#include#include#includeusing namespace std;const int N=20

2013-08-16 12:16:11 1605

原创 hdu 3718 Similarity (二分图KM算法)

解题思路:二分图。建图:将学生的答案所映射的正确答案作为二分图的边,边权值为1,有两条就为2,依此类推。然后用KM算法求出最佳匹配。除以n 就是要求的答案了。#include #include #include using namespace std;#define N 101#define MIN -0xfffffff#define MAX 0xfffffff#

2013-08-15 15:38:24 1047

转载 KM算法 详解+模板

原文出处:http://blog.sina.com.cn/s/blog_691ce2b701016reh.html  先说KM算法求二分图的最佳匹配思想,再详讲KM的实现。【KM算法求二分图的最佳匹配思想】对于具有二部划分( V1, V2 )的加权完全二分图,其中 V1= { x1, x2, x3, ... , xn }, V2= { y1, y2, y3, ... ,

2013-08-14 17:46:53 817

转载 欧拉回路

原文出处:http://www.cnblogs.com/buptLizer/archive/2012/04/15/2450297.html欧拉回路:图G,若存在一条路,经过G中每条边有且仅有一次,称这条路为欧拉路,如果存在一条回路经过G每条边有且仅有一次,称这条回路为欧拉回路。具有欧拉回路的图成为欧拉图。判断欧拉路是否存在的方法有向图:图连通,有一个顶点

2013-08-12 10:40:21 605

simpleH5Builder

simpleh5builder

2017-05-31

linux下onvif协议gsoap实现的源码(测试编译成功版)

windows下 onvif协议的实现 比较容易,但是linux下实现起来 就会有很多莫名的问题,有了这份可以成功编译运行的源码,反向来研究自己编译出错的原因,是个很不错的选择。

2016-01-29

gsoap 生成onvif的wsdl

gsoap移植的wsdl文件。通过这些文件可以生成完整的onvif协议开发代码。

2014-10-14

onvif wsdl文件

这个是gsoap用来生成onvif协议的c/c++代码的wsdl文件。

2014-10-13

Android 根据EditText搜索框ListView动态显示数据

Android 根据EditText搜索框ListView动态显示数据 根据SimpleAdapter创建ListView。简单粗暴

2014-09-18

经典树型DP状态压缩DP入门

经典入门 - 树型动态规划和状态压缩动态规划 什么是树型动态规划: 树本身就是一个递归的结构,所以在树上进行动态规划或者递推是在合适不过的事情。 必要条件:子树之间不可以相互干扰,如果本来是相互干扰的,那么我们必须添加变量使得他们不相互干扰。

2014-03-16

空空如也

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

TA关注的人

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