时间限制: 1 s
 空间限制: 128000 KB
 题目等级 : 白银 Silver
 
 
 
题目描述 Description

给出n和n个整数,希望你从小到大给他们排序

输入描述 Input Description

第一行一个正整数n

第二行n个用空格隔开的整数

输出描述 Output Description

输出仅一行,从小到大输出n个用空格隔开的整数

样例输入 Sample Input

3

3 1 2

样例输出 Sample Output

1 2 3

数据范围及提示 Data Size & Hint

1<=n<=100000

#include<iostream>
#include<cstdio>
#include<cstring>
using namespace std;
int x,n,m,heap[],heap_size;
void put()
{// 小根堆的插入 插入到堆底 向上维护
int now,next;
heap[++heap_size]=x;
now=heap_size;
while(now>)
{
next=now/;
if(heap[next]<=heap[now]) return;
swap(heap[now],heap[next]);
now=next;
}
}
int get()
{
int now=,next,res;
res=heap[];
heap[]=heap[heap_size--];
while(now*<=heap_size)
{
next=now*;
if(next<heap_size&&heap[next+]<heap[next]) next++;
if(heap[now]<=heap[next]) return res;
swap(heap[now],heap[next]);
now=next;
}
return res;
}
int main()
{
scanf("%d",&n);
for(int i=;i<=n;i++)
scanf("%d",&x),put();
for(int i=;i<=n;i++)
printf("%d ",get());
return ; return ;
}

堆排序~~~~

Codevs的更多相关文章

  1. codevs 3289 花匠

    题目:codevs 3289 花匠 链接:http://codevs.cn/problem/3289/ 这道题有点像最长上升序列,但这里不是上升,是最长"波浪"子序列.用动态规划可 ...

  2. codevs 1082 线段树练习 3(区间维护)

    codevs 1082 线段树练习 3  时间限制: 3 s  空间限制: 128000 KB  题目等级 : 大师 Master 题目描述 Description 给你N个数,有两种操作: 1:给区 ...

  3. codevs 1285 二叉查找树STL基本用法

    C++STL库的set就是一个二叉查找树,并且支持结构体. 在写结构体式的二叉查找树时,需要在结构体里面定义操作符 < ,因为需要比较. set经常会用到迭代器,这里说明一下迭代器:可以类似的把 ...

  4. codevs 1576 最长上升子序列的线段树优化

    题目:codevs 1576 最长严格上升子序列 链接:http://codevs.cn/problem/1576/ 优化的地方是 1到i-1 中最大的 f[j]值,并且A[j]<A[i] .根 ...

  5. codevs 1080 线段树点修改

    先来介绍一下线段树. 线段树是一个把线段,或者说一个区间储存在二叉树中.如图所示的就是一棵线段树,它维护一个区间的和. 蓝色数字的是线段树的节点在数组中的位置,它表示的区间已经在图上标出,它的值就是这 ...

  6. codevs 1228 苹果树 树链剖分讲解

    题目:codevs 1228 苹果树 链接:http://codevs.cn/problem/1228/ 看了这么多树链剖分的解释,几个小时后总算把树链剖分弄懂了. 树链剖分的功能:快速修改,查询树上 ...

  7. codevs 1082 线段树区间求和

    codevs 1082 线段树练习3 链接:http://codevs.cn/problem/1082/ sumv是维护求和的线段树,addv是标记这歌节点所在区间还需要加上的值. 我的线段树写法在运 ...

  8. codevs 1052 地鼠游戏

    1052 地鼠游戏 http://codevs.cn/problem/1052/ 题目描述 Description 王钢是一名学习成绩优异的学生,在平时的学习中,他总能利用一切时间认真高效地学习,他不 ...

  9. codevs 2830 蓬莱山辉夜

    2830 蓬莱山辉夜 http://codevs.cn/problem/2830/ 题目描述 Description 在幻想乡中,蓬莱山辉夜是月球公主,居住在永远亭上,二次设定说她成天宅在家里玩电脑, ...

  10. codevs 1245 最小的N个和

    1245 最小的N个和 http://codevs.cn/problem/1245/ 题目描述 Description 有两个长度为 N 的序列 A 和 B,在 A 和 B 中各任取一个数可以得到 N ...

随机推荐

  1. MySQL 调优基础:Linux内存管理 Linux文件系统 Linux 磁盘IO Linux网络

    http://www.cnblogs.com/digdeep/category/739915.html

  2. lucene和egg项目的异同点

    1 和lucene一样 支持全域索引 2 对字符串域提供全文检索,对数字类型域提供范围查询 3 采取和lucene类似的倒排表压缩方式 4 和lucene的多级跳转表不同,egg采取的是B+树做索引, ...

  3. windows10上安装 .NET Framework 3.5

    在安装一些软件时,需要 .NET Framework3.5.按照windows给的提示下载不了.在官方网站上给了解决方案: 运行 DISM 工具 从屏幕右边缘向中间轻扫,然后点击“搜索”.(如果使用的 ...

  4. 1.4.2 solr字段类型--(1.4.2.2)solr附带的字段类型

    1.4.2 solr字段类型 (1.4.2.1) 字段类型定义和字段类型属性. (1.4.2.2) solr附带的字段类型 (1.4.2.3) 使用货币和汇率 (1.4.2.4) 使用Dates(日期 ...

  5. Access to the path '' is denied.解决方案

    在本地测试正常,但一上传到服务器上的时候,那个就提示Access to the path ‘路径’ is denied.我在网上找了很多资料,最后终于解决了,原来是因为在该文件的上级文件夹没有修改权限 ...

  6. Android 高级UI设计笔记20:RecyclerView 的详解之RecyclerView添加Item点击事件

    1. 引言: RecyclerView侧重的是布局的灵活性,虽说可以替代ListView但是连基本的点击事件都没有,这篇文章就来详细讲解如何为RecyclerView的item添加点击事件,顺便复习一 ...

  7. Linux常用命令之sed

    标题:sed命令的使用 作用:sed(stream editer)是以行为单位处理文本数据,可以对数据按行进行选取(显示打印).替换.删除和新增等功能. 工作流程:sed是一个流编辑器,它可以对从标准 ...

  8. VMware系统运维(十二)部署虚拟化桌面 Horizon View 5.2 Viewcomposer安装

    1.首先打开viewcomposer 2.进入到安装向导 3.点击"Next" 3.接受协议,点击"Next" 4.选择安装位置,点击"Next&qu ...

  9. UVA 113 Power of Cryptography (数学)

    Power of Cryptography  Background Current work in cryptography involves (among other things) large p ...

  10. Markdown Test

    P1 1.1 interview 1.2 invoker show 1.3 Wtf? P2 for example this is a story int main() { printf(" ...