题目

题目的意思是给出n和m的二级制,要求把m的二进制数字插入到n的二进制的第j位到第i位(从右向左),它保证n的第j位和第i位均为0

这道题我在开始做的时候,没有注意到它保证了n的第j位和第i位均为0这样的条件,所以做法较为麻烦,具体就是Z转为二进制后再依次追加

class BinInsert {public:int binInsert(int n, int m, int j, int i){string n_string;while (j> 0)//把第0位到第j位的先转换过来{n_string += (n % 2) +'0';n /= 2;j--;}while (m)//然后把m的二进制依次放进去{n_string += (m % 2) + '0';m /= 2;n /= 2;//注意不要忘记同步n}while (n)//最后把n的二进制补满{n_string += (n % 2) + '0';n /= 2;}//此时得到了二进制数字是相反的,但是不要反转,因为下面转换时直接可以从0开始int ret=0;for (size_t i = 0; i < n_string.size(); i++)//二进制转换为十进制{ret += (n_string[i]-'0')*pow(2, i);}return ret;}
};

但是这道题中“保证了n的第j位和第i位均为0”,这样的话就使得题目难度大大降低,直接让m左移j位,然后与n进行或运算,或运算有1就为1

基础编程题之二进制插入(位运算)相关推荐

  1. python编程加减法_python编程题之二进制加减法运算的案例分析

    python编程题之二进制加减法运算的案例分析 发布时间:2020-10-27 09:24:11 来源:亿速云 阅读:62 作者:小新 小编给大家分享一下python编程题之二进制加减法运算的案例分析 ...

  2. 华为机试题python版节选(基础编程题)

    前言 自学python之后,可以借助这些企业招聘时的机考题目来锤炼一下实践能力.. 每道题含要点解析,是按照自己理解梳理的,多个答案的是结合自己的答案+网上的答案,不一定很严谨,请读者自行在编译器中调 ...

  3. 判断三角形java代码_java基础编程题之异常处理

    以下是刚开始学习java的基础编程题,每天持续更新java每个知识点的题目,持续练习,不断提高java基本功,培养编程能力.今天的练习的十八题是java的异常处理的使用. 1.检测年龄不能为负数和大于 ...

  4. PTA-然后是几点(基础编程题)

    PTA-然后是几点(基础编程题) 有时候人们用四位数字表示一个时间,比如1106表示11点零6分.现在,你的程序要根据起始时间和流逝的时间计算出终止时间. 读入两个数字,第一个数字以这样的四位数字表示 ...

  5. java 二进制位运算_Java中的二进制与位运算

    大家在阅读一些算法或者一些开源框架的时候,总会见到~,>>,>>>,|这种大量的位运算,因此想要读明白 这部分代码,对于计算机的二进制操作以及位运算是必须要了解的,那么本 ...

  6. c语言基础编程题文库,C语言基础编程题资料.doc

    C语言基础编程题资料.doc |5-1 求幂之和 15 分本题要求编写程序,计算 sum21 22 23 cdots 2nsum2122232n.可以调用 pow 函数求幂.输入格式输入在一行中给出正 ...

  7. 超有趣的二进制—高效位运算秒懂

    附Java/C/C++/机器学习/算法与数据结构/前端/安卓/Python/程序员必读书籍书单大全: 书单导航页(点击右侧 极客侠栈 即可打开个人博客):极客侠栈 ①[Java]学习之路吐血整理技术书 ...

  8. C语言基础编程题——喝水问题,译码问题

    C语言基础编程题--喝水问题,译码问题 有这样一道智力题:"某商店规定:三个空汽水瓶可以换一瓶汽水.小张手上有十个空汽水瓶,她最多可以换多少瓶汽水喝?"答案是5瓶,方法如下:先用9 ...

  9. 计算机AL教程笔记,计算机系统基础学习笔记(2)-数据的位运算操作

    C语言的位运算操作包括两类,逻辑运算操作和逻辑移位操作. 逻辑运算操作 C语言提供了四种按位逻辑操作符,分别是按位取反,按位与,按位或,按位异或.在编译时,编译器会根据操作数的宽度分别转换为不同的指令 ...

最新文章

  1. linux下C++ 插件(plugin)实现技术
  2. mongod副本集的安装配置
  3. CSS深入理解学习笔记之overflow
  4. python 中文编码差异_Python 编码为什么那么蛋疼?
  5. java读取excel的常用办法
  6. 电脑办公 等 无锡计算机培训,无锡锡山区电脑培训计算机培训office办公软件培训...
  7. 5G火车站来了!上海虹桥火车站5G网络建设正式启动...
  8. SQLite3:对SQLite3加密
  9. UVa 1586 Molar mass(模拟)
  10. 【css的基础操作(css语言规范,字体,表格,类名)】
  11. Windows系统环境编写DOS批处理文件
  12. 图神经网络中的谱图理论基础
  13. 基于机器视觉无人平台自主导航避障系统(卓翼智能)
  14. linux之ssh命令
  15. 达观数据智能对公审贷系统,深化上海银行普惠金融、供应链金融科技创新
  16. 春游4.1 | 湖南多校赛20190331 / 16东京区域赛
  17. 使用机器学习预测大盘
  18. 电脑点击关机之后一直退回进入登录界面
  19. Oracle的学习路径与方法讨论
  20. 计算机组成原理与汇编语言资源分享

热门文章

  1. 经典面试题(33):以下代码将输出的结果是什么?
  2. no route to host什么意思_Day 74:Vue里的route和router
  3. python通过ssh配置交换机_配置(通过SSH)Cisco交换机的Python脚本
  4. linux中printf命令,Linux中printf命令使用实例
  5. python可移植性强吗_你真的了解Python吗?本文可以让你更深度了解Python
  6. 数据分析之 缺失值分析
  7. 推荐一个在线全自动智能图片背景扣除工具,效果杠杠的
  8. 程序员对辉瑞新冠疫苗的计算解读,这些常识可能你也不知道
  9. Survival analysis
  10. python进程数据共享_python程序中的进程操作-进程间的数据共享