
二分
楚颜a
现大一,一枚小up主,B站id:一只楚颜,很迷切掉一道题的成就感!
展开
-
【题解】P2678 [NOIP2015 提高组] 跳石头
接下来 N 行,每行一个整数,第 i 行的整数 Di (0 < Di < L), 表示第 i 块岩石与起点的距离。输入输出样例 1 说明:将与起点距离为 2和 14 的两个岩石移走后,最短的跳跃距离为 4(从与起点距离 17 的岩石跳到距离 21 的岩石,或者从距离 21 的岩石跳到终点)。第一行包含三个整数 L, N, M分别表示起点到终点的距离,起点和终点之间的岩石数,以及组委会至多移走的岩石数。对于 100%的数据,0 ≤ M ≤ N ≤ 50,000,1 ≤ L ≤1,000,000,000。原创 2022-11-06 03:28:21 · 322 阅读 · 0 评论 -
【题解】P2249 【深基13.例1】查找
输入 n(n≤10^6) 个不超过 10^9的单调不减的(就是后面的数字不小于前面的数字)非负整数 a1,a2,…,an,然后进行 m(m原创 2022-11-06 03:03:06 · 269 阅读 · 0 评论 -
【题解】灯泡
题目来源:loj题目描述相比 wildleopard 的家,他的弟弟 mildleopard 比较穷。他的房子是狭窄的而且在他的房间里面仅有一个灯泡。每天晚上,他徘徊在自己狭小的房子里,思考如何赚更多的钱。有一天,他发现他的影子的长度随着他在灯泡和墙壁之间走到时发生着变化。一个突然的想法出现在脑海里,他想知道他的影子的最大长度。输入格式输入文件的第一行包含一个整数 T ,表示测试数据的组数...原创 2019-11-15 14:10:07 · 410 阅读 · 0 评论 -
【题解】数列分段II
题目来源:loj题目描述对于给定的一个长度为N的正整数数列A−i,现要将其分成M(M≤N)M(M≤N)M(M≤N)段,并要求每段连续,且每段和的最大值最小。关于最大值最小:例如一数列42451要分成333段将其如下分段:[42][45][1]第一段和为6,第2段和为9,第3段和为1,和最大值为9。将其如下分段:[4][24][51]第一段和为4,第2段和为6,第3段和为6,和最...原创 2019-11-14 13:11:54 · 1072 阅读 · 0 评论 -
【题解】曲线
题目来源:loj题目描述明明做作业的时候遇到了 n 个二次函数 Si(x)=ax^2 + bx + c,他突发奇想设计了一个新的函数 F(x)=max{Si(x)},i=1…n。明明现在想求这个函数在 [0,1000] 的最小值,要求精确到小数点后四位,四舍五入。输入格式输入包含 T 组数据,每组第一行一个整数n;接下来 n 行,每行 3 个整数 a, b, c ,用来表示每个二次函...原创 2019-11-12 14:06:51 · 983 阅读 · 0 评论 -
【题解】Best Cow Fences(详细)
题目描述给定一个长度为 n 的非负整数序列 A ,求一个平均数最大的,长度不小于 L 的子段。输入格式第一行用空格分隔的两个整数 n 和 L;第二行为 n 个用空格隔开的非负整数,表示 Ai。输出格式输出一个整数,表示答案的 1000 倍。不用四舍五入,直接输出。样例输入10 66 4 2 10 3 8 5 9 4 1样例输出6500数据范围与提示1≤n≤10^5, 0...原创 2019-11-07 13:52:10 · 4885 阅读 · 4 评论 -
【题解】愤怒的牛
题目来源:洛谷题目描述农夫约翰搭建了一间有N间牛舍的小屋。牛舍排在一条线上,第i号牛舍在Xi的位置。但是他的M头牛对小屋很不满意,因此经常相互攻击。约翰为了防止牛之间相互伤害,因此决定把每头牛都放在离其他牛尽可能远的牛舍。求最近的两头牛之间距离的最大值。输入格式: t – 表示有t组数据,每组数据都由下面格式的数据构成。第1行: 两个用空格隔开的整数: N和C第2到n+1行: 每行一个整...原创 2019-11-06 13:38:17 · 1293 阅读 · 0 评论 -
【题解】导弹拦截
(未完成)#include<bits/stdc++.h>using namespace std;const int N=100010;int a[N],f1[N],len1,f2[N],len2,num,n=1;/* a[]:原数列 f1[]:最长不上升子序列1,记录第一套拦截系统能拦截的导弹 len1:f1[]的长度 f2[]:最长不上升子序列2,记录第...原创 2019-09-04 14:05:33 · 370 阅读 · 0 评论 -
c++ STL里lower_bound()与upper_bound()的用法
lower_bound()与upper_bound()是二分查找函数(用于有序区间)用法:说明:a[]:有序数组用法1:*lower_bound(a+1,a+1+n,num)=num; //将a[]中第一个≥num的值改为num用法2:int k=*lower_bound(a+1,a+1+n,num); //k=a[]从1~n中第一个≥num的值用法3:int k=lowe...原创 2019-09-04 13:28:28 · 690 阅读 · 0 评论 -
【题解】区间 (2019.08.02纪中【NOIP提高组】模拟 B 组T4)最长不下降子序列 二分
题目来源:中山纪念中学题目描述Alice收到一些很特别的生日礼物:区间。即使很无聊,Alice还是能想出关于区间的很多游戏,其中一个是,Alice从中选出最长的不同区间的序列,其中满足每个区间必须在礼物中,另序列中每个区间必须包含下一个区间。 编程计算最长序列的长度。输入:输入文件第一行包含一个整数N(1<=N<=100000),表示区间的个数。接下来N行,每行两个整数A...原创 2019-08-08 10:20:42 · 233 阅读 · 0 评论