第一次写桶排相关题....

#include<cstdio>
#include<iostream>
#define rint register int
template <class T> inline void read(T &X)
{
X=;int W=;char ch=;
while(!isdigit(ch))W|=ch=='-',ch=getchar();
while(isdigit(ch))X=(X<<)+(X<<)+(ch^),ch=getchar();
X=W?-X:X;return;
}
int n,m,a[],cnt[],ans=,cnt1=,cnt2=,cnt3=,num=-;
int main()
{
freopen("zhanshajihua.in","r",stdin);
freopen("zhanshajihua.out","w",stdout);
read(n),read(m);
for(rint i=;i<=n;++i)read(a[i]),cnt[a[i]]++;
for(rint i=;i<=-;i+=)
{
ans+=cnt[i];cnt1+=cnt[i];
ans+=cnt[i+]*;cnt2+=cnt[i+];
ans+=cnt[i+]*;cnt3+=cnt[i+];
++num;
if(ans>=m)break;
}
while(ans>=m+ && cnt3){ans-=;--cnt3;}
while(ans>=m+ && cnt1){--ans;--cnt1;}
while(ans>=m+ && cnt2){ans-=;--cnt2;}
if(ans>=m)printf("%d %d\n",num,(cnt1+cnt2)+cnt3*+num);
else printf("-1\n");//luogu “Human Cannot Win Dog”
return ;
}

最新文章

  1. android 事件分发机制详解(OnTouchListener,OnClick)
  2. javascript基础02
  3. 2016年11月17日 星期四 --出埃及记 Exodus 20:8
  4. 分布式发布订阅消息系统 Kafka 架构设计
  5. [原创]javascript prototype 对象 函数 &lt;精简的美丽......&gt;
  6. UFLDL教程(四)之Softmax回归
  7. Ext js Grid
  8. 利用canvas 导出图片
  9. 2017-11-15 软件包 java.io学习
  10. 【树形dp】Bzoj3391 [Usaco2004 Dec]Tree Cutting网络破坏
  11. Jenkins持续集成实践之java项目自动化部署
  12. java知识随笔
  13. GitHubPopular运行记录
  14. 获取汉字拼音&amp;首字母
  15. ADSL理解
  16. Java第08次实验提纲(多线程)
  17. hadoop学习笔记(三):hdfs体系结构和读写流程(转)
  18. [转]SSH 原理和基本使用:ssh 安全配置 以及ssh key 认证登录
  19. bat 变量作用域
  20. Bing词典vs有道词典比对测试报告——功能篇之辅助功能,差异化功能及软件的效能

热门文章

  1. 京东云数据库RDS SQL Server高可用概述
  2. CocoaPods-Alcatraz插件
  3. 利用tensorflow编写自己的机器学习模型主要步骤
  4. sql server2008 装上后,总是出现machine.config line136,或者 出现 配置错误 无法识别的配置节 system.serviceModel 。
  5. typescript-学习使用ts-1
  6. ESLint javascript格式要求
  7. 基于Linux下的C语言项目实战--本地账号管理系统
  8. mysql 视图 事务 索引
  9. Python字典基础
  10. maven tomcat 自动部署配置