二进制思想及其应用

2023-10-26

两个经典面试题(二进制思想)
1.你让工人为你工作7天,回报是一根金条,这个金条平分成相连的7段,每工作1天的回报就是1段。每天结束的时候,工人都有可能会向你要金条。如果只允许你两次把金条弄断,你如何给你的工人付费?

2.有1000个苹果,将它们放在10个箱子里,怎么放才能让我向你要苹果的时候,你都能整箱整箱的给我,你的给法是否唯一?

解答:
1. 工人可能在第1,2,3,4,5,6,7天结束时向你要金条,你给他的金条之和应分别为1,2,3,4,5,6,7.这样,如果把金条弄断两次,使得三段长分别为1,2,4,那每天结束时,如果这天工人找你要金条,你都可以满足这天工人可以得到的金条数是他工作的天数。因为1-7之间的数可以用3位二进制来表示,即1,2,4,而这恰好是金条的三段长。
比如:
工人第一天要金条:直接给段长为1
工人第一天要金条,第二天也要金条:给段长为2,同时收回段长为1
工人第一,二天未要金条,第三天要金条:给段长为1,2
工人第1天要金条,第2,3,4,5未要金条,第6天要金条:给段长2,4,收回段长为1

2. 要苹果的数量肯定是1-1000之间,也就是说任意给一个数1-1000之间,我必须知道它等于哪几个数之和。也是利用二进制思想,2^9 = 512, 2^10 = 1024,所以放1000个苹果需要10个箱子,每个箱子苹果数依次为
第0个箱子 2^0 = 1
第1个箱子 2^1 = 2
第2个箱子 2^2 = 4
第3个箱子 8
第4个箱子 16
第5

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

