自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(33)
  • 收藏
  • 关注

转载 new与malloc的区别,以及内存分配浅析

从函数声明上可以看出。malloc 和 new 至少有两个不同: new 返回指定类型的指针,并且可以自动计算所需要大小。比如:int *p;p = new int; //返回类型为int* 类型(整数型指针),分配大小为 sizeof(int);或:int* parr;parr = new int [100]; //返回类型为 int* 类型(整数型指针),分配大小为 sizeo

2015-12-31 19:06:33 428

原创 hihocder 1181 : 欧拉路·二

因为相连的两个数字总是相同的,不妨我们只写一次,那么这个例子可以写成:3-2-4-3-5-1。6个数字刚好有5个间隙,每个间隙两边的数字由恰好对应了一块骨牌。如果我们将每一个数字看作一个点,每一块骨牌看作一条边。你觉得是怎么样的呢?小Ho:以这个例子来说的话,就是:要把所有的骨牌连起来,也就是把所有的边都走一次。咦,这不是欧拉路问题么!小Hi:没错,这问题其

2015-12-30 21:37:36 257

原创 hdu 1494(DP)

跑跑卡丁车Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Problem Description跑跑卡丁车是时下一款流行的网络休闲游戏,你可以在这虚拟的世界里体验驾驶的乐趣。这款游戏的特别之处是你可以通过漂移来获得一种加速卡,用这种加速卡可以在有限的时间里提

2015-12-30 17:30:33 360

转载 hdu 5045(状态压缩dp)

ContestTime Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/OthersProblem DescriptionIn the ACM International Collegiate Programming Contest, each team consist of thre

2015-12-30 12:03:54 345

原创 hihocoder 1127 : 二分图三·二分图最小点覆盖和最大独立集

最大独立集问题:在图G中选取尽可能多的点,使得任意两个点之间没有连边。结论:最大独立集的点数 = 总点数 - 二分图最大匹配证明:假设最大独立集的点数为|U|,二分图最大匹配的匹配数为|M|,最大匹配中所有顶点集合为EM先证明 |U|≤|V|-|M|M中任意一条边的两个端点是连接的,所有对于M中的边必有一个端点不在|U|集合中,所以|M|≤|V|-|U|

2015-12-29 17:57:28 497

原创 hihocoder 1122 : 二分图二•二分图最大匹配之匈牙利算法

首先,匈牙利算法是用来求二分图的最大匹配的,它的核心问题就是找增广路径。匈牙利算法的时间复杂度为O(VE),其中V为二分图左边的顶点数,E为二分图中边的数目。现在我们来看看增广路有哪些性质:(1)有奇数条边。(2)起点在二分图的左半边,终点在右半边。(3)路径上的点一定是一个在左半边,一个在右半边,交替出现。(4)整条路径上没

2015-12-29 17:35:47 1088

原创 hdu 5418(状态压缩dp+Floyd)

