E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
UVALIVE
UVALive
3177 长城守卫(贪心+二分)
题意:给定n个守卫战成一圈,每个守卫要a[i]个不同的礼物,然后问需要几种礼物分配给他们才能使得相邻两个守 卫礼物都不同思路:1、当n为偶数的时候,ans=max(p[i]+p[i+1]),可以验证;2、当n为奇数的时候就不满足了,那么我们可以利用二分答案然后判断从而求出最小值。假设有p种礼物,那么设第一个人的礼物为1~r1,那么不难发现最有的分配的策略一定是这样的:除0以外的其他人,编号为奇
opm777
·
2014-01-11 20:00
贪心
二分
UVALive
- 4324 Ugly Windows
题意:就所给的图有几个完整的矩形,按字典序输出思路:按字典序搜索,细节是:严格的一个矩形#include #include #include #include usingnamespacestd; constintMAXN=110; chararr[MAXN][MAXN]; intn,m; intmain(){ while(scanf("%d%d",&n,&m)!=EOF&&n+m){ for
u011345136
·
2014-01-07 21:00
UVALive
- 3507 Keep the Customer Satisfied
题意:收到n个订单,每个订单有q,d分别代表做这个的时间,和最晚的完成时间,问你最多能接受几个订单思路:贪心,我们显然要按最早的完成时间排序,那么接下来,我们用(6,8)和(4,9)做为例子,按照我们的贪心原则我们首先选择(6,8),然后再(4,9),但显然(4,9)作为首选才是最好的选择,试想一下不能两个都选的情况,就是我们总共做的时间4+6>9(第二个的最迟的时间),那么我们要删除做的时间最长
u011345136
·
2014-01-06 23:00
UVALive
- 3303 Songs
题意:一张CD上有n首频率为f[i],长度为了l[i]的曲子,因为CD不能随机播放曲子,想播放第i首时,必须依次播放前i-1,b[i]=f[i]*(a[1]+...+a[i]),sum=b[1]+..+b[n],求使sum最小的歌曲排列方式。 思路:那么b[i]+b[i+1]=(f[i]+f[i+1])*(a[1]+...+a[i-1])+f[i+1]*a[i+1]+f[i+1]*a[i]+f[i
u011345136
·
2014-01-04 22:00
UVALive
- 4725 Airport
题意:有一个机场只有一条起飞跑道,有两个入口E,W,每时刻只能有一架飞机起飞,而每时刻也都会有一些飞机进入入口E,W,在任意时刻,E通道和W通道里的飞机分别从0开始编号,你的任务是在每个时刻选择一架飞机起飞,使得任意时刻的飞机的最大编号最小思路:又是最大值的最小值,二分处理,问题是如何判断是否满足条件,贪心模拟显然是麻烦的,先想一下不满足的情况是什么吧,如果我们需要起飞的飞机使得最大的值不大于K的
u011345136
·
2014-01-03 16:00
UVALive
- 4254 Processor
题意:有n个任务,每个任务有三个参数,r,d,w,表示该任务必须在[r,d]之间执行,工作量是w,处理器执行速度可以变化,当执行速度是s的时候,一个工作量是w的任务需要需要的执行时间是w/s个工作单位,另外,任务不一定要连续的执行,可以分成若干块,求出处理器执行过程中最大速度的最小值,速度必须是整数思路:最大值的最小值用二分处理,对于一个速度来说,我们可以考虑它在单位时间能做的事,定义两个变量,一
u011345136
·
2014-01-02 20:00
UVALive
- 3621 Power Calculus
题意:给出x和正整数n,问最少需要几次乘除法可以得到x^n思路:迭代搜索+减枝#include #include #include #include usingnamespacestd; constintMAXN=1010; constintINF=10000007; intarr[MAXN],num; intdfs(intn,intstep){ if(num>step) return0; i
u011345136
·
2014-01-01 01:00
UVALive
- 5088 Alice and Bob's Trip
题意:A和B要去旅游。这有N个城市。而这些的城市的道路为一颗树。且边有向。A和B从0出发一起去旅游。A很懒想尽量少走路。B很有活力想尽量多走路但是无论怎么选择他们走的总路程都必须满足在[L,R]的范围内。所以他们交替选择走哪条路。开始由B选。然后问你在都采用最优策略的情况下。B最多能走多少路。思路:用dp[i]表示到第i个节点的能获得最大价值,一道不算难的树形DP,注意记录从头到现在节点所走过的长
u011345136
·
2013-12-30 20:00
UVALive
- 3637 The Bookcase
题意:有n本书,没本书有一个高度Hi和宽度Wi,现在要构建一个3层的书架,你可以选择将n本书放在书架的哪一层,设3层高度和(该层的书的最大高度)为h,书架总宽度为(该层的书的最大宽度)w,,要求h*w最小思路:不太好想的DP,但想到了也就没那么难了,首先将书按高度从大到小排序依次放,然后dp[i][j]表示第二层的宽度是i第三层的宽度是j的最小高度,问题有来了,怎么转移方程呢,不好想的就枚举状态吧
u011345136
·
2013-12-28 18:00
UVALive
- 3305 Tour 双调欧几里得旅行商问题
题意:真心想不出好的动态转移方程,看了题解原来是双调欧几里得旅行问题思路【转】: 欧几里得旅行商问题是对平面上给定的n个点确定一条连接各点的最短闭合旅程的问题。如图(a)给出了一个7个点问题的解。这个问题的一般形式是NP完全的,故其解需要多于多项式的时间。J.L.Bentley建议通过只考虑双调旅程(bitonictour)来简化问题,这种旅程即为从最左点开始,严格地从左到右直至最右点,然后严格地
u011345136
·
2013-12-28 14:00
UVALive
- 4987 Evacuation Plan
题意:有n支施工队在修一条笔直的高速公路,其中第i支队伍离告诉公路起点的距离是ai,另外还有m个避难所,其中第i个避难所离高速公路的起点的距离是bi,给每只施工队分配一个避难所,距离是|ai,-bi|,求使得所有施工队移动距离的总距离最小,每个避难所最起码有一个施工队,打印每个施工队伍的避难所号思路:很容易想到的是dp[i][j]将前i个队伍安排进前j个避难所的最小移动距离,可以贪心的想到每只队都
u011345136
·
2013-12-27 23:00
UVALive
- 4015 Caves
题意:一棵n个节点的有根树,树的边有正整数权,表示两个节点之间的距离,你的任务是回答这样的询问,从根节点出发,走不超过x单位的距离,最多能走多少个节点,节点经过多次算一个,对于每次的询问输出:经过节点数最大的值思路:树形DP,因为最近做的树形DP,都是三维的,最后一维表示是与否的,所以用d[i][j][c]表示以i为根节点的树经过了j个节点,1代表不返回i,0返回i,的最短距离所以我们单独考虑一棵
u011345136
·
2013-12-24 12:00
UVALive
- 3401 Colored Cubes
好久没写解题回顾了。主要是没什么时间,但是还是一直在刷题,图论刷了70%的知识点,不过感觉长进不是很大,所以觉得还是得一步步来,最近还是先从刘汝佳大白书把前面基础章节刷完然后再决定以后的训练方式吧。这个题目还算是理解了。重点在于各种姿态的的表示,顶部在上共有6种放置方法,然后正面对应4种,这样每个魔方对应24种方式放置。利用一个数组p[6]保存旋转后各个面对应的标准姿态的编号。然后将第一个魔方的任
·
2013-12-21 20:00
color
uvalive
10692 欧拉定理
a^x=a^(x%phi(c)+phi(c))(modc)a^phi(c)=1(modc)#include #include #include usingnamespacestd; //m^n%k longlongeular(longlongn) { longlongans=1,i; for(i=2;i*i1) { ans*=n-1; } returnans; } longlongquickpow
cugbbaoge
·
2013-11-21 16:00
Baoge
UVALive
2197 Paint the Roads(费用流)
n个点m条边的带权有向图,现在要将某些边涂上颜色,使得每个点恰好在k个有颜色的环上。每个点都在k各环中,说明每个点的入度=出度=k。用费用流搞,增加源汇点s,t,将每个点拆成两个点,u跟u+n,一个代表出度,一个代表入度。从s向每个u连的边,从每个u+n向t连的边,分别代表入度跟出度的上限。然后对于原图中的有向边,从u向v+n连一条的边。这样求s->t的最小费用最大流。如果能漫流,答案就是最小费用
diary_yang
·
2013-11-14 11:00
UVALive
3708 Graveyard
GraveyardTimeLimit: 3000MS MemoryLimit: Unknown 64bitIOFormat: %lld&%llu[Submit] [GoBack] [Status] DescriptionProgrammingcontestsbecamesopopularintheyear2397thatthegovernorofNewEarck--thelargesthum
u012797220
·
2013-11-14 11:00
Algorithm
ACM
uva
UVALive
- 6151
本题要求图里的最小环。n遍bfs,每一遍dfs求出包含某一顶点的所有环,这个dfs做不到,我卡了好久。#include #include #include #include #defineN510 #defineM20100 usingnamespacestd; intn,m; structEdge{ intv,next; }edge[M*2]; inthead[N],cnt; voidini
waitfor_
·
2013-10-23 20:00
UVALive
2755 Hidden Password(字符串最小表示)
题目大意:给你一个字符串,它可以左移循环,构成n-1个串,问你这些字符串中字典序最小的是哪个,输出它的首字母在原先串中的位置,如果有多个,那么就输出第一个出现的,就是位置最小的那个。思路:看着像后缀数组,尝试着加着一点剪枝敲了一下,果然TLE。。==后来一看,原来这道题的算法很经典,具体参见这篇论文吧:http://wenku.baidu.com/view/452cbcd528ea81c758f5
u010794465
·
2013-10-22 22:00
UVALive
5058
题意:问给你m个数取出n个数随意排列有多少中方法可以得到和给定分数一样的二叉树结构。思路:算是排列组合吧,首先不用管选的是哪n个数,因为结构和数是多少没有关系,只和数的大小关系有关,因此只要算出给定数有多少中排法再乘以所以组合种类数即可。不过看起来还是有点困难啊。这里我现将给定的数建立二叉树,然后dfs遍历,每个结点必须在它子节点的前面。我们可以看作是n个空位,每到一结点,让该结点为它自己及其子节
cugbbaoge
·
2013-10-22 16:00
Baoge
UVALive
4807||SYSU 2379 Cocircular Points 几何
题意:问最多多少个点可以在一个圆的边上。思路:三点确定一个园,枚举。可惜在scu上TLE了。。。。。。。。。。。。。。。。其他oj可以A#include #include #include #include #include #defineeps1e-6 usingnamespacestd; intn; doublex[105],y[105]; intans; voidlinecross(doub
cugbbaoge
·
2013-10-19 13:00
Baoge
UVALive
4815 || SYSU 2387 Kids' Wishes dfs+(字典树哈希)
这种方法在
UVALive
上可以过,不过在中山大学的oj就超时了,后来改成Trie树哈希做,就过了
cugbbaoge
·
2013-10-19 13:00
DFS
trie
Baoge
UVALive
4975 - Casting Spells Manacher+科学枚举
题意: 给了一个字符串...现在要找这样一个字串:设W为一个字符串..Wr为其逆串..现在要找的是WWrWWr...如果存在..输出其最长的长度..否则输出0.. 题解: 先用manacher找出每个位置为中点最长的回文串的长度...然后就是枚举了..简单的说WWrWWr一定也是回文的..而WWr又是回文的..那么就是要找长度4倍数的回文串
kk303
·
2013-10-18 15:00
UVALive
3887 Slim Span(枚举+MST,4级)
E- SlimSpanTimeLimit:3000MS MemoryLimit:0KB 64bitIOFormat:%lld&%lluSubmit StatusAppointdescription: SystemCrawler (2013-06-01)DescriptionGivenanundirectedweightedgraph G ,youshouldfindoneofspa
nealgavin
·
2013-10-16 13:00
UVALive
4670 Dominating Patterns(AC自动机模板题)
题目大意:给你n个模板串和一个文本串,让你求出在文本串中出现长度最多的模板串,先输出最大次数,如果有多个,那么按照输入顺序依次输出。思路:书上的例题,AC自动机的模板题。为了去重,直接给每个字符串编号就行了。发现还是按照书上last这样来更加好,当然也可以不要last,直接暴力+。代码如下:#include #include #include #include usingnamespacestd;
u010794465
·
2013-10-15 21:00
UVALive
4957 Fake scoreboard 最大流
传送门题意:给你行列的个数,然后给你每行Y的个数,每列Y的个数,看是否有符合条件的由NY构成的矩阵,有的话输出,要求字典序最小的那个。思路:最大流问题,首先可以建立超级源点,将源点向代表行的点建立边,容量为该行的Y数量,然后行点向列点建边,每对都建立容量为1的边,最后建立列点到超级汇点的边,容量为该列的Y个数。上述是建图方法,解此题时,要先统计行上Y的总和,列上Y的总和,若相等才建图,否则直接不可
cugbbaoge
·
2013-10-09 16:00
网络流
Baoge
UVALive
5913 Dictionary Size 解题报告
题目地址:https://icpcarchive.ecs.baylor.edu/index.php?option=com_onlinejudge&Itemid=8&page=show_problem&problem=3924题目描述:有n个字符串每个字符串的长度:1-40.现在希望组成新的字符串,新的字符串是原字符串的前缀和后缀拼接而成,要求你求出能够组成多少种新的字符串。解题思路:我们可以用tr
u010257508
·
2013-10-09 16:00
Algorithm
uvalive
UVALive
6135 Environment Protection (Simpson)
转载请注明出处,谢谢http://blog.csdn.net/ACM_cxlove?viewmode=contents by---cxlove非常裸的题。。。二分之后,求曲线交部分的面积。我只是保存自适应Simpson模板的。。#include #include #include usingnamespacestd; constdoubleeps=1e-10; doublew,h,area,a
ACM_cxlove
·
2013-10-09 14:00
UVALive
5903 Piece it together
一开始用的STL一直超时不能过,后来发现AC的代码基本都用的普通邻接表,然后改了一下13s,T=T,效率太低了。然后把某大神,详情戳链接http://acm.hust.edu.cn/vjudge/problem/viewSource.action?id=1199083的300+ms的代码加上自己的优化成功到了85ms,限时30s的程序还是挺有成就感的。题目分析:一个黑格子要和相邻的两个白格子构成一
·
2013-10-08 17:00
live
UVALIVE
5792 Trie+统计
题意:给你两种串,一种可以当前缀,一种可以当后缀,问两种串合起来,一共有多少种组合。并且没有重合。思路:我们先将两种串插入字典树,对于后缀串,我们反向插入,然后处理出每个字符对应的后缀的个数。我们来看一个组合的串,c=a+b。这个c可能很多种组合,但是,只要我们取a最大,那么这样计数就是唯一的。所谓a最大就是当搜到a是该前缀的最后一个字母,那么a就是最大的。这是对应a是最后一个字母的情况,那么如果
kdqzzxxcc
·
2013-09-27 21:00
UVALive
- 3713 Astronauts
给定n个宇航员的年龄,平均年龄为ave,根据下列要求分配任务:B任务只能分配给年龄=ave的宇航员;C任务可以任意分配。给定m组互相憎恨的宇航员,要求他们不能分配到同一个任务。能否存在这样的一组任务分配。每个宇航员都只能分配两种任务中的一种:A或C(年龄大于等于ave),B或C(年龄小于ave),那么为每个宇航员设立一个变量xi,xi为0表示分配C任务,为1则分配A或B(根据年龄)。对于互相仇恨的
·
2013-09-25 17:00
live
UVALive
3211 Now or later
每架飞机有早晚起降两种方式,给定n架飞机两种方式的起落时间,为每架飞机安排起落时间(早或晚),使得所有飞机起降时间按照早到晚的顺序之间的间隔时间最小值尽量大。分析:最小时间尽量大应该采用二分的方法比较好,然后就变成了判别某个时间间隔m是不是符合要求的了。为没加飞机设立一个变量xi,0表示早,1表示晚,然后每架飞机i用两个点2*i,2*i+1表示,前者如果被标记表示早,后者被标记表示晚降。然后对不同
·
2013-09-25 09:00
live
UVALive
- 4287 Proving Equivalences
给定n个命题之间的已经证明的关系如ab表示已经证明蕴含式a→b,要求还需要再作多少次证明使得所有的命题都是等价的.将每个命题看成一个点,已经证明的命题之间连一条边,问题转化为添加多少条单向边使得图成为一个强连通分量.先求出所有的强连通分量,然后缩点构成一个SCC图,统计其中入度为0的点个数a,以及出度为0的点的个数b,max(a,b)就是需要再作的证明.注意当图一开始就是强连通时,不需要作出证明了
·
2013-09-24 11:00
live
UVAlive
5792 Diccionário Portuñol (Trie)
转载请注明出处,谢谢http://blog.csdn.net/ACM_cxlove?viewmode=contents by---cxlove题目:有两个字符串集合,从第一个集合中取某个串的非空前缀,从第二个集合中取某个串的非空后缀,拼接成一个串,问有多少个不同的新串。https://icpcarchive.ecs.baylor.edu/index.php?option=com_onlinej
ACM_cxlove
·
2013-09-24 00:00
UVALive
- 5135 Mining Your Own Business
刘汝佳白书上面的一道题目:题意是给定一个联通分量,求出割顶以及双连通分量的个数,并且要求出安放安全井的种类数,也就是每个双连通分量中结点数(除开割顶)个数相乘,对于有2个及以上割顶的双连通分量可以不用安放安全井。如果整个图就是一个双连通分量,那么需要安放两个安全井,种类数是n*(n-1)/2.代码来自刘汝佳白书:1#include 2#include 3#include 4#include
·
2013-09-23 22:00
live
UVALive
- 4255 Guess
给定一个字符矩阵,s[i][j]为+,-,0分别表示ai+……….aj的和为正,负,0。可以将连续和转化为前缀差,即s[i][j]为+可以表示为B[j]-B[i-1]为正,B[i]表示前i项的和,B[0]为0,然后拓扑排序找出相对关系再依次取值即可。注意相同的B[i],B[j]要注意保存,最后两者的值统一。最终输出结果a[i]=B[i]-B[i-1]l.代码:#include #include
·
2013-09-20 13:00
live
Guardian of Decency(二分图)
GuardianofDecencyTimeLimit:3000MS MemoryLimit:0KB 64bitIOFormat:%lld&%lluSubmit Status Practice
UVALive
3415Description
铁树银花
·
2013-09-20 13:00
UVALive
3027 Corporative Network
给定两种操作1.EI查询I到根节点的距离2.IIJ将I的父节点设为J,I,J的距离变为|I-J|%1000。在查找结点的时候顺便把结点到根节点的距离更新。代码:1#include 2#include 3#include 4#include 5#include 6#include 7#include 8#include 9#include 10#defineesp1e-6 11#
·
2013-09-17 19:00
NetWork
UVALive
3635 Pie 切糕大师 二分
题意:为每个小伙伴切糕,要求每个小盆友(包括你自己)分得的pie一样大,但是每个人只能分得一份pie,不能拿两份凑一起的。做法:二分查找切糕的大小,然后看看分出来的个数有没有大于小盆友们的个数,它又没说每个pie都要分完,分不完的留给工作人员吃嘛。代码:/* *Author:illuz *Blog:http://blog.csdn.net/hcbbt *File:live3652.cpp *Cre
hcbbt
·
2013-09-10 01:00
ACM
UVALive
3971 Assemble 电脑配件 二分+贪心
题意:某人想组装电脑,有很多电脑配件可以选,每样都有它的价格和质量,每种配件一定要买一个,现在给出钱数,求能组装出来的电脑里面配件质量最便宜的是多少。当然不能超出预算的啦。每次枚举那个最便宜的,然后贪心,每次找价格最小且价格大于最便宜的,如果超支就向前二分,否则向后二分。这题折腾了一晚上==,差点跪了。。。最后发现排序没处理好,郁闷。。。得先排前再排质量。代码:/* *Author:illuz *
hcbbt
·
2013-09-10 00:00
ACM
UVALive
2519 Radar Installation 雷达扫描 区间选点问题
题意:在坐标轴中给出n个岛屿的坐标,以及雷达的扫描距离,要求在y=0线上放尽量少的雷达能够覆盖全部岛屿。很明显的区间选点问题。代码:/* *Author:illuz *Blog:http://blog.csdn.net/hcbbt *File:l2911.cpp *CreateDate:2013-09-0920:51:05 *Descripton: */ #include #include #in
hcbbt
·
2013-09-09 21:00
ACM
UVALive
5717 Peach Blossom Spring(斯坦纳树 STNT)
题目大意:给你n个点,m条边,问你建立至少包含前k个点和后k个点的最小生成树,也可能是森林,每棵树的前面点的个数要和后面点的个数相等。思路:STNT。如果大家对斯坦纳树不是很了解的,可以参看这里:http://endlesscount.blog.163.com/blog/static/821197872012525113427573/这道题目还有点不一样,那就是它可能最后搞出来是森林,所以读入,先
u010794465
·
2013-09-09 19:00
Huffman编码的不建树做法
UVALive
2088 Entropy
题意:huffman编码,不懂看coolshell大神的博文,要求输出最优码长和原始码长以及比值。(原始码长就是每个字符都是按8个长度算)分析:本来huffman编码还好,但是用建树敲完一遍调了半天,实在蛋疼(果然我编码能力太渣)。于是我开始想不建树的算法,想了半天,终于YY出一个算法==。(借用coolshell的例子来说)字符次数‘b’3‘e’4‘p’2‘‘2‘o’2‘r’1‘!’1第一次建树
hcbbt
·
2013-09-08 23:00
编码
ACM
UVALive
3412 Pesky Heroes
题目大意:反正是没怎么看懂,可以看一下这位大牛的博客 http://hi.baidu.com/_lt_zyc/item/bcfb7af5f9280801d6ff8cd7,说实话,看了之后,也不是很懂。。。思路:这位大牛里的博客里也说了,可我还不是很理解,题意有点坑,先放一放吧,今天太晚了,以后再来填。。==代码如下(借鉴着别人的代码,自己也写了个,因为写得比较挫,INF由于一直加,会爆,因为这个还
u010794465
·
2013-09-07 23:00
UVALive
3637 The Bookcase
题目大意:有n(3book[i].t,k>book[i].t。知道了第二、三层的t和,那么第一层就是s-i-j,关键还在于第一层的h。这里我们考虑把高度最大的一本书放在第一层,即排序后的book[1],然后DP的时候从i=2开始,所以答案就是min( (d[n][i][j]+book[1].h)*max(i,j,s-i-j))。由于空间问题,这里还需要用滚动数组来优化空间。这题的DP真心不好想,原
u010794465
·
2013-09-07 13:00
130902 周赛
UVALIVE
地址:https://icpcarchive.ecs.baylor.edu/index.php?
kdqzzxxcc
·
2013-09-06 17:00
UVAlive
5792 Diccionário Portuñol
题目题意:给出P个字符串,从所有字符串的前缀中任选一个,再给T个字符串,从所有字符串的后缀中任选一个,将其拼起来,能得到多少个不同的字符串。题解:考虑什么时候会发生重复出现字符串的情况:若P中有ab,T中有bc,那么a+bc和ab+c,产生了两个abc。所以将T中所有字符串倒置,建立trie树,就可以知道有多少个不同后缀是以a开头,多少个不同后缀以b开头......,如上例中,以b开头的后缀有1个
u010638776
·
2013-09-05 14:00
UVAlive
5798 Jupiter Atacks!
题目题意:n个数,两种操作,Eab第a个数等于b,Hab求区间[a,b]的hash值,hash函数为将区间[a,b]转一个B进制的数模mod。题解:单点更新,区间查询,预处理出来B的幂次方。代码:#include #include #include #include usingnamespacestd; #defineMAXN100005 intn,m,mod; longlongba,data[
u010638776
·
2013-09-05 13:00
UVAlive
6131 dp+斜率优化
这道题和06年论文《从一类单调性问题看算法的优化》第一道例题很相似。题意:给出n个矿的重量和位置,这些矿石只能从上往下运送,现在要在这些地方建造m个heap,要使得,sigma距离*重量最小。思路:O(n^3)的DP解法是很容易想出来的。dp[i][j]表示第i个矿石点是j个heap的最小花费。dp[i][j]=min(dp[i][j],dp[k][j-1]+sigma(sum[i]-sum[k]
kdqzzxxcc
·
2013-09-03 22:00
UVAlive
5875 DP
题意:给你一堆二维点,每个点有一些分数。现在要从点(0,0)出发,只能从标号小的点走到大的点,每个人有一个走的距离的限制,问最后能拿到的最高的分数,当然这个人从(0,0)出发还得回到(0,0)。思路:用dp[i][j]表示在点i分数为j的最短距离,转移方程就是dp[i][j]=min(dp[i][j],dp[k][j-w[k]]+Map[i][k])。CODE:#include #include
kdqzzxxcc
·
2013-09-03 17:00
uvalive
2088 - Entropy(huffman编码)
题目连接:2088-Entropy题目大意:给出一个字符串,包括A~Z和_,现在要根据字符出现的频率为他们进行编码,要求编码后字节最小,然后输出字符均为8字节表示时的总字节数,以及最小的编码方式所需的总字节数,并输出两者的比率,保留一位小数。解题思路:huffman编码。#include #include #include usingnamespacestd; constintN=10005;
u011328934
·
2013-09-02 17:00
上一页
16
17
18
19
20
21
22
23
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他