Key Insertion

Description

As an employee of the Macrohard Company, you have been asked to implement the new data structure that would be used to store some integer keys.
The keys must be stored in a special ordered collection that can be considered as an array A, which has an infinite number of locations, numbered starting from 1. Initially all locations are empty. The following operation must be supported by the collection: Insert(L, K), where L is the location in the array and K is some positive integer value.
The operation must be processed as follows:
If A[L] is empty, set A[L] ← K.
If A[L] is not empty, perform Insert(L + 1, A[L]) and after that set A[L] ← K.

Given N integer numbers L1 , L2 , . . . , LN you have to output the contents of the array after a sequence of the following operations:
Insert(L1 , 1)
Insert(L2 , 2)
. . .
Insert(LN , N)
Input

The first line of the input file contains N --- the number of Insert operations and M --- the maximal position that can be used in the Insert operation (1 <= N <= 131 072, 1 <= M <= 131 072).
Next line contains N integer numbers L i that describe Insert operations to be performed (1 <= Li <= M ).
Output

Output the contents of the array after a given sequence of Insert operations. On the first line print W --- the number of the greatest location that is not empty. After that output W integer numbers --- A[1], A[2], . . . , A[W ]. Output zeroes for empty locations.
Sample Input

5 4
3 3 4 1 3
Sample Output

6
4 0 5 2 3 1

