自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Code change the World.

Write the code, change the world.

  • 博客(12)
  • 资源 (2)
  • 收藏
  • 关注

原创 HDU 6180 Schedule(贪心)

题目:点击打开链接 题意:给你n个项目的开始时间和结束时间,问至少需要多少个机器能做完所有的项目。每个机器在某一个时刻被启动后只能运行到某一个时刻停止且停止后不能再次启动。还问用这最少个数的机器做完所有的这些项目所需最少时间是多少。 思路:求至少要多少台机器:把这n个时间段在一维上转化成一个入点和一个出点,这样存下2*n个点,之后按坐标从小到大给这2*n个点排序(坐标相同的点出点优先),之后遍

2017-08-30 14:54:20 368

原创 Dijkstra模板[kuangbin]

#include <bits/stdc++.h> using namespace std; /* * 使用优先队列优化Dijkstra算法 * 复杂度O(ElogE) * 注意对vector<Edge>E[MAXN]进行初始化后加边 */ const int INF=0x3f3f3f3f; const int MAXN=1000010; struct qnode...

2017-08-24 10:16:28 1038

原创 HDU 6166 Senior Pan(思维 最短路)

题目:点击打开链接 题意:给一个有向图,n个点,m条边。给k个其中的点,求这k个点相互之间的路径值的最小值是多少。 思路:如果是暴力枚举这k个点到其他k-1个点的最短路取最小值一定是超时的。 正确做法是每次将k个点划分成两个集合,求这两个集合的最短路,取最小值。划分的方法应该保证这k个点均相互求过最短路,且划分次数不应太多以免超时。 这道题最难想到的是对这k个点进行划分,这里方法是这样的:

2017-08-23 17:03:39 349

原创 HDU 6170 Two strings(dp)

题目:点击打开链接 题意:给定两个字符串,假设为串a,串b。a由大写字母和小写字母组成,b由大写字母,小写字母,”.“,”*“ 组成。其中”.“可以代替任何的一个字母,”*“与其一个前缀如a*可代替a,aa,aaa...,以及空。(在这里注意的是a*可以是空 意味着*前面的一个字符和*可以一起去掉而不是只有*被去掉 比赛的时候题意理解错了QAQ) 最后判断a,b是否匹配。 思路:比赛时暴力看错

2017-08-23 14:40:02 187

原创 HDU 6153 A Secret(kmp)

题目:点击打开链接 题意:给两个字符串S1,S2,求S2中每个后缀子串在S1中出现的次数*该后缀子串长度,最后将所有这些求和。 思路:kmp是复杂度O(m+n)的较快的字符串匹配算法,但如果取出每个后缀子串进行字符串匹配的话是O(m(n+m))也就是O(n^2)的复杂度,则超时。所以该题只能一遍kmp找到并记录S2中每个后缀子串出现的次数,这就要求对kmp的内部运行十分了解。首先kmp是从头往

2017-08-21 15:22:26 261

原创 HDU 6154 CaoHaha's staff(找规律)

题目:点击打开链接 题意:给定一个面积值,要求在单元网格上面能围成大于等于该面积值的最短周长所需多少步。围成的周长所用的边(也就是每一步的走法)只能沿着单元格的四条边或是单元格的对角线。 思路:题目要求大概可概括为给定面积求步数,我们反过来推算给定一个步数,或者说每让你走一步,可以围成最大多大的面积。前几个可能会看不出规律,多推几个,可发现一个周期 4,网格上的图形是个矩形,四边通过依次增加步

2017-08-21 14:44:11 191

原创 HDU 6152 Friend-Graph(暴力)

题目:点击打开链接 题意:给定n个员工,每个员工与其他员工之间的关系为朋友或者陌生人(1 或者 0),规定有三个及以上互相为朋友或者互相为陌生人的小团体为Bad Team,否则为Great Team。 思路:拉姆齐定理:6个人中一定有三个互相为朋友或者互相不认识(可通过6个点连线证明)。所以当n>=6直接输出Bad,n 代码: #include using namespace std;

