购买装备(“盛大游戏杯”第15届上海大学程序设计联赛夏季赛暨上海高校金马五校赛(重现赛))

发布时间: 2017年7月9日 20:20   时间限制: 1000ms   内存限制: 128M

描述

最近盛大的一款游戏传奇世界极其火爆。游戏玩家John,想购买游戏中的装备。已知游戏的商店里有n件装备,第i件装备具有属性值ai,购买需要花费bi个金币。John想去购买这些装备,但是账号中只有m个金币,John是个很贪婪的家伙,他想购买尽可能多的装备。并且在保证购买到最多件装备的情况下,他还想让他所购买的装备当中拥有最小属性值的装备的属性值尽可能大。

输入

输入测试组数T,每组数据第一行输入整数n(1<=n<=100000)和m(1<=m<=109), 接下来有n行,第i行有两个数ai, bi(1<=ai,bi<=10000).

输出

对于每组数据,输出两个数字,第一个数字代表John最多可以购买的装备数,第二个数代表在John购买最多件装备的前提下,所购买的装备当中拥有最小属性值的装备的最大属性值(输入数据保证至少可以购买一件装备)

样例输入1 复制

1
2 4
3 2
2 3

样例输出1

1 3

提示

输入数据量较大,建议使用scanf/printf

【分析】

很容易想到一点就是,按装备价格升序排序,从最小的开始买,就可以确定答案装备可以买ans件。

所以在这个的基础上,问题就是怎么提高最低属性值,所以这里用二分找作为最低属性值的装备,check这件装备的属性值作为最低属性值是否满足能买ans件装备的条件

最后输出答案就好了...

//比赛的时候真的...太蠢了自己...题目看反了...先读取的价值再读取的属性....后来也没重新看题目..一直在研究自己的思路哪里有问题...QAQ

【代码】

#include <stdio.h>
#include <string.h>
#include <algorithm>
using namespace std;struct xx{int a,b;
}now1[100100],now2[100100];
bool cmp1(const xx&x,const xx&y)
{if (x.a==y.a) return x.b>y.b;return x.a<y.a;
}
bool cmp2(const xx&x,const xx&y)
{return x.b<y.b;
}
int M,n,m;
int ANS;
int check(int x)
{int m=M;int ans=0;for (int i=0;i<n&&m>=now1[i].a&&ans<=ANS;i++) if (now1[i].b>=x)ans++,m-=now1[i].a;if (ans>=ANS) return 1;else return 0;
}int main()
{int pp;scanf("%d",&pp);while (pp--){scanf("%d%d",&n,&m);M=m;for (int i=0;i<n;i++) scanf("%d%d",&now1[i].b,&now1[i].a),now2[i]=now1[i];sort(now1,now1+n,cmp1);sort(now2,now2+n,cmp2);ANS=0;for (int i=0;i<n&&m>=now1[i].a;i++) ANS++,m-=now1[i].a;printf("%d ",ANS);int l=0,r=n-1,mid;int xx=now2[0].b;while (l<=r){mid=(l+r)>>1;if (check(now2[mid].b)) xx=now2[mid].b,l=mid+1;else r=mid-1;}printf("%d\n",xx);}return 0;
}

