![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
基础算法-排序
The_useless
这个作者很懒,什么都没留下…
展开
-
LA 4064 Magnetic Train Tracks (极角排序)
LA 4064 Magnetic Train Tracks题目大意:在平面上给n个点(任意三点不共线),问这些点共组成了多少锐角或者直角三角形. (1≤n≤12001\leq n \leq 1200)题目分析:锐角三角形必须满足三个角都为锐角,并不利于统计.尝试统计不是锐角或者直角三角形,即——统计钝角三角形的个数. 统计钝角三角形只需要找到钝角即可,且钝角三角形仅有一个钝角,不会出现重复的情况原创 2016-12-24 08:42:38 · 589 阅读 · 0 评论 -
LA 3716 DNA Regions (二分/排序)
LA 3716 DNA Regions题目大意:给两条长度为n的DNA链A和B,找出一段最长的区间使得区间内的突变位置不超过p%p\%.即找出尽可能长的区间,使得区间内有不超过p%p\%的xx满足Ax≠BxAx \neq Bx. (1≤n≤150000,1≤p≤991\leq n \leq 150000,1\leq p \leq 99).题目分析:设sum[i]表示到i位置为止对应字母不同的个数.原创 2016-12-16 09:41:51 · 396 阅读 · 0 评论 -
LA 4850 Installations (排序+枚举)
LA 4850 Installations题目大意有n个安装服务,第i个服务需要si时间完成,截止日期为di,若在截止日期前完成,没有惩罚,若在截止日期后完成,若完成日期为ti,惩罚值为ti-di.即惩罚值为max(0,ti-di).求如何安排任务,使得最大的两个惩罚值之和最小.题目分析最开始把题看错了,看成是求最大的惩罚值最小,直接按照di排序.但是这种方法只能使得全局最优,并不一定是和最小.那么原创 2016-12-13 09:52:21 · 744 阅读 · 1 评论 -
UVa 11100 The Trip, 2007 (排序)
UVa 11100 The Trip, 2007题目大意:给出n个正整数,将其划分成尽可能少的严格递增序列,在此前提下,序列元素尽可能均匀分布.输出序列数最小值k和这k个序列.题目分析:一开始没理解到题意,╮(╯_╰)╭. 要划分成尽可能少的严格递增序列,那么相同的数不能放在同一列,那么k就等于最大相同数个数.首先进行一次排序,得到k值.因为有k个序列,要使其尽量均分,则应当每k个数顺次放在k个序原创 2016-12-12 21:05:44 · 332 阅读 · 0 评论 -
UVa 11134 Fabled Rooks (排序+贪心)
UVa 11134 Fabled Rooks题目大意:给你n*n的棋盘,上面放n个车,使得任意两车互不攻击,要求第i个车在矩形Ri内. 若存在输出一组解,否则输出”IMPOSSIBLE”.题目分析:因为是在n*n的棋盘上放n个车,其实就有点类似于n皇后问题的放置方法,显然每行每列都要放一个,并且行与列是独立的,互不影响. 那么,若单独考虑行,矩形就被压缩成了线段,将线段看成是区间.实际上问题就转原创 2016-12-12 08:27:49 · 339 阅读 · 0 评论 -
LA 3905 Meteor (排序+扫描法)
LA 3905 Meteor题目大意:坐标系中一个矩形相机,左下角坐标为(0,0),右上角坐标为(w,h).n个流星在坐标系中飞行,起始点坐标为(x,y),速度为(a,b),那么t时刻的坐标为(x+at,y+bt),问最多能照到多少个流星(矩形边界上的点不会被照到).题目分析:由于是一个矩形相机,对于每一个流星,最多存在某一段连续时间在矩形内.那么就可以将时间区间拆分成进入和离开两个事件.只需要按照原创 2016-12-09 16:00:49 · 446 阅读 · 0 评论 -
UVa 10881 Piotr's Ants (排序)
UVa 10881 Piotr’s Ants题目大意:在L长的木棍上有n只蚂蚁,向左或右爬,速度为1单位长度每秒,若两蚂蚁撞上,则掉头,求T秒以后各蚂蚁所在位置,若掉下去,输出”Fell off”,否则输出位置和朝向,若此时正撞上,朝向输出”Turning”.题目分析:这道题还是有一些思维含量的.实际上,n只蚂蚁在爬行过程中,其相对位置(也就是第几号位置)是不会改变的,所以可以不考虑对撞之后换方向的原创 2016-12-08 10:31:52 · 372 阅读 · 0 评论