Evanyou Blog 彩带
摘要: 题目传送门 题目描述乔治有一些同样长的小木棍,他把这些木棍随意砍成几段,直到每段的长都不超过50。 现在,他想把小木棍拼接成原来的样子,但是却忘记了自己开始时有多少根木棍和它们的长度。 给出每段小木棍的长度,编程帮他找出原始木棍的最小可能长度。 输入输出格式输入格式:输入文件共有二行。 第一行为一个 阅读全文
posted @ 2018-04-19 21:49 HolseLee 阅读(547) 评论(0) 推荐(0) 编辑
摘要: 题目传送门 题目描述 Problem Description YaoYao is fond of playing his chains. He has a chain containing n diamonds on it. Diamonds are numbered from 1 to n.At 阅读全文
posted @ 2018-04-17 20:06 HolseLee 阅读(175) 评论(0) 推荐(0) 编辑
摘要: 按照惯例,每次比赛完以后都要写酱油记。 Day0: 明天就要省选了,今天同学们都回去了(因为后天要去春游),整个年级只剩下竞赛生。本来打算晚上好好复习一下,结果。。。。。。颓了一晚上。。。。。。(好吧,其实这也是日常了)唉,明天凭人品吧 Day1: 一试心态爆炸不多解释。。。蒟蒻还是太嫩了。。。 本 阅读全文
posted @ 2018-04-14 16:04 HolseLee 阅读(314) 评论(0) 推荐(0) 编辑
摘要: 题目传送门 分析: 好吧,其实没什么好分析的,左偏树裸题。 Code: 阅读全文
posted @ 2018-04-13 20:26 HolseLee 阅读(171) 评论(0) 推荐(0) 编辑
摘要: 题目传送门 转载自:five20,转载请注明出处 本来看到这题,蒟蒻是真心没有把握的,还是five20大佬巨orz 首先由于斐波拉契数的前两项是1,1 ,所以易得对于任何整数必能写成多个斐波拉契数加减的形式。 对于一个数x ,我们贪心找到与x 差值最小的斐波拉契数,将新的x 赋为差值,每次进行这个操 阅读全文
posted @ 2018-04-13 19:38 HolseLee 阅读(189) 评论(0) 推荐(0) 编辑
摘要: 题目传送门 分析:一道策略游戏题,要求最大期望得分和最小期望得分。首先分析最大,很显然是可以用一种类似于田忌赛马的思维来做,将两队的实力按照从大到小(其实从小到大也可以)排序,然后就按照顺序比较,可能会出现以下几种情况: 我方最大>对方最大,则用我方最大对抗对方最大 我方最小>对方最小,则用我方最小 阅读全文
posted @ 2018-04-13 12:19 HolseLee 阅读(170) 评论(0) 推荐(0) 编辑
摘要: 题目传送门 分析:数据范围并不大,也不难想到是贪心。因为钓鱼和移动的时间都是5的倍数,而且给定的h以小时为单位,所以在输入的时候可以直接将h乘以12,然后每次钓鱼花费的时间就是1,移动花费的时间就是t[i]。但是因为题目中给定了多个湖泊,而且每次钓鱼后鱼的数量会减少,因此还要考虑最优化策略。当然这里 阅读全文
posted @ 2018-04-13 12:06 HolseLee 阅读(234) 评论(0) 推荐(0) 编辑
摘要: 题目传送门 分析:看到这题呢,首先想到的就是搜索,数据范围也不大嘛。但是仔细思考发现这题用搜索很难做,看了大佬们的题解后学到了,这一类题目要用二分图匹配来做。可以知道,如果想要的话,每一个子都可以移动到任意位置(当然会对其他子造成影响),我们还可以发现,每一行或每一列有哪些子其实绝对是固定的,只是它 阅读全文
posted @ 2018-04-03 20:55 HolseLee 阅读(249) 评论(0) 推荐(0) 编辑
摘要: 题目传送门 分析:刚看到题目是有点没方向,(毕竟我这蒟蒻才刚学左偏树)然后看了看别的大佬的博客以后大概懂了,将每个骑士丢进一颗左偏树中,然后进行dfs对每一个城池进行搜索,如果某一个骑士在该城池死亡就将其从弹出并记录。然后过程中下放标记就差不多OK了。具体还是看代码吧。 Code: 阅读全文
posted @ 2018-03-22 21:15 HolseLee 阅读(177) 评论(0) 推荐(0) 编辑
摘要: 题目传送门 分析:首先看小范围的数据,很容易可以想到用DP,方程为f[i][j]=max(f[i-1][j],f[i-2][j-1]+a[i]),f[i][j]表示到第i个坑种了j棵树的最大收益。但是很显然不能过全部数据(亲测只有五十分)。正解以该要用优先队列,将所有的数据丢进一个大根堆中维护,然后 阅读全文
posted @ 2018-03-20 20:29 HolseLee 阅读(220) 评论(0) 推荐(0) 编辑
摘要: 题目传送门 分析:题目中提到了优先级,很显然这题要用优先队列+模拟。题目中很多细节需要注意,还是在代码中解释吧,这里我用的是手打的堆。 Code: 阅读全文
posted @ 2018-03-20 17:23 HolseLee 阅读(166) 评论(0) 推荐(0) 编辑
摘要: 题目传送门 分析:这题和另外一个题目中位数非常相似,有兴趣可以先看看,比这一题简单。首先暴力模拟还是别想了,估计30%的数据都有点悬。正解应该是用二叉堆。但是如果用一个堆当然不方便,所以建两个堆,一个大根堆,一个小根堆,每次只要出现询问操作,就把小根堆的堆顶丢进大根堆中维护,然后输出就可以了,但是要 阅读全文
posted @ 2018-03-18 20:29 HolseLee 阅读(266) 评论(0) 推荐(0) 编辑
摘要: 树状数组总结与讲解 部分参考自:https://www.cnblogs.com/hsd-/p/6139376.html http://blog.csdn.net/yexiaohhjk/article/details/510775 转载请注明出处 树状数组 首先大家都知道二叉树,如下图: 那么现在变形 阅读全文
posted @ 2018-03-17 09:18 HolseLee 阅读(217) 评论(0) 推荐(0) 编辑
摘要: 题目传送门 分析,首先要查找一个认识的猴子群体(简称猴群)中力气最大的猴子,又要合并两个打完架的猴群,很明显是可并堆的性质,所以这题就是一个左偏树模板。那么套模板就可以了,不过注意,因为要把力气最大的猴子的力气减半,所以就先把它从猴群中删除,减半后放回去再求现在猴群中的力气最大值就可以了。 Code 阅读全文
posted @ 2018-03-15 21:46 HolseLee 阅读(165) 评论(0) 推荐(0) 编辑
摘要: 题目传送门 首先分析题目,数据范围特别大,500000组询问直接模拟肯定会超时,这里其实很容易可以想到用并查集。我们定义三个数组:fa[]表示每一个飞船的队首,front[]表示每一搜飞船到队首的距离,num[]表示以该飞船为队首的队伍中飞船的数量。每次M操作时就将x的队首的num值清空,并将fa值 阅读全文
posted @ 2018-03-10 15:05 HolseLee 阅读(203) 评论(0) 推荐(0) 编辑