“盛大游戏杯”—K 购买装备相关推荐

  1. 盛大游戏杯第十五届上海大学程序设计联赛暨上海金马五校赛

    编程1小时,提交4小时 做这种比赛一定要选一个好OJ啊 黑白图像直方图 发布时间: 2017年7月8日 21:00   最后更新: 2017年7月8日 22:38   时间限制: 1000ms   内 ...

  2. “盛大游戏杯”第15届上海大学程序设计联赛夏季赛暨上海高校金马五校赛:I. 丢史蒂芬妮

    丢史蒂芬妮 发布时间: 2017年7月8日 21:37   最后更新: 2017年7月8日 23:24   时间限制: 1000ms   内存限制: 128M 描述 有一天,空和白很无聊,决定玩盛大游 ...

  3. 随机传送迷宫“盛大游戏杯”第15届上海大学程序设计联赛夏季赛

    随机传送迷宫 发布时间: 2017年7月9日 20:20   最后更新: 2017年7月10日 21:13   时间限制: 1000ms   内存限制: 128M 描述 小Y做了一个随机迷宫生成器,生 ...

  4. 文字游戏系统 可战斗 可充值 可购买装备 可升级的简单小游戏

    只上传了战士的,法师界面的大家可以从我分享的资源里找到, 简单易懂,适合小白来自己操作 话不多说,嘴炮大作战开始  大家可从我上传的资源,下载观看 go!go! go! 一,主页面可选择你要操作的功能 ...

  5. 2017上海金马五校 购买装备 贪心+二分Check

    购买装备 发布时间: 2017年7月9日 18:17   最后更新: 2017年7月9日 21:05   时间限制: 1000ms   内存限制: 128M 描述 最近盛大的一款游戏传奇世界极其火爆. ...

  6. 盛大游戏回归A股进入倒计时:估值近300亿 腾讯年初曾入股

    雷帝网 雷建平 9月12日报道 A股上市公司世纪华通(002602.SZ)日前正式披露重组预案,拟通过发行股份及支付现金方式购买盛跃网络科技(上海)有限公司100%股权,交易预估价为298亿元. 这标 ...

  7. 世纪华通发布重组盛大游戏草案 承诺未来三年实现利润近76亿

    雷帝网 乐天 11月10日报道 A股上市公司世纪华通(002602.SZ)日前对盛跃网络(盛大游戏的运营实体)的重组草案正式披露. 草案显示,盛跃网络100%股东权益市场法下的评估价值为310亿元,结 ...

  8. YGG 在 Branch.gg 的免费游戏 Castaways 中购买了 Genesis NFT

    YGG 在 Branch.gg 的第一款免费 web3 游戏 Castaways 中购买了 NFT 资产.Branch.gg 是一家开发开放世界沙盒大型多人在线游戏(MMO)的游戏初创公司,玩家通过合 ...

  9. Unity 结合数据库实现商城购买装备以及数据更新

    放假在家没事可做,游戏荒ing,做个商城教学,针对有一定基础的新手,先分析下商城购买装备是怎么实现的 购买流程 查询改装备的价格 查询当前玩家有多少钱 判断钱够不够买装备 如果够:召唤师的钱-=装备的 ...

  10. 世纪华通回复深交所问询函:盛大游戏310亿估值合理 明日复牌

    雷帝网 乐天 11月6日报道 A股公司世纪华通今日针对此前深交所出具的<关于对浙江世纪华通集团股份有限公司的重组问询函>做出了回复. 世纪华通称此次交易不存在规避重组上市认定标准的情形.盛 ...

最新文章

  1. Linux下磁盘分区工具cfdisk的使用
  2. leetcode算法题解(Java版)-9-N皇后问题
  3. 架构师之路 — 分布式系统 — CAP 定理
  4. 《机器学习》课程视频(数据处理、模型构建与优化)
  5. 深入理解javascript原型和闭包(13)-【作用域】和【上下文环境】
  6. 探索比特币源码8-哈希2
  7. iOS设备中的推送(三):页面跳转
  8. MySQL 性能分析 之 联合索引(复合索引)实践分析
  9. UIKit Particle Systems in iOS 5 Tutorial ( 附雨的粒子效果 )
  10. SylixOS内存错误排查方法
  11. cad字体安装_装了1个G的CAD字体后,我的CAD崩了怎么办?
  12. 城市大脑总体框架和主要平台
  13. mysql索引(七)唯一索引
  14. 解决office怎么卸载都卸载不干净的终极办法。
  15. 自旋波matlab计算,从电子到磁振子,自旋波计算开启新篇章
  16. 纸壳cms支持php坏境吗,如何参与纸壳CMS开发以及贡献代码
  17. 百度网站优化和360网站优化的排名算法异同之处
  18. 电大计算机应用基础win7操作,新版电大《计算机应用基础》(win7)操作题解题步骤.doc...
  19. python批量修改文件扩展名
  20. Python输出16进制不带0x补零,整数转16进制,字符串转16进制

热门文章

  1. SpringBoot+Vue 微信支付API V3
  2. 含绝对值函数的可导性
  3. B站banner图片随鼠标移动虚化效果摸索
  4. NOTION 换深色背景 黑色背景
  5. Win10应用商店无法加载页面,错误代码0x80131500怎么办
  6. python运行报错怎么看_解决python运行启动报错问题
  7. c语言 gets getc,6.16 C语言,getchar gets getc有什么区别 分别是表示什么的
  8. 如何用计算机录视频,怎么用电脑录制视频
  9. 互联网数仓之:Lambda架构 vs Kappa架构
  10. macos系统镜像iso_Windows10操作系统iso镜像、微软正版软件下载站:MSDN,我告诉你...