随笔分类 - 高效算法
UVa 12174 Shuffle (滑动窗口)
摘要:题意:你正在使用的音乐播放器有一个所谓的乱序播放功能,即随机打乱歌曲的播放顺序。假设一共有s首歌, 则一开始会给这s首歌随机排序,全部播放完毕后再重新随机排序、继续播放,依次类推。注意,当s首歌播放完毕之前不会重新排序。 这样,播放记录里的每s首歌都是1~s的一个排列。给出一个长度为n的1≤s,n≤
阅读全文
HDU 2138 How many prime numbers (判素数,米勒拉宾算法)
摘要:题意:给定一个数,判断是不是素数。 析:由于数太多,并且太大了,所以以前的方法都不适合,要用米勒拉宾算法。 代码如下:
阅读全文
HDU 3177 Crixalis's Equipment (贪心,差值)
摘要:题意:判断 n 件物品是否可以搬进洞里,每件物品有实际体积A和移动时的额外体积 B 。 析:第一反应就是贪心,一想是不是按B从大到小,然后一想,不对,比如体积是20,第一个 是A=11, B=19.第二个是A = 1,B = 18.很明显不对。 我们取AB的差值,进行贪心,为什么呢? 我反过来想一下
阅读全文
HDU 1050 Moving Tables (贪心)
摘要:题意:在一个走廊两边都有对称分布的连续房间,现在有n张桌子需要从a移动到b房间。每次移动需要10分钟, 但是如果两次移动中需要经过相同的走廊位置,则不能同时进行,需要分开移动。最后求最少需要多长时间移动完所有的桌子。 析:这应该是一个贪心算法,时间尽量少,但是在一走廊如果相遇,必然是要分开的,所以说
阅读全文
HDU 1009 FatMouse' Trade (贪心算法)
摘要:题意:就是老鼠要用猫粮换粮食,第i个房间一些东西,要用东西去换,可以不全换。问给定的猫粮最多能换多少粮食。 析:贪心算法。我们先算出来每个房间物品的平均价格是多少,肯定越低越好,并且如果能全换就全换,如果不能, 肯定是最后一次了,就把剩下全部换了,看看能换多少。求和。 代码如下:
阅读全文
HDU 2095 find your present (2) (异或)
摘要:题意:给定n个数,让你找出那一个次数为1的。 析:由于题意说了,只有那一个数是奇数,所以其他的都是偶数,根据异或的性质,两个相同的数异或为0; 任何数和0异或得原数,可以很简单的做出这个题。 代码如下:
阅读全文
UVa 11134 Fabled Rooks (贪心+问题分解)
摘要:题意:在一个n*n的棋盘上放n个车,让它们不互相攻击,并且第i辆车在给定的小矩形内。 析:说实话,一看这个题真是没思路,后来看了分析,原来这个列和行是没有任何关系的,我们可以分开看, 把它变成两个一维问题,也就是说,我们可以把行看成是1-n,然后把x1-x2看成小区间,这样的话, 是不是就感觉简单的
阅读全文
UVa 10382 Watering Grass (区间覆盖贪心问题+数学)
摘要:题意:有一块长为l,宽为w的草地,在其中心线有n个喷水装置,每个装置可喷出以p为中心以r为半径的圆, 选择尽量少的装置,把草地全部润湿。 析:我个去啊,做的真恶心,看起来很简单,实际上有n多个坑啊,首先这个题,应该可以看出来是贪心算法, 具体的说是区间覆盖问题,这个问题总体来说不难,但是在这有了巨多
阅读全文
POJ 2376 Cleaning Shifts (贪心,区间覆盖)
摘要:题意:给定1-m的区间,然后给定n个小区间,用最少的小区间去覆盖1-m的区间,覆盖不了,输出-1. 析:一看就知道是贪心算法的区间覆盖,主要贪心策略是把左端点排序,如果左端点大于1无解,然后, 忽略小于1的部分(如果有的话),再找最长的区间,然后把这个区间的右端点作为下次寻找的起点, 再找最大区间,
阅读全文
POJ 3320 Jessica's Reading Problem (滑动窗口)
摘要:题意:给定一个序列,求一个最短区间,使得这个区间包含所有的种类数。 析:最近刚做了几个滑动窗口的题,这个很明显也是,肯定不能暴力啊,时间承受不了啊,所以 我们使用滑动窗口来解决,要算出所有的种数,我用set来计算的,当然也可以用别的, 由于要记录种类数,所以使用map来记录,删除和查找方便,说到这,
阅读全文
UVa 10905 Children's Game (贪心。。。)
摘要:题意:给定n个正整数,把它们连接成一个最大的整数。 析:本来以为是按字典序排一下就好,可是一看第二个样例,发现并不是这样的,这种比较不能简单以字典序比较, 而是应该用一种“环”的思想去比较。也就是A串和B串都已这种环的方式去计较,知道第一个不相同的字符出现则跳出。 我们要先算好它们的最小公倍数,不然
阅读全文
posted @ 2016-05-29 20:12
dwtfukgv
UVa 11039 Building designing (贪心+排序+模拟)
摘要:题意:给定n个非0绝对值不相同的数,让他们排成一列,符号交替但绝对值递增,求最长的序列长度。 析:我个去简单啊,也就是个水题。首先先把他们的绝对值按递增的顺序排序,然后呢,挨着扫一遍,只有符号不同才计数,easy!!! 代码如下:
阅读全文
HDU 4355 Party All the Time (三分求极值)
摘要:题意:给定x轴上有n个点,每一个点都有一个权值,让在x轴上选一个点,求出各点到这个点的距离的三次方乘以权值最小。 析:首先一开始我根本不会三分,也并没有看出来这是一个三分的题目的,学长说这是一个三分的题,我就百度了一下什么是三分算法,一看感觉和二分差不多,当然就是和二分差不多,也是慢慢缩短范围。 这
阅读全文
HDU 2037 今年暑假不AC (区间贪心)
摘要:题意:又是中文题。。。 析:先说一下区间贪心的一个定理,选择不相交的区间:数轴上有n个开区间(ai, bi)。选择尽量多的区间,使得这些区间两两不相交,贪心策略是,一定是选bi小的。(想一下为什么)。 知道这个的话,这个问题还不so easy!先对每个节目结束的时间排序,然后一个一个的选,保证没有相
阅读全文
浙公网安备 33010602011771号