堆
卧室踩被
The weakest OIer
展开
-
堆排序
题目大意:输入n个数,要求用堆排序输出从小到大排完序后的结果。解题思路:一开始用up(上移)建堆,然后输出根节点,然后赋值一个足以让它下移到最后的值,然后不管它,直到节点数=0#include<bits/stdc++.h>#define INF 21474836480using namespace std;long long n,a[500001],x,y,s...原创 2018-02-08 09:13:10 · 163 阅读 · 0 评论 -
合并果子
题目大意:在一个果园里,多多已经将所有的果子打了下来,而且按果子的不同种类分成了不同的堆。多多决定把所有的果子合成一堆。 每一次合并,多多可以把两堆果子合并到一起,消耗的体力等于两堆果子的重量之和。可以看出,所有的果子经过n-1次合并之后,就只剩下一堆了。多多在合并果子时总共消耗的体力等于每次合并所耗体力之和。 解题思路:有两种方法,一个是不停快排(归并),堆应该是比快排(归并)更...原创 2018-02-08 09:18:28 · 666 阅读 · 0 评论 -
终极数
题目大意:给定一个长度为n的序列a,试求出对于序列a的每一个前缀的终极数x,使得 最小,试求出终极数t(如若有多个终极数t,只需输出最小的那个)解题思路:其实就是选中位数~ 维护一个大根堆和一个小根堆,并且保证 1.小根堆节点个数大于等于大根堆节点个数。 2.小根堆的堆顶元素大于大根堆的堆顶元素。 这就说明有两种特殊情况: (1)将要放进小根堆时,发现大根堆的堆顶元素大...原创 2018-02-08 10:47:42 · 254 阅读 · 0 评论 -
扑克游戏 模拟赛C组
题目: 有一棵无穷大的满二叉树,根为star,其余所有点的权值为点到根的距离,如图: 现在你有N(n&lt;=10000)张扑克牌,点数从1到13,你要把这些扑克牌全部放到这个树上: 1. 当你把点数为i的扑克牌放在权值为j的点上,那么你会得到i*j的分数。 2. 当你把一个扑克牌放在一个节点上,那么你就不能把别的扑克牌放在这个节点以及这个节点的子树上。 ...原创 2018-07-06 14:30:05 · 235 阅读 · 0 评论 -
Running Median
题目:DescriptionFor this problem, you will write a program that reads in a sequence of 32-bit signed integers. After each odd-indexed value is read, output the median (middle value) of the elements ...原创 2018-08-17 11:37:43 · 639 阅读 · 0 评论 -
剑与魔法
#include&amp;lt;cstdio&amp;gt;#include&amp;lt;algorithm&amp;gt;#include&amp;lt;cmath&amp;gt;#include&amp;lt;cstring&amp;gt;#include&amp;lt;queue&amp;gt;#define ll long lon原创 2018-09-13 16:12:51 · 267 阅读 · 0 评论 -
JZOJ Day4 B组 T3【五校联考1day1】我才不是萝莉控呢
题目大意:小YYY:“小RRR 你是萝莉控吗。”小RRR:“…”为了避免这个尴尬的话题,小RRR 决定给小YYY 做一道题。有一个长度为nnn 的正整数数组AAA,满足Ai&amp;gt;=Ai+1Ai &amp;gt;= Ai+1Ai&gt;=Ai+1,现在构造一个数组BBB,令Bi=∑j=inAjBi =\sum _{j=i}^nA_jBi=j=i∑nAj现在,有一个n×nn \t...原创 2019-01-25 21:32:15 · 233 阅读 · 0 评论 -
JZOJ 6274. 梦境【排序】【堆】
题目大意:解题思路:先排个序然后用堆维护答案就可以了Accepted code:Accepted\ code:Accepted code:#include<queue>#include<cstdio>#include<algorithm> using namespace std;const int N = 3e5;s...原创 2019-08-10 07:49:45 · 162 阅读 · 0 评论