自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

绝望的乐园

在哪个世界都是一样的.....人们都是笑着,哭着,然后死去.....

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

原创 前向星与链式前向星

前向星是一种用来存储图的数据结构。它的构造方式很简单,读入每条边的信息,然后存到数组中,然后将数组排序,排序方法是按照起点顺序排序,若起点相同则按终点顺序排序,如果终点相同则按权重排序(如果有权重)。另外,为了方便查询,会用一个数组head[]存储起点为v的第一条边的位置。  具体实现方法如下: const int maxn=100+10;const int maxm=1000+10

2013-06-24 17:01:12 2398

原创 UVA 11525 Permutation

题意:给出两个整数n和k,求出1~k的所有序列中,按照字典序从小到大排列后的第n个序列(从0开始编号),其中n用k个整数给出 :。思路:先考虑n个数的排列情况,如果第一个数是2的第一个序列是2、1、3……k,在它之前的所有序列的个数就等于以1开头的序列的个数,即(n-1)!,这样很容易看出第一个数为所有的数中第S1+1个数,后面的数以此类推,就可以求出整个数列。这样的话可以采用线段树,如果这个

2013-06-21 20:59:29 1067

原创 UVALive 4108 SKYLINE

这题写了三四天,真是写郁闷了,后来才发现自己这题写2B了,唉,桑心。题意:在地平线上依次建n座建筑物。建筑物的修建按照从后往前的顺序,修建完一座建筑物以后,统计它在多长的部分是最高的,并把这个长度称为“覆盖度”,最后输出总的覆盖度。思路:刚开始的时候,我的思路比较简单,就是记录每个区间最高的建筑物有多高,如果要修建的这个建筑物的高度比这个区间最高的建筑物还高,那么这个结果就要加上这个区间的

2013-06-19 20:54:16 1316

原创 poj3667 Hotel

题意:有n个房间排成一排,有m个操作,对于操作1,询问是否有长度为v的连续的空房间,如果有,输出最小的左边的房间的编号,然后旅客将住进这些房间。对于操作2,将x开始,长度为D的房间清空。思路:线段树。用3个数组tsum,presum,fixsum分别记录当前区间的最长连续空房间的长度、从区间最左边开始最长连续空房间的长度、从区间右边开始最长连续空房间的长度。每次更新时,tsum要么等于左右儿子

2013-06-19 14:02:00 744

原创 UVA 11987 Almost Union-Find

并查集可以做,只不过需要些技巧,昨天写了一下,发现有些问题,合并的话还是比较简单的,直接将他们所在集合的各个值合并即可,但是将p移动的时候就有问题了,当parents[p]不等于p的时候没有什么问题,但是p如果等于parents[p]就有问题了,如果将p移走,那么查找parents[q]=p的节点就会出现问题。我想了很久,没想到什么好办法,今天问了问其他少侠,得到一个不错的思路,就是为每个点设置一

2013-06-13 20:53:50 718

原创 UVA 11645 Bits

这题写的真是无比蛋疼啊,刚开始看,感觉像是数位dp,想了想,应该能做,那就搞吧,费了半天劲终于写完了,数据看起来也没啥问题了,交上去发现wa了,后来发现数据非常大的话就会超出long long的范围,这意思是要写高精啊,当时就郁闷了,没办法,又写了半天大整数加法和乘法,为了把之前的代码改成大整数的又弄了一会儿,写完真是累死人了。。。唉,这代码写的真是不忍直视,凑合看吧……        对于一

2013-06-13 20:39:40 1175

原创 UVA 11988 Broken Keyboard (a.k.a. Beiju Text)

直接模拟,从后向前扫描,直到遇到'['或者']',遇到'['的话,就将这一段的字符直接输出,因为这一段的字符必定是在前面的字符前的,遇到']'的话将这一段的字符存到数组中,最后将其输出。 代码: #include #include#include#include#include#include#include#include#include#include#de

2013-06-13 20:18:02 733

原创 UVA 11992 Fast Matrix Operations

