LLppdd has a dream

Time Limit: 3 s Memory Limit: 256 MB

题目背景

LLppdd经过他充满坎坷的初三后,他的成绩也充满了坎坷。
临近中考了,他希望他有一个稳定的发挥,所以他准备对自己的数次考试成绩进行一定的操作,以便让它们看起来友好一点。
LLppdd对于稳定的定义是,在有限的操作次数内, 任意两次成绩的差的最大值要最小,并且作为一名咸鱼选手,他的初中生涯中必然有一次爆零。(为了给中考攒人品不择手段233~)

题目描述

给定一个长度为 \(n\) 的数列,以及最大操作数 \(m\)。
然后给出 \(n\) 个正整数 \(a_i\),代表LLppdd第 \(i\) 次考试的成绩。
你需要求出在 \(m\) 次操作以内,使任意两个相邻数的差的最大值最小,并且使第 \(k\) 个数为 \(0\), (在保证方案可行的情况下,\(k\) 也要尽量的小。)
对于一次操作的定义是:选择一个大于零的数,让这个数减一。

输入格式

输入一共有两行:
第一行两个正整数 \(n,m\) 。
第二行一共\(n\)个正整数,每两个整数之间用空格隔开。

输出格式

输出一共一行:
输出两个正整数 \(k,a\),依次表示在满足条件的情况下的 \(k\) 的值和任意两个相邻数的差的最大值。

输出样例1

10 19
1 6 7 3 3 10 10 1 3 5

输出样例1

1 3

输入样例2

11 23
8 3 10 1 2 1 6 3 9 10 8

输出样例2

4 2

数据范围

\(30\%\)的数据保证\(1≤n≤1e3,1≤m≤5e3,1≤a_i≤1e3\)。

\(100\%\)的数据保证\(1≤n≤1e6,1≤m≤1e18,1≤a_i≤1e9\),数据保证有解。

LLppdd has a dream!的更多相关文章

  1. (@WhiteTaken)设计模式学习——享元模式

    继续学习享元模式... 乍一看到享元的名字,一头雾水,学习了以后才觉得,这个名字确实比较适合这个模式. 享元,即共享对象的意思. 举个例子,如果制作一个五子棋的游戏,如果每次落子都实例化一个对象的话, ...

  2. 继承extends、super、this、方法重写overiding、final、代码块_DAY08

    1:Math类的随机数(掌握) 类名调用静态方法.  包:java.lang 类:Math 方法:public static double random(): Java.lang包下的类是不用导包就可 ...

  3. 2019 CCPC-Wannafly Winter Camp Day2(Div2, onsite)

    solve 4/11 A Erase Numbers II Code:KK Thinking :KK 用ans表示当前最优答案,maxx表示遍历到的最大数字,一开始ans肯定等于a[ 1 ]+a[ 2 ...

  4. you build it,you run it

    this article is almostly about  a book named Migrating_to_Microservices_Databases, and it's just the ...

  5. Dream It Possible

    反复听着Dream It Possible,想起自己的华为岁月,百感交集!

  6. POJ2411 Mondriaan's Dream

    Description Squares and rectangles fascinated the famous Dutch painter Piet Mondriaan. One night, af ...

  7. C#学习日志 day 1 ------ hello C# !

    首先是C#的编译器的安装.这里用vs2013.我用的是Windows 8.1系统,所以安装起来并不难. 双击vs_ultimate.exe 逐步安装就好.这里用校园邮箱在dream spark 上进行 ...

  8. 我的Android进阶之旅------>经典的大牛博客推荐(排名不分先后)!!

    本文来自:http://blog.csdn.net/ouyang_peng/article/details/11358405 今天看到一篇文章,收藏了很多大牛的博客,在这里分享一下 谦虚的天下 柳志超 ...

  9. POJ2411 Mondriaan's Dream(状态压缩)

    Mondriaan's Dream Time Limit: 3000MS   Memory Limit: 65536K Total Submissions: 15295   Accepted: 882 ...

随机推荐

  1. unity碰撞检测(耗费性能)

    using System.Collections; using System.Collections.Generic; using UnityEngine; public class PengZhua ...

  2. js非布尔值的与(&&)与或(||)运算

    /** * 非布尔值的与(&&)与或(||)运算 * 1.先将其转换成布尔值再做运算,并且返回原值 * 2.与(&&)运算: * a.如果第一个值为true,则返回第二 ...

  3. java 多线程 线程安全及非线程安全的集合对象

    一.概念: 线程安全:就是当多线程访问时,采用了加锁的机制:即当一个线程访问该类的某个数据时,会对这个数据进行保护,其他线程不能对其访问,直到该线程读取完之后,其他线程才可以使用.防止出现数据不一致或 ...

  4. 彩彩只能变身队团队项目进展记录by后端

    2018.06.03 早上8:00-晚上8:00 后端小组一起在图书馆四楼边学边做: 1.首先搞定了数据库,学会了怎样用命令行来操作数据库,并且建立了一个用户表. 2.然后自己设计了一个简陋的前端页面 ...

  5. mysql---级联更新和删除操作

    我们通常有这样的需求:删除表Table 1中记录,需要同时删除其它表中与Table 1有关的若干记录. 对于这种,我们有两种解决方法: 一,使用innodb表的外键约束 ALTER TABLE `sc ...

  6. python5数据存储

    1 txt文件存储 正常调用文件python文件操作 https://www.cnblogs.com/x2x3/p/9979919.html 2 json文件存储 在JavaScript语言中,一切都 ...

  7. Python3.5-20190516-廖老师-自我笔记-匿名函数-装饰器

    当函数很简单的时候采用匿名函数很方便.

  8. shell快速入门

    $? 表示上一个命令退出的状态,0表示执行正常,不等于0表示执行不正常. $$ 表示当前进程编号 $ 表示当前脚本名称 $# 表示参数的个数,常用于循环 $*和$@ 都表示参数列表 $n 表示n位置的 ...

  9. 【JVM】内存区域

    程序运行时,有六个地方都可以保存数据: 1. 寄存器:这是最快的保存区域,因为它位于和其他所有保存方式不同的地方:处理器内部.然而,寄存器的数量十分有限,所以寄存器是根据需要由编译器分配.我们对此没有 ...

  10. jsp标签的介绍

    cankao:http://www.cnblogs.com/xdp-gacl/p/3788369.html jsp常用的标签有以下3个 1.<jsp:include>标签 2.<js ...