随笔分类 -  STL

摘要:作用:nth_element作用为求第n大的元素,并把它放在第n位置上,下标是从0開始计数的,也就是说求第0小的元素就是最小的数。 时间复杂度为O(n) 如:a[start,end]元素区间。排序后a[n]就是数列中第n+1大的数(下标从0開始计数)。要注意的是a[start,n), a[n,end 阅读全文
posted @ 2019-05-02 16:33 shuai_hui 阅读(160) 评论(0) 推荐(0)
摘要:在用cin 与 cout 的时候 可以使用 这样在输入大数据的时候可以加快许多 阅读全文
posted @ 2019-01-28 13:29 shuai_hui 阅读(614) 评论(0) 推荐(0)
摘要:写这篇博客来证明自己的愚蠢 。。。Orz 飞机 题意:给定你个数组,以及一些单点修改,以及询问,每次询问需要求得,最长的字串长度,它在其他位置存在同构 题解:经过一些奇思妙想后 ,你可以发现问题是传化为了查询一个最大的区间这个区间的开头和结尾是相同的 ; 所以如果我们知道了某个数的最小位置与最大位置 阅读全文
posted @ 2019-01-20 00:19 shuai_hui 阅读(462) 评论(0) 推荐(0)
摘要:题意 给你N个线段(一条直线上),问删去一个之后,最长公共长度 ; 分析:首先我们得先知道n条线段公共的线段一定是(LMAX,RMIN) ,那我们可以先排序,然后枚举删除边; #include<stdio.h> #include<algorithm> using namespace std; str 阅读全文
posted @ 2018-08-26 20:02 shuai_hui 阅读(465) 评论(0) 推荐(0)
摘要:题意 : 给出一些数、你可以从左到右对这些数进行三种操作花费 Ai 买入东西、以 Ai 价格卖出你当前有的东西、或者什么都不做、现在问你可以获取的最大利益是多少 分析:对每一个元素产生的贡献可以先计算出暂时的最优值,注意是暂时的最优,应为后面可以出现更加优的答案,所有下次遇到更优的时候就进行替换; 阅读全文
posted @ 2018-08-26 15:14 shuai_hui 阅读(367) 评论(0) 推荐(0)
摘要:rope 的基本操作 牛客 E。Shuffle Cards 阅读全文
posted @ 2018-07-27 16:11 shuai_hui 阅读(346) 评论(0) 推荐(0)
摘要:DJ算法就是求单源最短路的算法,但是时间复杂度不太理想,所以在此献上用最小堆来优化的算法。 如果不懂优先队列可以先去看STL分类关于优先队列的介绍; ///POJ 2387为例 #include<stdio.h> #include<string.h> #include<queue> #include 阅读全文
posted @ 2018-04-30 13:31 shuai_hui 阅读(393) 评论(0) 推荐(0)
摘要:优先队列 引入 优先队列是一种特殊以及强大的队列。 那么优先队列是什么呢? 说白了,就是一种功能强大的队列。 它的功能强大在哪里呢? 四个字:自动排序。 优先队列的头文件&&声明 头文件: 其次,一个优先队列声明的基本格式是: priority_queue<结构类型> 队列名; 不过这是新手级别的, 阅读全文
posted @ 2018-04-30 12:02 shuai_hui 阅读(735) 评论(0) 推荐(0)
摘要:声明||作用 string类本不是STL的容器,但是它与STL容器有着很多相似的操作,因此,把string放在这里一起进行介绍。 之所以抛弃char*的字符串而选用C++标准程序库中的string类,是因为他和前者比较起来,不必担心内存是否足够、字符串长度等等,而且作为一个类出现,他集成的操作函数足 阅读全文
posted @ 2018-04-30 10:47 shuai_hui 阅读(242) 评论(0) 推荐(0)