报数游戏

题目描述
报数游戏 首先,会给他们一人一个编号,并且每个人的编号都不相同。接下来的每一回合,会给一个数,编号超过它的最小编号的人要报出自己的编号。如果没有人的编号比给出的数要大,那么编号最大的人要报出自己的编号。每个人可以重复报号。 会按照一个列表顺次报出每个回合的数,朋友们想知道每回合报出的编号应该是多少。 输入
输入数据共 3 行。 第一行有两个整数 n,m(1≤n≤100,000,1≤m≤100,000),分别表示参与游戏的朋友的个数,和游戏的回合数。 第二行 n个整数 ai(1≤ai≤100,000,000),表示朋友们每个人的编号。对于 0≤i<j<n,都有 ai<aj,即他们的编号递增排列。 第三行 m 个整数 qi(1≤qi≤100,000,000),表示每回合给的数字。 输出
输出共一行 m 个整数,表示每回合报出的编号,每两个整数之间一个空格,最后一个数后面没有空格。

以下程序实现了这一功能:

#include <iostream>
#include <cstring>
#include <vector>
#include <algorithm>
using namespace std;
int ai[100010], qi[100010];
int main()
{int a, q;while (cin >> a >> q){for (int i = 0; i < a; i++)cin >> ai[i];for (int i = 0; i < q; i++)cin >> qi[i];for (int i = 0; i < q; i++){int left = 0, right = a - 1, mid;while (left < right){mid = (left + right) >> 1;if (ai[mid] <= qi[i])left = mid + 1;elseright = mid;}if (left - 1 < 0 || ai[left] < qi[i])left++;i ? cout << " " << ai[left - 1] : cout << ai[left - 1];}cout << endl;}return 0;
}

(每日一练c++)报数游戏相关推荐

  1. PyGame每日一练——五子棋小游戏

    前言 PyGame 是一个专门设计来进行游戏开发设计的 Python 模块,允许实时电子游戏研发而无需被低级语言(如机器语言和汇编语言)束缚,使用起来非常的简单,非常适合新手拿来玩耍,本教程源码均基于 ...

  2. Python每日一练(20230510) 石子游戏 VII\VIII\IX

    目录 1. 石子游戏 Stone Game VII 2. 石子游戏 Stone Game VIII 3. 石子游戏 Stone Game IX

  3. shell脚本每日一练(二)

    shell脚本每日一练 一.练习题 1.提示用户输入用户名和密码,脚本自动创建相应的账户及配置密码.如果用户不输入账户名,则提示必须输入账户名并退出脚本;如果已经存在用户,则提示用户已存在;如果用户不 ...

  4. IT冷知识--每日一练

    目录 一.IT冷知识--每日一练 战火中的程序员 讽刺的名字 爱,死亡和机器人 浏览器的新时代 C++ 的类型是什么? <纸牌屋>是谁制作的? 盖茨的游戏梦 第一次冒险 铭记一生的悲剧 蠕 ...

  5. 每日一练 | 20道常考Python面试题大总结

    每日一练 如果要对数据分析面试题进行归纳总结,基本可以分为三大类,分别是技术题.逻辑思维题.业务场景题. 本栏目旨在为小伙伴们分享常考/经典的数据分析面试题,大家在学习之余也可以进行自测,巩固学习成果 ...

  6. 【软考备战·希赛网每日一练】2023年4月14日

    文章目录 一.今日成绩 二.错题总结 第一题 第二题 第三题 第四题 三.知识查缺 题目及解析来源:2023年04月14日软件设计师每日一练 一.今日成绩 二.错题总结 第一题 解析: 具有 最优子结 ...

  7. Python每日一练0023

    问题 如何判断一个文件是否存在 解决方案 这个问题可以分成几类问题 如果这里的文件指的是文件或目录,我们可以用os.path.exists()方法 >>> import os > ...

  8. WindowsAPI每日一练(2) 使用应用程序句柄

    WindowsAPI每日一练系列 :https://www.cnblogs.com/LexMoon/category/1246238.htmlWindowsAPI每日一练(1) WinMain Win ...

  9. python题目关于企业利润_【每日一练】巧用python实现利润计算

    原标题:[每日一练]巧用python实现利润计算 相信很多小伙伴都遇到过阶梯利率的问题,比如说银行的利息计算,不同阶段的本金有不同的利率:税务的税费计算,不同的营收有不同的缴纳率:个人的提成,不同的销 ...

最新文章

  1. Attention Mechanism
  2. f5 会话保持 负载均衡_四层负载均衡和七层负载均衡区别在哪里?
  3. 源码安装mysql数据库_Linux下源码安装mysql数据库
  4. java comparable接口_浅谈程序接口
  5. 【Presto】http-worker-103 com.facebook.presto.execution.SqlTaskManager Switching coordinator affinity
  6. MySQL 取得两个时间相差的分钟数 及 常用时间函数
  7. Mozart Update 1(杯具额…)
  8. Spring Security 学习之X.509认证
  9. 怎样批量修改图片格式
  10. cannot open shared object file
  11. ValueError: multiclass format is not supported
  12. 联合几位大佬给大家送110本技术书籍!包邮到家!!
  13. 大数据小项目之电视收视率企业项目05
  14. 低成本5W无线充电器方案FS68001B简便充电芯片
  15. 设计模式初探(五)——二三模式一锅煮
  16. android 工具 Draw 9-patch 详解
  17. 关于type_C接口
  18. win10系统英雄联盟老是重新连接服务器,更新win10系统后lol进不去游戏怎么回事 win10lol重新连接进不去怎么办...
  19. 如何将多个excel表格合并成一个_如何将多个PDF文档合并为一个
  20. HTML部分基础语法

热门文章

  1. thinkpads430无法连接无线网
  2. 转自MBA lib 时间管理
  3. 网络传输中的那些编码之-base64编码
  4. 企业级项目分享:购物车模块( 二) 21-06-09
  5. 华为云EI工业智能体2.0,让工业“Know How”开口说话
  6. 柱底反力求和lisp软件_MIDAS软件常见提问与解答
  7. vue-devtools-master
  8. windows装机开机转圈之后蓝屏,华硕主板开机卡logo,
  9. CSS伪类选择器详细讲解
  10. 使用递归打印斐波那契数列