自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Rookie21的博客

与其来日方长,不如活在当下。

  • 博客(12)
  • 收藏
  • 关注

转载 hdu 1060

(转自网上牛人解题报告) 题目大意是输入N,求N^N的最高位数字。1 估计大家看到N的范围就没想法了。 确实N的数字太大,如果想算出结果,即使不溢出也会超时。 题目是这样转化的。 首先用科学计数法来表示      N^N  = a*10^x;     比如N = 3;  3^3 = 2.7 * 10^1;

2017-03-14 14:25:53 510

原创 HDU 1055

题目大意:给你一棵树,数有N个节点,每个节点有权重w。你需要给这棵树的每一个节点进行涂色,每涂一个节点花费一个单位时间,开始时间设定为0,对于一个权重为W的节点,假定你在第T个的单位时间完成对它的涂色,那么对它的涂色的代价C=W*T,同时规定只有当某个节点父节点已经完成涂色时,你才能对它进行涂色操纵。要求你求出完成整颗树的涂色所需要的最小的花费。 题解:这是道贪心的题目。首先我们看代价计

2017-03-05 14:17:48 594

原创 CCF 压缩编码

题目大意:给一个整数n,接下来n个整数,分别表示每个字符的出现频率(按顺序给出),要求你给出一种编码方式,使得每个字符的编码按照字典序排列后的顺序与原先顺序一样,在此前提下希望整体编码长度最小。输出这个最小长度。 题解:看到编码长度最小,一般就会想到哈弗曼编码,何况题目也提了一下哈弗曼编码,但实际上这是个坑。问题就出在这个前提上:每个字符的编码按照字典序排列后的顺序与原先顺序一样。所以我们无法每

2017-01-24 15:25:51 4172 16

原创 HDU 1053

题意:给你行字符串,要你求出这个字符串在ascll编码下的编码长度和haffman编码下的编码长度,并求出两者的比值。 求解:ascll编码的长度就为字符串长乘以8。 至于haffman编码,介绍一下。在haffman编码中,我们统计每个字符出现的频率(次数),并将这个频率值作为这个字符的权重值,然后我们通过这些字符的权重值来建立一颗哈弗曼树以此来获取每个字符的haffman编码。首先,这是一

2017-01-23 01:07:24 654

原创 HDU 1044

题意: 勇士走迷宫,迷宫是个大小为H*W的矩阵图。其中'@'代表起点,'*'代表墙。勇士的目标是在限定时间内的,在走出迷宫的前提下,获得的宝物价值和最大。 输入:首先一个整数T,代表case数。 对于每个case,首先输入四个数W (1 输出:若无法走出迷宫,输出Impossible。可以走出时,请输出可以获得的宝物价值和的最大值。 题解:一道状压的题目。重点在于将原始矩阵图中

2017-01-17 00:28:48 337

原创 HDU 1043(八数码问题)

一道八数码的题目,这里介绍其中一个解法:哈希+打表(比较水但简单的解法)。        首先,题目解法是将9个数字('x'看成数字9)的每一种排列看成一种状态,则共有9!种不同的状态。我们从结果状态(1,2,3,4,5,6,7,8,9,)开始bfs搜索,每到达一个状态就将这个状态标记上(一是标记这个状态可以到达结果,二是标记访问了这个状态,防止重复访问,ps:利用一个flag数组来进行标记),

2017-01-14 22:53:51 462

原创 HDU 1042

计算N!,其中0 代码如下: #include #include #include #include using namespace std; class big_number{ public: int len; char num[41000]; big_number(){ len=0; for(int i=0;inum[i]='

2017-01-06 19:30:41 231

原创 HDU 5691

一道状压DP的题目。其实关于状压DP的题目很久之前便有所接触,只是一直没去学,今天通过此题算是初步学习了状压DP。 状压DP本质上来说还是DP,重点在于找出每一步的状态,并且建立起走到下一步的状态转移方程。不过有的时候,状态的表示会要利用到状态压缩的方法。  状态转移方程:当第k个位置已经被固定填什么数时,向状态st里添加i并以i为结尾,dp[st|(1<<q[k])][q[k]] = max

2016-12-31 19:50:20 367

原创 HDU 1029

初看此题,就把它当做了一道哈希表的题目(因为题目范围很不明确)。后来自己也确实是用hash的方法过的。此处贴出,也是为了稍微复习下hash的知识。话不多说,以下是本人写的代码。 Hash: #include #include #include #include #include #include using namespace std; const int mod=100003; int n,

2016-12-29 10:19:25 318

原创 HDU 1025

最长递增子序列 很典型,自己开始想只想到了dp,却没想到用二分,或者说,重点是没有想到用一个B[n]数组作为辅佐,来记录序列长度为k的序列中,最小序列尾的值B[k]。这个辅佐数组非常重要,因为它有单调递增的性质(因为如果有B[3]>B[4],那么在得到B[4]的序列中的第三个数B[4]3也会小于B[4]并且小于B[3],即有B[4]3B[4]B[3],这有与B数组的定义相悖),因为这个性质我

2016-12-28 14:38:33 383

原创 CCF 交通规划

题意大致如下:给你一张无向带权图,有标号为1到n的节点,现在要你选择一些边留下来,使得在留下来的边构成的新的图里,每个节点到节点1的最小距离不变(即和初始图一样),在满足上述要求的前提下,要使留下来的边的权重和最小,并求出这个最小权重和。 题解:只要我们用dijsktra算法加以改造遍历一遍原图,就能解决这个问题。而本题与一般的dijsktra模板题不同的地方在于,一般dijsktra只是求出源

2016-12-19 16:37:04 507

原创 hdu 1024

HDU 1024 一道典型的的动态规划题目,重点在与找到一种正确的状态规划方法,然后建立不同状态间转换的方程式。 题意大致如下:给你n个数,要你在这n个数中取m段数(每段无交集),使这m段之和最大。 每次输入格式:m,n,a1,a2,....an。 一直读到文件尾。 状态方程转换公式:dp[i][j]=max(dp[i][j-1]+arr[j] , max(dp[i-1][k])+arr

2016-12-16 11:26:51 432

空空如也

空空如也

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

TA关注的人

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