一个不错的线段树的题,区间更新,为每一行建一个线段树,需要维护的有和、最小值和最大值,剩下的就没什么大问题了。说来有趣,这代码是我去东北赛的时候无聊在火车上写的,写了整整3篇草纸,后来回来以后敲上也没debug竟然直接过了……说不定我在纸上写代码的准确率比在机器上敲要高。。。 代码: #include #include#include#include#include#in

2013-06-13 20:08:48 1310

原创 LA 3938 "Ray, Pass me the dishes!"

这题写的比较蛋疼,看着刘汝佳大神的书写的,还写了一天,真是惭愧啊,思路和书上当然是一样的,维护最大连续和的区间、最大前缀和的区间以及最大后缀和的区间就行了,但是感觉不太好写,之前写完了敲了很多测试数据也没看出错误,wa了好几次,后来实在没办法,又重头到尾扫了几遍,改了几个bug才终于A掉了。 #include #include#include#include#include#in

2013-06-13 20:01:46 1393

原创 LA 4329 Ping pong

题意:有n个兵乓球选手,每个人都有唯一的一个技能值,每场比赛需要一个裁判,这个裁判的技能值和标号都要在两个选手之间,问能够举办的比赛的种类。思路:对于第i个人来说,如果可以求出在他左边比他技能值小的数量ai和在他右边比技能值比他小的人得数量bi,那么就可以分别算出左右两边比他技能值大的选手的数量ci和di,则当第i个人当裁判时,就有ai*di+bi*ci种比赛种类。由于技能值的范围比较小,求a

2013-06-13 19:44:24 809

原创 UVALive 3027 Corporative Network

题意:有n个结点、两个操作。第一个操作是将结点u的父结点设置为v(距离为|u-v|%1000),第二个操作是询问u到根结点的距离。思路:并查集。用一个额外的数组储存当前结点到父结点的距离,不加路径优化2000多ms过了,速度慢了点,加优化的话就要维护数组了,应该速度会提升很多。 代码: #include #include#include#include#include

2013-06-06 22:42:59 897

原创 UVALive 3644 X-Plosives

赤裸裸的并查集。。。。 代码: #include #include#include#include#include#include#include#include#include#include#define inf 0x3f3f3f3f#define Inf 0x3FFFFFFFFFFFFFFFLL#define eps 1e-9#define pi a

2013-06-06 22:36:38 1023

原创 UVA 11997 K Smallest Sums

题意:给你k个数组,每个数组有k个元素,在每个数组中取一个数,将它们求和,求出最小的k个和。思路:在解决这个问题之前可以先想下两个数组的情况。           如果数组只有两个,从两个数组中分别取一个元素求和,求最小的k个和。假设数组已经是有序的,那么最小的和就在A1+B1、A2+B1、A3+B1……An+B1中,每当找到一个最小的和,那么就将Aa+Bb-Bb+Bb+1。最后取k此即为

2013-06-06 22:33:17 882

原创 UVALive 3135 Argus

题意:编写一个Argus系统,这个系统可以执行一个命令:Register Q_num Period,这个命令每Period秒就会产生一个编号为Q_num的事件。你的任务是求出前k个事件。思路:用优先队列直接模拟即可,每次获取一个事件后,将此事件的时间加Period在插入优先队列中,执行k此即可。 代码: #include #include#include#include

2013-06-06 22:18:48 973

原创 UVA 11991 Easy Problem from Rujia Liu?

题意:给出一个包含n个数的数组,每次询问两个整数k和v,输出从左到右第k个v的下标。思路:利用STL中的vector和map构造一个数组,用来储存每个v的下标。 代码: #include #include#include#include#include#include#include#include#include#include#define inf 0x

2013-06-06 22:12:41 637

原创 UVA 11995 I Can Guess the Data Structure!

题意:根据所给的操作,猜测数据结构。思路:直接模拟即可。 #include #include#include#include#include#include#include#include#include#include#define inf 0x3f3f3f3f#define Inf 0x3FFFFFFFFFFFFFFFLL#define eps 1e-9#

2013-06-06 22:05:43 757

C#打字小游戏

C#写的,练练手。。。写的比较简单,但是忘了写注释……

2012-04-15

空空如也

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

TA关注的人

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