2017-08-21 14:23:46 200

原创 HDU 6140 Hybrid Crystals(坑题)

题目:点击打开链接 题意:要是能看懂题意早过了QAQ。比赛的时候压根没看这道题,一眼望去就懒得去看了。给定n,k。给n个数组成的序列a,给每个数可进行的操作(L,D,N),L:可加,D:可减,N:可加可减。当然也都可以选择不加不减。要求找一段连续子序列进行一系列操作后可以组成k。关键是题干中给出了序列a的很多性质,这些性质可证明只要k在整段序列a极限操作后的的最大值和最小值之间,则能够组成!TM

2017-08-18 14:51:12 231

原创 HDU 6143 Killer Names(dp 思维)

题目:点击打开链接 题意:给人起名字,姓 和 名,都是长度为n的字符串,要求从给定的m个字符中选取一些字符(相同或不同都可以),使得没有一个字符同时存在于姓和名中。 思路:相当于涂色,给m个颜色,为两个长度为n的单元格涂色,要求两个区域没有共同的颜色。这个题的方法就是先解决姓,得到长度为n的分别用了j=1->m种颜色的方案数,那么对于名,就是(m-j)^n,即剩下的颜色填到n个格子的方案数。

2017-08-18 12:33:45 192

原创 HDU 6103 Kirinriki(尺取法 思维)

题目:点击打开链接 题意:给一定值m和一串长度为2~5000的字符串,要求从其中取出两个不重叠的长度相等(假设为n)的子串A,B,使得i从0到n-1求和abs(Ai-Bn-1-i)的值≤m,求最大的子串长度n值。 思路:以前没做过之类题目,通过题解总结到这类找满足某一大小关系之类的条件最优子串或者连续子序列长度的题一般用尺取法。也即是取一中间点 t,A从1到 t,B从 t+1 到 t+1+t。

2017-08-11 13:56:07 280

原创 HDU 6092 Rikka with Subset(01背包 思维)

题目:点击打开链接 题意:给你n,m。有一个数列a,a中有n个元素。输入m+1个数,第i个数表示把数列a当成一个集合,集合a的  和为i的  子集  的个数为b[i],集合a中所有数之和为m。解释样例1:m+1个数为1 1 1 1,表示集合a中和为0的有1个(空集),和为1的有1个({1}),和为2的有1个({2};{1,1}不行,因为{1}只有1个),和为3的有1个({1,2}),且所有数之和

2017-08-09 15:33:36 269

原创 HDU 6060 RXD and dividing(思维)

题目:点击打开链接 题意:这道题看了两天才看懂,zz。。。说是什么高大上的Steiner树,其实并不高大。又他本来给的就是一棵树,所以也不是最小生成树。大概意思是有一棵树,顶点从1到n;有n-1条边,每条边有个权值;要把从2到n的n-1个点分到k个集合Si里去,每个集合不能有相同的点,然后f(Si)是从点1连通集合Si中所有点之后的边权和,说是什么最小和,其实就是和,没有什么是不是最小,分好集合

2017-08-02 12:42:54 243

封装好的通用DAO实用型工具

下载该压缩包,解压后得到一个easyDao包的文件夹,里面对应着javaweb工程里的两个文件夹src和lib,将对应文件夹里的所有东西拷贝到工程中去即可使用,包括带事务的所有对数据库的增删改查操作都可以直接调用,详细内容都写在里面的readme.txt文件中,保证新手用了说神奇,老程序员用了后悔晚下载了哈哈哈。。。有什么不懂的我没写在readme里的可以直接问我,我也会一一解答,不能坑了大家。

2018-06-08

kuangbin模板

kuangbin实用ACM模板,最新最齐全。内含数学,动态规划与图论,数据结构常用模板。

2017-10-17

空空如也

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

TA关注的人

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