STL
A_Thinking_Reed_
QQ:1170827744
展开
-
UPC 1773 接水问题(priority_queue 优先队列)
问题 F: 接水问题时间限制: 1 Sec 内存限制: 128 MB提交: 276 解决: 107[提交][状态][讨论版][命题人:admin]题目描述学校里有一个水房,水房里一共装有m个龙头可供同学们打开水,每个龙头每秒钟的供水量相等,均为1。现在有n名同学准备接水,他们的初始接水顺序已经确定。将这些同学按接水顺序从1到n编号,i号同学的接水量为wi。接水开始时,1到m号同学各占一个水龙头...原创 2018-03-24 23:17:31 · 199 阅读 · 0 评论 -
codeforces-567-D: One-Dimensional Battle Ships(Set | 权值线段树)
题目:http://codeforces.com/problemset/problem/567/D题意:n个位置,k条船,每条占a个连续位置,任意两条船不能重叠或相邻,每次破坏一个位置,问破坏几次后放不下k条船。思路:对于i条船,至少需要 i*k+ i-1 个连续的位置才可以放下,对于一段长len的连续位置有等式i*k + i-1 <= len,至多可以放(len+1)/(a+1...原创 2019-09-10 11:58:29 · 202 阅读 · 0 评论 -
牛客暑期训练第三场F-Planting Trees (单调队列)
题目:https://ac.nowcoder.com/acm/contest/883/F题意:找最大的矩阵,满足矩阵内最大值最小值差值不超过m。思路:n<=500,可以O(n^3)先确定上、下、右边界,问题转化为一维数组中O(1)找出最远左边界。记录以当前坐标为右边界时的最大值和最小值,两个单调队列维护最大值递减,最小值递增,每次找队尾的满足条件的一对最大值和最小值,更新答案即可。...原创 2019-08-27 20:00:02 · 144 阅读 · 0 评论 -
codeforces 631 C —— Report (单调栈+思维)
题目:http://codeforces.com/problemset/problem/631/C题意:给定序列和操作,操作(x, y)表示对前y个进行非增或非减排序,求最后得到的序列。思路:对一个小的y,将会被后面的大y覆盖,所以将操作处理成y递减的形式。每次操作之后后面的数字不再改变,数字从后往前放即可。代码:#include <bits/stdc++.h>#d...原创 2019-08-16 16:17:59 · 171 阅读 · 0 评论 -
nowcoder All-one Matrices (极大全1矩阵个数——单调栈)
题目:https://ac.nowcoder.com/acm/contest/888/A题意:求极大全一矩阵个数思路:先记录每个点的向上的高度Up[][],枚举极大全一矩阵的下边界,确定下边界后每次向右移动时用栈维护Up值递增,当遇到比栈顶小的Up时弹出,此时判断弹出的对答案有贡献。由于枚举的是下边界,当到一个点时还要判断是否能向下扩展。代码:#include<bits/s...原创 2019-08-11 21:40:48 · 256 阅读 · 0 评论 -
UPC1430 Sunscreen(优先队列)
链接:http://exam.upc.edu.cn/problem.php?cid=1430&pid=22题意:n头牛,每头需要一个值在min-max之间的数。m个数,每个数num个。每头牛分配一个值,问最多几头牛获得它想要的值。思路:贪心,按 牛的min 和 数的值 升序排列,遍历,每次将min符合的加入队列,再看max是否符合,统计个数即可。代码:#inclu...原创 2018-10-06 14:43:45 · 177 阅读 · 0 评论 -
POJ3784 Running Median(对顶堆动态求中位数)
题目链接:http://exam.upc.edu.cn/problem.php?cid=1430&pid=15题意:给定数列a[1-n],起初有a[1]。每次输入两个数,输出当前数组的中位数思路:利用对顶堆求中位数,每次将输入的两个数分别插入最小堆和最大堆中,维护对顶堆,使最大堆的最大值(堆顶元素)小于最小堆的最小值(堆顶元素)。每次添加两个数后都可计算出此时的中位数——...原创 2018-09-17 00:30:05 · 401 阅读 · 0 评论 -
hrbust2300 下雪了(hash)
下雪啦 Time Limit: 2500 MS Memory Limit: 32768 K Total Submit: 480(111 users) Total Accepted: 108(56 users) Rating: Special Judge: No Description 陈月亮最喜欢的...原创 2018-04-12 15:55:31 · 211 阅读 · 0 评论 -
HDU 1496 (Hash)
G - EquationsTime Limit: 3000 MS Memory Limit: 32768 KB64-bit integer IO format: %I64d , %I64u Java class name: Main[Submit] [Status]DescriptionConsider equations having the following for...原创 2018-05-10 20:23:22 · 260 阅读 · 0 评论 -
nth_element()用法
头文件:#include <algorithm>nth_element(begin,kth,end)在[begin,end)这段区间内找第k大的数,仅仅是把第k元素放在第k个位置,即是第k大元素左边元素都小于它,右边元素都大于它比如 nth_element(s+1,s+k,s+n+1)在[1,n+1)这段区间内 s[k] 左边的全部小于等于它, 右边的全部大于等于...原创 2018-08-03 10:42:36 · 192 阅读 · 0 评论 -
HDU 6319 Ascending Rating(单调队列--滑动窗口)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6319Problem A. Ascending RatingTime Limit: 10000/5000 MS (Java/Others) Memory Limit: 524288/524288 K (Java/Others)Total Submission(s): 3873 Ac...原创 2018-08-01 09:34:49 · 333 阅读 · 0 评论 -
nowcoder Shuffle Cards(STL rope)
链接:https://www.nowcoder.com/acm/contest/141/C来源:牛客网 Eddy likes to play cards game since there are always lots of randomness in the game. For most of the cards game, the very first step in the gam...原创 2018-07-27 11:13:35 · 152 阅读 · 0 评论 -
STL rope 字符串处理函数
rope在字符串中进行插入和删除更快O(logn)copy时。Rope不需要额外的O(n)内存空间#include <ext/rope> //头文件using namespace __gnu_cxx; //命名空间rope<int>rop; //声明//<crop>r="123";基本操作:T.p...原创 2018-07-27 11:12:13 · 350 阅读 · 0 评论 -
HDU 3183 A Magic Lamp(贪心+stack)
F - A Magic LampTime Limit: 1000 MS Memory Limit: 32768 KB64-bit integer IO format: %I64d , %I64u Java class name: Main[Submit] [Status]DescriptionKiki likes traveling. One day she finds a magic lamp,...原创 2018-05-11 20:37:27 · 252 阅读 · 0 评论 -
去重排序(unique和sort)
关于sort:.默认升序排列: sort(a, a+n); .升序排列 sort(a, a+n, less<int>());.降序排列 sort(a, a+n, greater<int>());.重载运算符:bool cmp(int a, int b){ return a > b;}sort(a, a+n, cmp);...原创 2018-04-10 18:14:54 · 4304 阅读 · 0 评论 -
upc1768 机器翻译(queue 队列)
问题 A: 机器翻译时间限制: 1 Sec 内存限制: 128 MB提交: 311 解决: 117[提交][状态][讨论版][命题人:admin]题目描述小晨的电脑上安装了一个机器翻译软件,他经常用这个软件来翻译英语文章。这个翻译软件的原理很简单,它只是从头到尾,依次将每个英文单词用对应的中文含义来替换。对于每个英文单词,软件会先在内存中查找这个单词的中文含义,如果内存中有,软件就会用它进行翻...原创 2018-03-24 23:12:49 · 352 阅读 · 0 评论 -
基于堆的排序(HEAP_SORT)和优先队列(priority queue)
堆排序维护最大堆伪代码://递归调用MAX_HEAPIFY(A, i) l = Left(i) //左子节点 r = Right(i) //右子节点 if l <= A.heap_size and A[l] > A[i] largest = l else largest = i if r <= A.h...原创 2018-08-13 20:32:51 · 318 阅读 · 0 评论