1个回答

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
Key Insertion
-
合理用C语言实现,Key Insertion问题
-
K-th Number 怎么求解
-
K-th Number
-
有关插入排序的问题 c++实现
-
在词库里查找相似单词,用最小编辑距离算法实现
-
创建一个数据表,只需要create table就可以
-
搭建好服务器之后,启动服务器
-
学会了这些技术,你离BAT大厂不远了
每一个程序员都有一个梦想,梦想着能够进入阿里、腾讯、字节跳动、百度等一线互联网公司,由于身边的环境等原因,不知道 BAT 等一线互联网公司使用哪些技术?或者该如何去学习这些技术?或者我该去哪些获取这些技术资料?没关系,平头哥一站式服务,上面统统不是问题。平头哥整理了 BAT 等一线大厂的必备技能,并且帮你准备了对应的资料。对于整理出来的技术,如果你掌握的不牢固,那就赶快巩固,如果你还没有涉及,现在...
程序员实用工具网站
目录 1、搜索引擎 2、PPT 3、图片操作 4、文件共享 5、应届生招聘 6、程序员面试题库 7、办公、开发软件 8、高清图片、视频素材网站 9、项目开源 10、在线工具宝典大全 程序员开发需要具备良好的信息检索能力,为了备忘(收藏夹真是满了),将开发过程中常用的网站进行整理。 1、搜索引擎 1.1、秘迹搜索 一款无敌有良心、无敌安全的搜索引擎,不会收集私人信息,保...
支付宝核心工程师谈如何成为一名优秀的程序员?
支付宝研究员李俊奎 作者 |蚂蚁金服科技 责编| 伍杏玲 出品 | 程序人生(ID:coder_life) 校招进入支付宝,11年时间,从一线工程师成长为支付宝安全核心架构师,这个技术牛人就是李俊奎。 李俊奎一直聚焦风控平台的技术和架构发展,并着手搭建了中国第一家云上的商业银行——网商银行。 在2016年双11和新春红包等活动中,李俊奎和他的团队实现历史性突破,即在系统不...
我花了一夜用数据结构给女朋友写个H5走迷宫游戏
起因 又到深夜了,我按照以往在csdn和公众号写着数据结构!这占用了我大量的时间!我的超越妹妹严重缺乏陪伴而 怨气满满! 而女朋友时常埋怨,认为数据结构这么抽象难懂的东西没啥作用,常会问道:天天写这玩意,有啥作用。而我答道:能干事情多了,比如写个迷宫小游戏啥的! 当我码完字准备睡觉时:写不好别睡觉! 分析 如果用数据结构与算法造出东西来呢? ...
让程序员崩溃的瞬间(非程序员勿入)
今天给大家带来点快乐,程序员才能看懂。 来源:https://zhuanlan.zhihu.com/p/47066521 1. 公司实习生找 Bug 2.在调试时,将断点设置在错误的位置 3.当我有一个很棒的调试想法时 4.偶然间看到自己多年前写的代码 5.当我第一次启动我的单元测试时 ...
GitHub开源的10个超棒后台管理面板
目录 1、AdminLTE 2、vue-Element-Admin 3、tabler 4、Gentelella 5、ng2-admin 6、ant-design-pro 7、blur-admin 8、iview-admin 9、material-dashboard 10、layui 项目开发中后台管理平台必不可少,但是从零搭建一套多样化后台管理并不容易,目前有许多开源、免费、...
100 个网络基础知识普及,看完成半个网络高手
欢迎添加华为云小助手微信(微信号:HWCloud002或HWCloud003),输入关键字“加群”,加入华为云线上技术讨论群;输入关键字“最新活动”,获取华为云最新特惠促销。华为云诸多技术大咖、特惠活动等你来撩! 1)什么是链接? 链接是指两个设备之间的连接。它包括用于一个设备能够与另一个设备通信的电缆类型和协议。 2)OSI 参考模型的层次是什么? 有 7 个 OSI 层:物理...
对计算机专业来说学历真的重要吗?
我本科学校是渣渣二本,研究生学校是985,现在毕业五年,校招笔试、面试,社招面试参加了两年了,就我个人的经历来说下这个问题。 这篇文章很长,但绝对是精华,相信我,读完以后,你会知道学历不好的解决方案,记得帮我点赞哦。 先说结论,无论赞不赞同,它本质就是这样:对于技术类工作而言,学历五年以内非常重要,但有办法弥补。五年以后,不重要。 目录: 张雪峰讲述的事实 我看到的事实 为什么会这样 ...
世界上最好的学习法:费曼学习法
你是否曾幻想读一遍书就记住所有的内容?是否想学习完一项技能就马上达到巅峰水平?除非你是天才,不然这是不可能的。对于大多数的普通人来说,可以通过笨办法(死记硬背)来达到学习的目的,但效率低下。当然,也可以通过优秀的学习法来进行学习,比如今天讲的“费曼学习法”,可以将你的学习效率极大的提高。 费曼学习法是由加拿大物理学家费曼所发明的一种高效的学习方法,费曼本身是一个天才,13岁自学微积分,24岁加入曼...
深入理解C语言指针
一、指针的概念 要知道指针的概念,要先了解变量在内存中如何存储的。在存储时,内存被分为一块一块的。每一块都有一个特有的编号。而这个编号可以暂时理解为指针,就像酒店的门牌号一样。 1.1、变量和地址 先写一段简单的代码: void main(){ int x = 10, int y = 20; } 这段代码非常简单,就是两个变量的声明,分别赋值了 10、20。我们把内存当做一个酒店,而每个房间就...
C语言实现推箱子游戏
很早就想过做点小游戏了,但是一直没有机会动手。今天闲来无事,动起手来。过程还是蛮顺利的,代码也不是非常难。今天给大家分享一下~ 一、介绍 开发语言:C语言 开发工具:Dev-C++ 5.11 日期:2019年9月28日 作者:ZackSock 也不说太多多余的话了,先看一下效果图: 游戏中的人物、箱子、墙壁、球都是字符构成的。通过wasd键移动,规则的话就是推箱子的规则,也就不多说了。 二、代...
面试官:兄弟,说说基本类型和包装类型的区别吧
Java 的每个基本类型都对应了一个包装类型,比如说 int 的包装类型为 Integer,double 的包装类型为 Double。基本类型和包装类型的区别主要有以下 4 点。
C语言这么厉害,它自身又是用什么语言写的?
这是来自我的星球的一个提问:“C语言本身用什么语言写的?”换个角度来问,其实是:C语言在运行之前,得编译才行,那C语言的编译器从哪里来? 用什么语言来写的?如果是用C语...
十大优秀编程项目,让你的简历金光闪闪
全文共3241字,预计学习时长6分钟 被问到如何学习编程时,最常听到的问题就是:“有没有什么新项目的好点子?” 一些老套的答案有:“做一个象棋游戏”或者“命令行界面”。 这些答案没有错,但这些例子不符合现代编程的需要。现代软件编写需要经常使用软件服务化(SaaS)和网络应用,这意味着程序员需要了解如何在线编程。 用户网站或应用程序的编程需要服务器、身份验证和数据库,这个过程十分复杂。它...
第二弹!python爬虫批量下载高清大图
文章目录前言下载免费高清大图下载带水印的精选图代码与总结 前言 在上一篇写文章没高质量配图?python爬虫绕过限制一键搜索下载图虫创意图片!中,我们在未登录的情况下实现了图虫创意无水印高清小图的批量下载。虽然小图能够在一些移动端可能展示的还行,但是放到pc端展示图片太小效果真的是很一般!建议阅读本文查看上一篇文章,在具体实现不做太多介绍,只讲个分析思路。 当然,本文可能技术要求不是特别高,但可以...
SpringBoot注解梳理
一、注解(annotations)列表 二、注解(annotations)详解 三、JPA注解 四、springMVC相关注解 五、全局异常处理 一、注解(annotations)列表 @SpringBootApplication:包含了@ComponentScan、@Configuration和@EnableAutoConfiguration注解。其中@Component...
2019年10月全国程序员工资统计,一半以上的职位5个月没招到人。
我每个月第一天(也许是第二天,第三天),会爬招聘网站,并在CSDN发布。 趋势 全国程序员平均工资走势图。图上可以见,6月到8月,工资涨的比较快。之后就停止甚至下跌了。当然,6到8月涨幅过快,后面的下跌可以看作是对之前的调整。怎么感觉我是评论股票的。。。大家听过就算了,别当真。 同时,10月份的招聘人数也大幅减少了。我估计,可能是用人单位不愿意刚刚招来个人,就给他放十一假期,这样不核算。所以宁可推...
Java 网络爬虫,就是这么的简单
这是 Java 网络爬虫系列文章的第一篇,如果你还不知道 Java 网络爬虫系列文章,请参看 学 Java 网络爬虫,需要哪些基础知识。第一篇是关于 Java 网络爬虫入门内容,在该篇中我们以采集虎扑列表新闻的新闻标题和详情页为例,需要提取的内容如下图所示: 我们需要提取图中圈出来的文字及其对应的链接,在提取的过程中,我们会使用两种方式来提取,一种是 Jsoup 的方式,另一种是 httpcli...
面试官,不要再问我三次握手和四次挥手
三次握手和四次挥手是各个公司常见的考点,也具有一定的水平区分度,也被一些面试官作为热身题。很多小伙伴说这个问题刚开始回答的挺好,但是后面越回答越冒冷汗,最后就歇菜了。 见过比较典型的面试场景是这样的: 面试官:请介绍下三次握手 求职者:第一次握手就是客户端给服务器端发送一个报文,第二次就是服务器收到报文之后,会应答一个报文给客户端,第三次握手就是客户端收到报文后再给服务器发送一个报文,三次握手就...
当程序员这么多年,我学到了25条人生经验
关注前端达人,与你共同进步编者按:作者踏上开发人员的职业之路某种程度上具有偶然性,但是也跟自己平时对编码方面的知识进行的储备有很大的关系,作为一名自学的开发人员,作者虽然...
记一次蚂蚁金服的面试经历
点击上方“码农突围”,马上关注,每天早上8:50准时推送真爱,请置顶或星标2015在实习的时候,当时一个一起实习的朋友在2019年3月份的时候突然在微信上找我,问我要不要...
一些实用的GitHub项目
最近整理了一些在GitHub上比较热门的开源项目关于GitHub,快速了解请戳这里其中涵盖了:学习教程,面试总结,实用工具,框架,机器学习等东西比较杂,要学的东西也比较多...
生猛!看 AV 神器来了!实时把画质变成 4k 高清,延时仅3毫秒,登上GitHub 趋势榜!...
点击上方“五分钟学算法”,选择“星标”在看真爱量子位 出品 | 公众号 QbitAI看动画(特别是里番/P站)的时候,总会觉得画质不够好,就算已经有1080p,还是...
58道JavaScript题,看看你能全对不?
导读之前翻译过前阵子 github很火的 javascript-questions:送你43道JavaScript面试题前些天去看了看已经更新到101题了,这些题目中已经...
七种方法,教你培养持续学习的习惯
全文共4373字,预计学习时长9分钟技术在不断发展,因此你也不能停下学习的脚步。无论是软件工程师、开发人员,还是建筑师,都必须时刻关注业内的最新进展。有时你会发现,几年前...
新手程序员成长之路的五本必读书籍(附资源下载)
全文共3351字,预计学习时长7分钟图片来自Pixabay,IvanPais书籍可以清晰而有条理地陈诉观点,纸张上的笔墨也会给人一种不慌不忙的感觉。不过,科技类书籍存在一...
“我想学习人工智能与机器学习,该从何做起?”
全文共3753字,预计学习时长7分钟图源山姆·伯克(Sam Bourke)在自学机器学习时,经常有人问:我该从哪学起?我需要达到怎样的数学水平呢?我学过Python了,那...
开发人员提升自己的四种方式
在提升软件开发技能方面,有哪些必备的妙招可以帮助自己呢?作者 |Skill Pathway译者 |弯月,责编 | 屠敏出品 | CSDN(ID:CSDNnews)以下...
怎么知道自己适合做什么?
我们从一个人的真实经历开始聊起。记录片《败局启示录》里的迈克尔·本特,是一名拳击手。他曾4次获得纽约金手套公开赛冠军,5次获得全国冠军。到这里你可能会说,他是个成功人士...
分布式、多线程、高并发都不懂,拿什么去跳槽
当提起这三个词的时候,是不是很多人都认为分布式=高并发=多线程?当面试官问到高并发系统可以采用哪些手段来解决,或者被问到分布式系统如何解决一致性的问题,是不是一脸懵逼?确...
面试官出的MySQL索引问题,这篇文章全给你解决!
原文链接:blog.ouyangsihai.cn >> MySQL的B 树索引的概念、使用、优化及使用场景 0 前言 这篇文章不会讲解索引的基础知识,主要是关于MySQL数据库的B 树索引的相关原理,里面的一些知识都参考了MySQL技术内幕这本书,也算对于这些知识的总结。对于B树和B 树相关的知识,可以参考我的这篇博客:面试官问你B树和B 树,就把这篇文章丢给他 1 索引的管理 索引有很...
Java 爬虫遇到需要登录的网站,该怎么办?
这是 Java 网络爬虫系列博文的第二篇,在上一篇 Java 网络爬虫,就是这么的简单 中,我们简单的学习了一下如何利用 Java 进行网络爬虫。在这一篇中我们将简单的聊一聊在网络爬虫时,遇到需要登录的网站,我们该怎么办? 在做爬虫时,遇到需要登陆的问题也比较常见,比如写脚本抢票之类的,但凡需要个人信息的都需要登陆,对于这类问题主要有两种解决方式:一种方式是手动设置 cookie ,就是先在网站上...
相关热词 c# 去除空格 c#读取tiff未bmp c# 识别回车 c#生成条形码ean13 c#子控制器调用父控制器 c# 写大文件 c# 浏览pdf c#获取桌面图标的句柄 c# list反射 c# 句柄 进程