随笔分类 - CQUOT 2018 寒假训练 DIV2(3) 三分与二分
stay hungry stay foolish
摘要:- 题目大意 有n个精灵在一维坐标轴上,并且每个精灵都有一个权值,每个精灵从一个点到达一个点要花费:S3*W(s代表距离),问所有的精灵要聚在一起,最小花费是多少。 - 解题思路 设最终要求的点的位置是x,则花费为:∑fabs(x[i]-x)^3*w[i]。又因为次函数为凸函数(求二次导就知道了),
阅读全文
摘要:- 题目大意 农夫约翰搭了一间有n间牛舍的小屋。牛舍排在一条线上第i号牛舍在xi的位置。但是他的m头牛对小屋很不满意,因此经常互相攻击。约翰为了防止牛之间互相伤害,因此决定把每头牛都放在离其他牛尽可能远的牛舍。 - 解题思路 很明显是一个最大值最小化的问题,因此我们可以假设C(d)为满足所有牛之间的
阅读全文
摘要:- 题目大意 给你n个牛的自身价值,让你找出连续的且数量大于等于F的一段区间,使这段区间内的牛的平均价值最大。 - 解题思路 这道题可以用二分法也可以结合前缀数组来求和来做,我就是用前缀数组求和和二分答案法来做的。 - 代码
阅读全文
摘要:- 题目大意 某个公司只有一个电梯, 现在有n 个人从1楼, 他们有各自想要到达的楼层, 然后电梯每上一楼需要4 秒, 每在一个楼层开门需要10 秒, 然后然爬楼梯的话需要20一楼。问, 如何用最短的时间让所有人都到达各自想要到的楼层。 - 解题思路 因为人可以爬楼梯, 所以可以在某个楼层下楼之后走
阅读全文
摘要:- 题目大意 有一堆平面散点集,任取四个点,求能组成正方形的不同组合方式有多少。相同的四个点,不同顺序构成的正方形视为同一正方形。 - 解题思路 先枚举两个相邻的点,通过数学公式得到另外2个点,使得这四个点能够成正方形。然后检查散点集中是否存在计算出来的那两个点,若存在,说明有一个正方形。但由于在计
阅读全文
摘要:- 题目大意 给出长度为n的序列,每次只能交换相邻的两个元素,问至少要交换几次才使得该序列为递增序列。 - 解题思路 利用归并排序来求逆序数(特别注意数组的大小,太大的话再开个数组分开装)。 - 代码
阅读全文
摘要:- 题目大意 有m本书,k个人来抄,每本书有一个书本页数;求使得k个人抄完的最大页数最小,并且每个人都至少要抄一本,然后输出抄书的方案 。 - 解题思路 这是个最大值中的最小值问题,先用二分+贪心算出一个最大页数的最小值(在二分的过程中,我们对于当前考虑的值 x 划分人数的贪心过程中,我们就有fla
阅读全文
摘要:- 题目大意 给出一串数字,问能是它为顺序排列的最小交换数字方式。 - 解答思路 利用归并排序来求逆序数(注意数组的大小就行了)。 - 代码
阅读全文
摘要:- 题目大意 有n条绳子,分成k段相等的,问能使得最长为多长。 - 解题思路 采用二分法一直逼近求极限状态(注意精度!!!)。 - 代码
阅读全文