点击打开链接解题思路:这道题目和TSP问题很相似,唯一不同的是同一个点可以重复走几次。。。。这道题目只有16个顶点,所以很容易想到状态压缩dp,dp[i][j]表示到达顶点i时的状态为j的最小花费,那么状态方程也很容易推理出来dp[i][j] = min(dp[k][j-1AC:#include#include#includeusing namespace s

2015-12-28 15:26:29 389

原创 hihocoder 1107 : Shortest Proper Prefix

题目大意给定N个单词,求满足下列条件的前缀集合S:集合中任意前缀对应的单词数量小于等于5对于集合中任意前缀p,p的扩展前缀不属于该集合对于第二个条件,举个例子来说:假设ab对应了5个单词,abc对应了3个单词,abd对应了2个单词。因为ab对应的单词数量少于等于5,所以ab属于集合S。虽然abc和abd对应的单词数量均小于等于5,但由于其为ab的扩展,所以不

2015-12-27 18:01:28 432

转载 hdu 1074(状态压缩dp)

Doing HomeworkTime Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Problem DescriptionIgnatius has just come back school from the 30th ACM/ICPC. Now he has a lo

2015-12-26 09:45:44 258

原创 hdu 1158(DP)

Employment PlanningTime Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Problem DescriptionA project manager wants to determine the number of the workers needed

2015-12-24 17:18:43 230

原创 hdu 2577(DP)

How to TypeTime Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Problem DescriptionPirates have finished developing the typing software. He called Cathy to test

2015-12-24 15:37:15 267

原创 hdu 1800 (字符串哈希)

Flying to the MarsTime Limit: 5000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Problem DescriptionIn the year 8888, the Earth is ruled by the PPF Empire . As the

2015-12-23 15:30:18 312

转载 hdu 2457(AC自动机+DP)

DNA repairTime Limit: 5000/2000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Problem DescriptionBiologists finally invent techniques of repairing DNA that contains segments c

2015-12-19 20:11:08 497

原创 ccf 无线网络

问题描述  目前在一个很大的平面房间里有 n 个无线路由器,每个无线路由器都固定在某个点上。任何两个无线路由器只要距离不超过 r 就能互相建立网络连接。  除此以外,另有 m 个可以摆放无线路由器的位置。你可以在这些位置中选择至多 k 个增设新的路由器。  你的目标是使得第 1 个路由器和第 2 个路由器之间的网络连接经过尽量少的中转路由器。请问在最优方案下中转路由器的最少个数是多少?

2015-12-18 17:39:10 369

原创 hihocoder #1055 : 刷油漆(树形dp)

当一个节点被选择后,它的所有祖先节点也要被选择该条件换一个说法,可以解释为:只有当选择了一个节点后,我们才可以选择它的子节点。我们首先建立状态f[i][k],f[i][k]表示以i节点为根的子树,在满足条件一的情况下,选择至多k的节点能够得到的最大权值。则可以写出状态转移情况:选择i节点:f[i][k]等于w[i]加上所有子节点选择k-1个节点的最大权值不选择i节点

2015-12-17 07:56:44 584

转载 poj 1821(DP+单调队列优化)

FenceTime Limit: 1000MS Memory Limit: 30000K   DescriptionA team of k (1 <= K <= 100) workers should paint a fence which contains N (1 <= N <= 16 000) planks numb

2015-12-15 19:52:39 440

转载 hdu 1269(Tarjan求强连通分量)

这道题目就是求强连通分量。。。这里采用的是Tarjan算法:http://m.blog.csdn.net/blog/qq574857122/16361033AC代码:#includev#include#includeusing namespace std;const int maxn = 10005;struct Edge{ int key,next;

2015-12-15 09:24:52 395

转载 poj 1745

解题思路:dp表示的为dp[i][j]前i个数是否能够组成余数为j,是则为1 #include using namespace std;#define MAXN 10001int dp[MAXN][101];int posmod(int n,int k){ //正数取余 n = n % k; while(n < 0) n+=k; return n;}int main(

2015-12-13 20:46:21 268

转载 hdu 3973(hash+线段树)

AC's StringTime Limit: 30000/10000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Problem DescriptionYou are given some words {Wi}. Then our stupid AC will give you a very long

2015-12-12 13:05:17 592

转载 hdu 1381

Crazy SearchTime Limit: 10000/5000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 2299    Accepted Submission(s): 852Problem DescriptionMany people like

2015-12-12 10:26:19 397

原创 hdu 2428(哈希)

StarsTime Limit: 5000/1000 MS (Java/Others)    Memory Limit: 65535/65535 K (Java/Others)Problem Description    Lucy loves stars very much. There are N (1 <= N <= 1000) stars in the sky. Assu

2015-12-12 09:27:18 388

原创 hdu 1881(简单01背包)

毕业bgTime Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Problem Description每年毕业的季节都会有大量毕业生发起狂欢,好朋友们相约吃散伙饭,网络上称为“bg”。参加不同团体的bg会有不同的感觉,我们可以用一个非负整数为每个bg定义一个“快乐度”。

2015-12-11 17:02:58 379

转载 hdu4821 字符串hash

参考博客:点击打开链接字符串hash典例。 这里用的是bkdrhash 法。也是最常用的冲突最少的一种。原理:把字符串和数值对应。这里用base=31(一般用质数),先是扫一遍,处理处每个位子到结尾构成的串的hash值(倒过来的),然后长度为l的子串的haash值就好算了。之后枚举开头l个,每次向后翻滚,复杂度max(L*M, L*(S.SIZE/M))可以过,

2015-12-10 21:32:39 384

转载 poj 2503(字符串hash)

解题思路(copy别人的):通过ELFhash函数来做。冲突处理则是用到链表的方法。#include #include #include #define N 100001#define strSize 15using namespace std;struct Hash{ bool used; char fn[strSize],en[strSize];

2015-12-10 16:23:34 450

原创 poj 1160(Post Office)

http://poj.org/problem?id=1160先讲讲我的思路:这道题首先很容易想到是用动态规划思想,所以我定义了一个二维数组dp[i][j],表示前j个位置,修建了i个邮局。所以推导出的状态转移方程为:dp[i][j] = min{dp[i][j-1]+第j个位置到第i个邮箱位置的差,dp[i-1][k] + 第j个位置到第k+1个位置的差},实际上花括号里,左边代表

2015-12-10 10:36:52 521

原创 poj 2231Moo Volume

Time Limit: 1000MS Memory Limit: 65536KTotal Submissions: 20699 Accepted: 6249DescriptionFarmer John has received a noise complaint from his neighbor, Farmer Bob, stating t

2015-12-08 19:47:06 346

转载 poj2397 Spiderman

SpidermanTime Limit: 1000MS Memory Limit: 65536KTotal Submissions: 1634 Accepted: 624 Special JudgeDescriptionStaying fit is important for every superhero, an

2015-12-08 17:14:35 513

原创 Colorful Lecture Note(栈的模拟)

时间限制:10000ms单点时限:1000ms内存限制:256MB描述Little Hi is writing an algorithm lecture note for Little Ho. To make the note more comprehensible, Little Hi tries to color some of the text. Un

2015-12-07 15:37:26 457

原创 nyoj203(迪杰斯特拉+01背包)

三国志时间限制:3000 ms  |  内存限制:65535 KB难度:5描述《三国志》是一款很经典的经营策略类游戏。我们的小白同学是这款游戏的忠实玩家。现在他把游戏简化一下,地图上只有他一方势力,现在他只有一个城池,而他周边有一些无人占的空城,但是这些空城中有很多不同数量的同种财宝。我们的小白同学虎视眈眈的看着这些城池中的财宝。按照游戏的规则,他只

2015-12-06 21:24:50 501

转载 nyoj99(欧拉路)

单词拼接 时间限制:3000 ms | 内存限制:65535 KB 难度:5 描述 给你一些单词,请你判断能否把它们首尾串起来串成一串。前一个单词的结尾应该与下一个单词的道字母相同。如alohadogarachnidgophertigerrat可以拼接成:aloha.arachnid.dog.gopher.rat.tiger输入 第一行是一个整数N(0#include<iostream

2015-12-06 17:41:45 377

原创 nyoj 211 (Floyd算法求传递闭包)

Cow Contest时间限制:1000 ms  |  内存限制:65535 KB难度:4描述N (1 ≤ N ≤ 100) cows, conveniently numbered 1..N, are participating in a programming contest. As we all know, some cows code better t

2015-12-06 12:49:37 391

原创 nyoj1204

魔法少女 时间限制:1000 ms | 内存限制:65535 KB 难度:3 描述 前些时间虚渊玄的巨献小圆着实火了一把。 在黑长直(小炎)往上爬楼去对抗魔女之夜时,她遇到了一个问题想请你帮忙。 因为魔女之夜是悬浮在半空的,所以她必须要爬楼,而那座废墟一共有n层,而且每层高度不同,这造成小炎爬每层的时间也不同。不过当然,小炎会时间魔法,可以瞬间飞过一层或者两层[即不耗时]。但每次瞬移的时

2015-12-05 15:31:13 397

转载 nyoj 229

http://acm.nyist.net/JudgeOnline/problem.php?pid=229#include<iostream>#include<cstdio>#include<cstring>using namespace std;const int MAXN = 110;int Ap[MAXN];int Bp[MAXN];int dp[MAXN];//dp[i]表示完成i个工

2015-12-04 23:02:07 479

空空如也

空空如也

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

TA关注的人

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