上一页 1 ··· 6 7 8 9 10 11 12 13 14 ··· 32 下一页
摘要: 找规律题?YY题?题意:给出一条线的长度L(直线在[0,L]),和蚂蚁数,下面m个数字表示m个蚂蚁的起始位置(整数,坐标),所有蚂蚁向哪边走不确定,但是两个蚂蚁相撞会掉头走。蚂蚁的速度1cm/s,蚂蚁没有长度是一个点,另外蚂蚁走到直线的两个尽头就会掉下去。问怎么走,所有蚂蚁最快掉下去,输出时间(所有蚂蚁都掉下去后再输出时间而不是第一个掉下去就输出),然后怎么走最晚掉下去,输出所有蚂蚁都掉下去的时间这题真想不到什么算法,不过可以确定一些基本的策略1.最快掉下去:以中点为轴,位于两端的蚂蚁都向两端走,这样他们不会发生任何的碰头,直接全部掉下去,那么最后掉下去的蚂蚁,是离中点最近的蚂蚁,它是最后掉下 阅读全文
posted @ 2013-04-12 11:50 Titanium 阅读(757) 评论(0) 推荐(0) 编辑
摘要: 数据结构:暴力(可用哈希优化)+建树+前序遍历题意:输入行数n,下面n行是一下文件的路径(和平常使用的电脑一样),一整行数据中没有空格(还好,别有搞些空格出来),要你整理好所有文件的路径,从根开始,输出所有的文件夹名首先一点,我们要名字,在同一个文件夹下,是不会有重名的文件夹的即a\ba\b这种是非法的(和电脑一样),但是输入中可以有,有的话只是一种重复输入,不是代表a下面真的有两个b然后不同文件夹下可以由相同的名字,就好比你D盘和E盘都有一个文件夹叫“电影”例如a\bd\b这种是合法的在输入中也是会出现的,看case就知道。另外,每个文件夹都只有一个双亲好像a\b\c\d , 你要找d,输入 阅读全文
posted @ 2013-04-12 10:52 Titanium 阅读(602) 评论(0) 推荐(0) 编辑
摘要: 简单树型DP题意:一个图,N个点,N-1条边,并且说明是树(一棵树,连森林都排除掉了)。在这颗树中删除一个点rt以及和他关联的边,那么剩下的部分将会是森林,统计森林中每棵树的节点数,最大值记录下来为dp[rt],你的任务是找出最小的dp[rt],如果有多个rt相等,那么按升序输出所有rt的编号一个最大值最小的问题,解法是求出所有的dp[rt]然后记录最小值因为本来是一棵树,用哪个做顶点都可以,默认为1,为整个树的祖先。定义sum[rt] = 以rt为根的子树含有的节点数 dp[rt] =dp[rt]:除去rt后,各个分块中节点数的最大值 ans = min{ dp[rt] }; 删掉rt... 阅读全文
posted @ 2013-04-11 23:07 Titanium 阅读(268) 评论(0) 推荐(0) 编辑
摘要: 树DP题意:输入n和m,表示n个城市,m条无向边,下面一行n个数字,表示每个城市的权值,下面m行是每条边的信息,u,v,w,顶点和边权。问你从一个城市出发,走出一条路线,使得权值和最大,权值和包括这条路线上城市的权值和边的权值和。题中有一句话出卖了它是个树DP:It turned out that if Petrovich can fly (using one or several flights) from townito townj, then there is exactly one way to do this.从一个顶点去另一个顶点如果连通的话只有一条路径,说明这个无向图其实是个无根 阅读全文
posted @ 2013-04-11 10:16 Titanium 阅读(371) 评论(0) 推荐(0) 编辑
摘要: http://www.cqoi.net:2012/JudgeOnline/problem.php?id=1380题意什么的都在里面,中文题目不用解释个人感觉是数据的问题,因为网上找遍了代码都不能通过,算了还是不纠结了代码写得也不好,无心机改了/*dp思想:dp[rt][p],当前节点rt,有p点,能获得的最大价值1.可以用一部分来升级当前的这个技能,升的级数不确定,但升级需要花费点数,花费的点数 c<=p2.不升级当前,全部用于升级子树和兄弟。但注意,若不升级当前节点而且当前节点等级是0,那么 其子树不能升级,只能升级其兄弟*/#include <cstdio>#includ 阅读全文
posted @ 2013-04-10 23:24 Titanium 阅读(343) 评论(0) 推荐(0) 编辑
摘要: 树DP经典问题,公司聚会,下属和直属上司不能共存,给出每个人的快乐值,再给出每个人的编号和他的上司,选出一些人参加聚会使快乐值最大/*从叶子开始选择,每个节点只有选不和不选两种可能,dp[rt][0],dp[rt][1]分别表示选和不选该节点dp[rt][1]=sum{ dp[son][0] }+val[rt] , 因为跟选了它的儿子就全部不能选dp[rt][0]=sum{ max{dp[son][0] , dp[son][1]} }如果根不选,那么儿子的选择就多样化了,每个儿子又是互不干扰的所以令每个儿子最优,加起来根就是最优的,而每个孩子无非还是选和不选,一比较就能得到每个儿子的最优方案而 阅读全文
posted @ 2013-04-09 23:09 Titanium 阅读(359) 评论(0) 推荐(0) 编辑
摘要: 提交地址:http://www.cqoi.net:2012/JudgeOnline/problem.php?id=1709问题描述如果一个数x的约数和(不包括它本身,下同)比它本身小,那么x可以变成它的约数和;如果对于某个y>x且y的约数和为x,那么x也可以变成y。例如,4可以变为3,1可以变为7。限定所有的数字变换在不超过n的正整数范围内进行,求不断进行数字变换且没有重复数字出现的最多变换步数。输入数据 输入一个正整数n。输出数据 输出最少需要花费的时间。 (这里原题应该打错了,应该是输出最大转换步数)样例说明 一种方案为:4→3→1→7。时间限制 各测试点1秒内存限制 你的程序将.. 阅读全文
posted @ 2013-04-07 18:56 Titanium 阅读(726) 评论(1) 推荐(0) 编辑
摘要: 树型DP这题刘汝佳居然归在数学题里面,他的用意应该是想归在递推的,但是这题更应该属于一个经典树DP题意:给一个图,两个点间不会有重边,边时双向连通的,另外注意这句话,there is only one route from a village to a village that does not pass through some other village twice.这句话说明了,这个图是很特殊的,其实是一个无根树。要求的是,找出两点,他们的距离最远有两种思路,但是本质还是一样的,写法不同,推荐后面那种第一种:/*思考方法:这个图的本质是个无根树,所以我们指点任意一个节点为树根即可,因而指 阅读全文
posted @ 2013-04-07 13:31 Titanium 阅读(763) 评论(0) 推荐(0) 编辑
摘要: 提交地址:http://www.cqoi.net:2012/JudgeOnline/problem.php?id=1286这题是OI的经典题,不难,注意一点,原题是用文件输入输出的,但是这里的提交直接标准输入输出即可这题的题意很清晰,明说了是二叉树(而且只能在两个孩子的节点和叶子节点)。注意输入给出的信息,对于一对数据,a,b,a指通过走廊的时间,那是不是树中边的信息呢?不是的,应该是点的信息。树中每一个点都应该包含两个信息,就是时间花费和它有多少张画,对于非叶子节点而言,它的画数都是0,而时间是有的,对于叶子节点,除了有画数外,它也是有时间花费的另外,本题读题要仔细,它是说在警察来之前就要离 阅读全文
posted @ 2013-04-07 10:27 Titanium 阅读(438) 评论(0) 推荐(0) 编辑
摘要: 数据结构:堆题目请你写一个内存管理系统。 内存中有30000个块,编号为1..30000。 当操作系统需要内存时内存管理系统会找出编号最小的空闲块,向里面写入数据。 操作系统还会会发出指令读取某个编号的内存块。如果目标块空闲,读取失败,否则读取成功。 一开始所有块都是空闲块。被写入数据之后就不是空闲块了。 如果一个块在600秒内没有被写入或读取,这块内存自动清空,变为空闲块。 本题中不会出现内存块不够用的情况。输入格式每行一个要求,可能是申请内存或读取。申请内存的格式如下: T + T表示这条请求收到时的时间,是不大于65000的整数,以秒为单位。读取内存的格式如下: T . N T表示这条请 阅读全文
posted @ 2013-04-06 18:49 Titanium 阅读(383) 评论(0) 推荐(0) 编辑
上一页 1 ··· 6 7 8 9 10 11 12 13 14 ··· 32 下一页