二进制思想及其应用 的相关文章

  • 二进制思想及其应用

    两个经典面试题 二进制思想 1 你让工人为你工作7天 回报是一根金条 这个金条平分成相连的7段 每工作1天的回报就是1段 每天结束的时候 工人都有可能会向你要金条 如果只允许你两次把金条弄断 你如何给你的工人付费 2 有1000个苹果 将它
  • 二进制转换

    我们平时使用的十进制 十进制转二进制 整数情况 11表示成二进制数 11 2 5 余 1 5 2 2 余 1 2 2 1 余 0 1 2 0 余 1 得0结束 11的二进制表示为 从下往上 1011 小数情况 0 9表示成二进制数 0 9
  • 7.26 二进制练习题

    给你个礼物你能收到吗 打开这个exe文件后 我们看到了它让我们输入礼物提取码 我们先随便输入数据 按回车显示提取码错误还有输错的次数 我们发现这里存在着一个循环 然后我们在IDA里面打开这个文件 int cdecl main int arg
  • IEEE二进制浮点数算术标准(IEEE 754)

    IEEE二进制浮点数算术标准 IEEE 754 是20世纪80年代以来最广泛使用的浮点数运算标准 为许多CPU与浮点运算器所采用 这个标准定义了表示浮点数的格式 包括负零 0 与反常值 denormal number 一些特殊数值 无穷 I
  • Atcoder Beginner Contest 295

    A Probably English AC代码 include
  • 变量交换的四种方式

    可以使用以下方法对两个变量进行交换 方法一 定义一个中间量 define CRT SECURE NO WARNINGS include
  • 单淘汰赛制两队相遇算法

    对于这种单循环赛制acm也是常遇到这样的题那么 对于这样的比赛我们要怎么模拟所有的可能是一个问题 我们如何判断两个队在某一轮是否会遇到呢 我们其实可以利用二进制的性质 设某一轮比赛为i 求j和k两只队伍是否能比赛 下面我们用二进制来表示队伍
  • .有如下的4个/24地址块,试进行最大可能的聚合。212.56.132.0/24,212.56.133.0/24,212.56.134.0/24,212.56.135.0/24。

    有如下的4个 24地址块 试进行最大可能的聚合 212 56 132 0 24 212 56 133 0 24 212 56 134 0 24 212 56 135 0 24 由于四个地址块前两个字节都相同 只需将每个地址块的第三个字节转换
  • 二进制的算法题怎么做

    内容会持续更新 有错误的地方欢迎指正 谢谢 告诉大家一个诀窍 能高效解决大多数二进制的题目 假设有一个数n 那么n n 1 的作用 n n 1 得到的结果相当于把整数的二进制表示中最右边的那个1变成0 例1 求二进制数中1的个数 输入一个整
  • Kubernetes v1.25 搭建单节点集群用于Debug K8S源码

    参考说明 参考自 v1 25 0 CentOS binary install IPv6 IPv4 Three Masters Two Slaves md 按照自己的理解修改了下 搭建好的单节点v1 25 4版本集群 1 集群环境准备 1 1
  • C++编程积累——C++实现十进制与二进制之间的互相转换

    欢迎关注原创公众号 计算机视觉联盟 回复 西瓜书手推笔记 可获取我的机器学习纯手推笔记 直达笔记地址 机器学习手推笔记 GitHub地址 目录 十进制与二进制之间的转换 十进制转换二进制 C 实现十进制转换二进制 二进制转换十进制 C 实现
  • 二进制简单计算

    二进制简单计算 1 24 35 值 用二进制补码方式进行计算 24的补码 00011000 35的原码 10100011 35的反码 11011100 35的补码 11011101 24 35的值 00011000 11011101 111
  • 十六进制转二进制

    public static String hexToBinary String hex if hex null hex length 2 0 return null String bString String tmp for int i 0
  • 关于存储器按字节寻址和按字寻址的理解

    关于存储器按字节寻址和按字寻址的理解 近日在学习MOOC上学习哈工大刘宏伟老师的 计算机系统组成原理 课程 在4 1节提到主存的时候简单地提到一下关于按字节寻址和按字寻址的寻址空间问题 个人非常疑惑于是各处搜索查找资料 下面是本人就这个问题
  • CUDA编程 之 二进制工具与反编译

    两个 反编译工具 cuobjdump and nvdisasm 参考 http blog csdn net dark5669 article details 62264312
  • 遗传算法之二进制编码

    遗传算法的基本步骤 遗传算法 GA 的流程如图所示 Created with Rapha l 2 2 0 编码 把所需要选择的特征进行编号 每一个特征就是一个基因 一个解就是一串基因的组合 为了减少组合数量 在图像中进行分块 然后把每一块看
  • 机器数的原码、反码、补码、移码表示以及浮点数的二进制表示

    初学计算机组成原理时 有点儿搞不清楚机器数的各种表示方法 今天在这里总结一下 希望对大家有帮助 首先明确两个概念 机器数是指将 和 数字化的数 其中用 0 表示 1 表示 而对应的有 和 的数则称为真值 机器数的表示方法 1 原码表示法 符
  • ajax请求二进制流图片并渲染到html中img标签

    说明 后台返回图片二进制流 需要使用get请求获取返回结果 并且将返回的二进制流以图片形式显示在页面img中 但是日常显示图片都诸如这种形式 img src 图片路径 地址 alt 以上需求不能将后端地址直接填入src 原因是需要获取图片请
  • 【2-3】《Java基础语法》——二进制、变量、数据类型、标识符、数据类型转换、特殊变量定义、方法、运算符、变量作用域、编程规范、转义字符

    文章目录 基础语法 一 二进制 1 补码 2 二进制与十进制的转换 二 变量概述 三 数据类型 1 分类 2 范围 四 标识符 1 命名规则 2 Java中的关键字 3 定义变量 4 变量练习 五 数据类型转换 六 特殊变量定义 1 flo
  • C++基础——简单而强大的bitset

    basis bitset 的构造 bitset的操作 一些高级用法 将Bitsets视为一组标志 一些简单的原子操作 往往能组合出复杂而强大的功能 位操作的深远意义不在于表示一种数值 而是可能的情况数 我虽然暂时不知道bitset能组合出如

随机推荐

  • 【深度学习】 Python 和 NumPy 系列教程(一):Python基本数据类型:1、数字(整数、浮点数)及相关运算;2、布尔值

    目录 一 前言 二 实验环境 三 Python基本数据类型 1 数字 a 整数 int b 浮点数 float c 运算 运算符 增强操作符 代码整合 d 运算中的类型转换 e 运算函数abs max min int float 2 布尔值
  • 如何判断对象中是否存在某个键名

    之前遇到过很多这样的问题 如何去判断对象中是否存在某个键 从而对其进行下一步的操作 下面就就给大家介绍一种我目前了解的一种方法 首先你新建了一个新的对象 var obj 顺便复习一下上次讲的forEach循环 function get so
  • TCP 三次握手和四次挥手的面试题

    重新整理了一版 TCP 三次握手和四次挥手的面试题 2023最新版 任 TCP 虐我千百遍 我仍待 TCP 如初恋 巨巨巨巨长的提纲 发车 发车 img TCP 基本认识 TCP 头格式有哪些 我们先来看看 TCP 头的格式 标注颜色的表示
  • python 编码 —— codecs 库

    1 对文件读写 import codecs fout codecs open test html w encoding UTF 8 fout write fout write fout close 很自然地可将其改造为 with 结构 wi
  • 淘宝TDDL数据库分库分表

    淘宝TDDL数据库分库分表 2014 06 04 23 18 3334人阅读 评论 0 收藏 举报 分类 数据库 1 分库分表 而且分库规则非常灵活 2 主键生成策略 目前TDDL提供的id生成主要还是依托数据库来进行的 oracle可以直
  • 八大排序算法-归并排序

    归并排序的定义 是将两个 或两个以上 有序表合并成一个新的有序表 即把待排序序列分为若干个子序列 每个子序列是有序的 然后再把有序子序列合并为整体有序序列 归并排序的基本思想 设r i n 由两个有序子表r i m 和r m 1 n 组成
  • ref绑定到不同元素获取到不同对象

    ref如果绑定在组件中 那么通过this ref refname获取到的是一个组建对象 ref如果绑定在普通的元素中 那么通过this ref refname获取到的是一个元素对象
  • 云呐

    科技大数据时代 企业的信息化规划刻不容缓 固定资产管理系统做为一款企业资产方案系统 可完成对企业资产的系统化管理 充分发挥资产更高的实用价值 固定资产管理系统可将企业內部全部资产融合在一起 根据对固定资产的增加 改动 退出 迁移 删除 使用
  • 2016年4月28日(6985小时时),第一次签合同,里程碑

    这周四 我觉得是个历史性的事件 是个里程碑 说明 锲而不舍 金石可镂 虽然不多 2万
  • win11/ win10 C盘扩容教程

    win11 win10 C 盘扩容教程 1 写在前面 10月5号微软官方正式发布了win11操作系统 作为一名科技星人 我也是第一时间升级体验了一番 如何升级win11我就不多说了 晚上一搜教程非常的多 这里推荐使用win11升级助手升级
  • 合宙ESP32系列

    目录 源文档见 ESP32系列编译文档 LuatOS 文档 本地编译详细步骤 准备环境 准备项目 获取源码 编译前的最后准备 编译 LuatOS SoC通用固件格式soc介绍 定制固件里的库 PS luat conf bsp h问题汇总 源
  • SGL STL源码剖析——迭代器

    SGL STL源码剖析 迭代器 迭代器 迭代器的型别 Traits的作用 迭代器相应的五种型别 type traits 迭代器 在我们使用STL容器的时候 迭代器是非常常见的 STL将容器和算法分开 彼此独立 然后通过迭代器相互关联 迭代器
  • U-Net: Convolutional Networks for Biomedical Image Seg-mentation

    Abstract 深度网络的成功训练需要数千个带注释的训练样本 这是一个很大的共识 在本文中 我们提出了一种网络和训练策略 它依赖于数据增强的强大使用 以更有效地使用可用的带注释的样本 该体系结构由捕获上下文的收缩路径和支持精确本地化的对称
  • 纯源码程序的执行

    QT Creator本身是个IDE安装的时候根据自己需要配置的又有对应的编译器 因此编写普通的程序也不再话下 选择Non Qt Project工程 并在右侧根据自己的需要选择C 应用还是C应用 新工程中工程管理文件和代码如下 执行结果如下
  • 表与表之间的关系

    一 表关系的概念 现实生活中 实体与实体之间肯定是有关系的 如 学生和老师 学生和课程 部门和员工 每个人和自己的身份证号码等 在设计表的时候 就应该体现出来表与表之间的这种关系 表与表之间的三种关系 一对多 最常用的关系 如部门和员工 多
  • 在ubuntu下如何搜索文件?

    1 whereis 文件名 特点 快速 但是是模糊查找 例如 找 whereis mysql 它会把mysql mysql ini mysql 所在的目录都找出来 我一般的查找都用这条命令 2 find name 文件名 特点 准确 但速度
  • 从端到端打通模型端侧部署流程(MNN)

    从端到端打通模型端侧部署流程 MNN MNN框架 MNN的官方介绍 MNN的架构 问题解决 MNN使用样例 MNN部署 一般流程 创建会话 运行会话 获取输出 流程汇总 总结 MNN框架 MNN的官方介绍 官方文档 有疑问一定要先查这里 M
  • 西门子 SCL 语言 模拟量转换小例程

    软硬件平台 软件是博图 TIA v15 硬件是西门子300系列 PLC 简介 使用scl语言编写一个FC子程序 对模拟量进行处理 对模拟数据进行转换 详细介绍 添加新块 添加一个FC块 语言选择scl 添加变量 输入型变量5个 一个运算后输
  • 信息学奥赛一本通 1177:奇数单增序列

    题目链接 http ybt ssoier cn 8088 problem show php pid 1177 include
  • 二进制思想及其应用

    两个经典面试题 二进制思想 1 你让工人为你工作7天 回报是一根金条 这个金条平分成相连的7段 每工作1天的回报就是1段 每天结束的时候 工人都有可能会向你要金条 如果只允许你两次把金条弄断 你如何给你的工人付费 2 有1000个苹果 将它