首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

一个有趣的问题

前言   这个问题来自于看到的一个面试题,其中的解题过程比较有趣,有很多值得借鉴的地方,这里写出来作为记录。 题目 假设一栋100层的楼,两个完全一样的鸡蛋。...非完美的5分解决方案:     解决方案一的灵感来自于已知两数的和,求两数的平方和的最小值。即假设两数和为25,求两数的平方和的最小值和最大值。   ...这个解法比较简单,直接设一个数位x,则另一个数为(25-x),两数的平方和为 x2 + (x-25)2 = 2x2 - 50x + 625 = 2(x - 12.5)2 + n 可以只当x为12.5的时候取得最小值...丢第一个鸡蛋,直到第一个鸡蛋碎掉。然后从碎之前的一次丢位子的后面一层开始一直往上一层丢,直到找到刚好第二个蛋碎的位置。此时最坏情况下需要试18次。   ...假设第一次丢蛋没碎,那么第二次丢肯定要在x层之上丢,假设第二次丢的层数比第一次丢的高z层,同第一次一样假设第二次丢鸡蛋碎了, 那么最坏的情况下找到N需要的次数应该是: 1 + 1 + z - 1 =x;

760130
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    一个有趣的BUG

    最近在协助团队完成ES数据的切换(业务数据迁移),过程中遇到一个比较好玩的BUG ,和大家分享并作为经验记录。...在最后的数据验证环节,发现有一个ID对应不上了,如下图所示,通过对比工具,发现一个长度较大的ID发生了偏移,其他的数据都没有问题。这是为什么呢?一头雾水。...千年虫问题:这个问题相信很多人IT人都听说过,简单来说,就是由于前期计算机的存储资源较为昂,在表达时间时,为了节约空间,有位科学家提出了一个方案,把1960年8月11日,简写成600811。...但这样会有一个问题,就是当时被缩写掉的是19XX年中19,如果时间来到2000年,程序就无法准确表达时间。比如:2000年1月1日,简写成六位数是000101。计算机就会怀疑人生,怎么时间倒流了呢?...2038年问题:现在很多时候,我们在处理时间问题时,都喜欢用时间戳来记录,因为简单方便,不需要考虑时区问题(时区问题很让人头疼的,一不小出就容易出错)。但是这里面会有一个小BUG哟。什么是时间戳呢?

    39740

    一个有趣的东西-cloudeye

    最近遇到了一个挺好玩的东西,应该是前段时间突然火起来cloudeye,在wooyun上有卖激活码,不过找到了一个免费版的还不错… 背景 在实际渗透环境时,我们经常会遇到疑似命令执行或者没有回显的注入,第一种我们可能会用各种各样的请求来判断是否存在命令执行...现在我们有个一个更好的解决办法,dns带外查询… 原理 rr菊苣曾经写过一篇解释原理的文章 简单的来说,cloudeye自己保留dns的日志信息,并对应每个会员一个二级域名,这样我们可以通过 ping...test.xxxxx.dnslog.info 这样的多级域名方式,把我们需要返回的信息链接到url中,然后分析日志,test部分就是我们得到的信息 免费的平台 先推荐一个免费的平台吧,并不是每一个人都会花...对于 MySQL 熟悉的人可能会知道 MySQL 有一个 load_file 的 function,可以用来读取文件。...传入 我们看到收到了请求 查询user()的时候可能会发生错误,因为在url中@有特殊意义,(╯-_-)╯╧╧,需要编码一下 感觉还是挺有趣的…

    33840

    Ajax篇(001)-Ajax 是什么? 如何创建一个 Ajax?

    答案:Ajax 全称是 asychronous javascript and xml,可以说是已有技术的组合,主要用来实现客户端与服务器端的异步交互,实现页面的局部刷新。...基本步骤 4 步走:(创建对象、建立连接、发送数据、接收数据) 解析: 1:我要创建一个XMLHttpRequest 对象。...var xhr=new XMLHttpRequest() // 创建对象 2:我要发送请求,我要跟服务器建立一个连接。...xhr.open("type 提交方式", "url 提交的地址") 2.1:如果是post请求,需要设置请求头 xhr.setRequestHeader("Content-Type","application...如果说是get 请求,请求的数据在地址的后面。 xhr.send() 发送数据,这一步不能省略 4:接收服务器的数据。 服务端返回数据会调用一个回调函数。

    41910

    Python一个有趣的彩蛋

    上周组内技术分享会,朋友介绍了Python语言有趣的历史,其中一个有意思的环节就是Python之禅,或者叫Python的彩蛋-this.py, 命令行执行python -c "import this"...找了一个靠谱的翻译版本,体会一下, 优美胜于丑陋(Python以编写优美的代码为目标) 明了胜于晦涩(优美的代码应当是明了的,命名规范,风格相似) 简洁胜于复杂(优美的代码应当是简洁的,不要有复杂的内部实现...(动手之前要细思量) 如果你无法向人描述你的方案,那肯定不是一个好方案;反之亦然(方案测评标准) 命名空间是一种绝妙的理念,我们应当多加利用(倡导与号召) 其实这个this.py原始文件在$PYTHON_HOME...这是一段镜像密码函数,密码的关键是使用d[chr(i+c)] = chr((i+13) % 26 + c),0-12前十三个数字对应的序号结果+13,13-25后13个数组序号结果-13,即一个字母表上的镜像交换密码...对程序员来说,外人看着很严谨,其实还是有顽皮的一面,无论是这种语言,还是一些工具,都会有程序员夹带的一些彩蛋,例如Chrome,其中隐藏着一个小恐龙跑酷的黑白像素小游戏,在地址栏输入chrome://dino

    46630

    surprise,一个有趣的 Python 库!

    更多Python学习内容:ipengtao.com 大家好,今天为大家分享一个有趣的 Python 库 - surprise。...Python的Surprise库是一个专门用于构建和分析推荐系统的开源库。它提供了多种协同过滤算法,方便开发者快速构建、评估和优化推荐系统。...以下是一个简单的示例,演示如何从文件中加载数据: from surprise import Dataset # 加载内置的movielens数据集 data = Dataset.load_builtin...以下是一个示例,演示如何进行评分预测: # 预测用户对某个物品的评分 uid = str(196) # 用户ID iid = str(302) # 物品ID pred = algo.predict(...,以下是一个使用交叉验证评估模型性能的示例: from surprise.model_selection import cross_validate # 执行交叉验证 results = cross_validate

    60310

    imbox,一个有趣的 Python 库!

    大家好,今天为大家分享一个有趣的 Python 库 - imbox。...Github地址:https://github.com/martinrusev/imbox Imbox是一个用于处理电子邮件的Python库,它提供了一个简单的接口来连接、读取以及管理IMAP邮件。...特性 易于使用:通过简单的API读取、搜索和下载邮件。 广泛支持:支持任何兼容IMAP的邮件服务器。 附件处理:易于下载和处理邮件附件。 安全性:支持安全的连接,包括SSL和TLS。..., message in unread_messages: # 自动回复 if 'urgent' in message.subject.lower(): # 假设这里有一个发送邮件的函数...总结 Python的Imbox库是一个功能强大的邮件处理工具,提供了简单而直接的方法来连接IMAP服务器、读取、搜索和管理邮件。

    46310

    关于Uinicode的一个“有趣的”事情

    本文作者:IMWeb 黄龙 原文出处:IMWeb社区 未经同意,禁止转载 故事是这样开始的 产品K: 为什么我们的网站不能显示火星文? 开发L: 什么样的火星文?...产品K: 你看知乎上是显示正常的 开发L: 哦,那我看看 作为一个技术很一般的前端很快发现这个和知乎的font-family的设置有关系,因为它设置了PingFang SC字体。...作为一个喜欢问问题的前端那就要问 问题一:为什么其它字体显示就不正常PingFang SC字体就可以呢? 这̀是̀什̀么̀鬼̀(这是什么鬼?)...如果是英文例如:i̲̅m̲̅w̲̅e̲̅b̲̅ 还是可以正常显示的。...文章中留下的三个问题留到下回分解 参考文章 x是个什么符号?

    31640

    遇到一个有趣的逻辑漏洞

    遇到个有趣的逻辑漏洞,和大家分享一下。  某系统数据库是mysql。user表有个code字段,类型是int(11),这个字段是保存一个随机数,用来找回密码的时候做验证,默认值是0。 ...看似似乎没问题,只有当email为你的email,并且你知道他的随机code的时候,才能不die,才能获得$_SESSION['email']。...但关键问题就是:code的默认值是0,也就是说所有用户只要没有重置过密码,他的code就是0,所以等于说我知道了所有用户的code,那我不就可以重置所有用户的密码了吗? ...又涉及到mysql一个tip,很容易犯错的点。  我之前说了,code这个字段的类型是整型int(11)。...而在mysql里面,当字段类型为整型,而where语句中的值不为整型的时候,会被转换成整型才放入查询。

    37320

    关于Uinicode的一个“有趣的”事情

    本文作者:IMWeb 黄龙 原文出处:IMWeb社区 未经同意,禁止转载 故事是这样开始的 产品K: 为什么我们的网站不能显示火星文? 开发L: 什么样的火星文?...产品K: 我给你截图 产品K: 你看知乎上是显示正常的 开发L: 哦,那我看看 作为一个技术很一般的前端很快发现这个和知乎的font-family的设置有关系,因为它设置了PingFang SC字体。...作为一个喜欢问问题的前端那就要问 问题一:为什么其它字体显示就不正常PingFang SC字体就可以呢? 这̀是̀什̀么̀鬼̀(这是什么鬼?)...如果是英文例如:i̲̅m̲̅w̲̅e̲̅b̲̅ 还是可以正常显示的。...文章中留下的三个问题留到下回分解 参考文章 x是个什么符号?

    87150

    一个有趣的python项目---一个好玩的网站

    github.com/rwv/chinese-dos-games-web git 克隆地址: git clone https://github.com/rwv/chinese-dos-games-web.git 这是一个神奇的项目...,据说,这里的游戏曾伴随了一代人的成长,很多人正是通过这些游戏感受到了电子科技的魅力。...都是一代人满满的童年啊! ? 加载游戏画面,又回到了20世纪90年代的dos ? 又看到小时候的画面了,还记得当时的李逍遥,赵灵儿,林月如,把我狠狠虐了一把!...,它把数据保存在网页的session中,只要不清空缓存就能继续玩。 下面我们看看项目是怎么玩的吧! ?...git clone https://github.com/rwv/chinese-dos-games-web.git 克隆结束之后安装python的包: pip3 install flask 之后我们可以通过终端进入到更目录执行下载命令

    78420

    一个有趣的例子带你入门canvas

    今天,我们前端群问了一个这样的问题,然后就开始了激烈的讨论。 那么下面咱们一起来看看这个问题,这个问题问了两个小问题: 1.如何在 canvas 上绘制多边形2.鼠标怎么选中绘制的某一个图形?...绘制多边形 要绘制一个多边形,多边形图形的基本元素是路径。路径是通过不同颜色和宽度的线段或曲线相连形成的不同形状的点的集合。一个路径,甚至一个子路径,都是闭合的。...我们也能够使用 moveTo()绘制一些不连续的路径。 这个时候你可以想象一下在纸上画东西,笔尖从一个点到另一个点的移动过程。这个过程的模式叫做笔式绘图仪模式。...方案 如果想要快速选中某一个图形,我们能不能对我们的每一个图形有一个对应的 hash,而在鼠标点击的时候,又能够取到这个 hash。...当鼠标点击的时候,在隐藏画布相同的位置,取一个像素点。 而这个像素点的rgb值就是我们要找的 hash。 至此,两个问题已经解答了。

    90510

    一个简洁、有趣的无限下拉方案

    前一点很好理解,我们考虑到性能,不可能将一个长列表(甚至是一个无限下拉列表)的所有列表元素都进行渲染;而后一点,则是本文所介绍方案的核心之一!...先概览下总体思路: 监听一个固定长度列表的首尾元素是否进入视窗; 更新当前页面内渲染的第一个元素对应的序号; 根据上述序号,获取目标数据元素,列表内容重新渲染成对应内容; 容器 padding 调整,模拟滚动实现...; 我们以在页面中渲染固定的 20 个列表元素为例,我们对第一个元素和最后一个元素,用 Intersection Observer 进行观察,当他们其中一个重新进入视窗时,callback 函数就会触发...}); }; 2、更新当前页面渲染的第一个元素对应的序号 (firstIndex) 拿具体例子来说明,我们用一个数组来维护需要渲染到页面中的数据。...相关对比: 实现对比:一个是 Intersection Observer 的监听,来通知子元素离开视窗,只要定量设置父元素 padding 就行;另一个是对传统滚动事件的监听,滚动距离的获取,再进行一系列计算

    1.9K20

    一个有趣的随机生成头像项目

    在这个数字化与社交化日益发展的时代,虚拟形象已经成为我们在线身份的一部分。无论是社交媒体、论坛,还是游戏与虚拟世界中,一个独特、个性化的头像不仅能让你在人群中脱颖而出,还能展现个人风格与品味。...然而,找到一张既能准确表达自己,又具备独特艺术感的头像并不容易。许多人可能不擅长绘画,或者没有足够的时间与资源去定制一款精美的头像。或者想弄一些比较个性沙雕的头像,但是没有灵感。...今天就要分享一个随机头像生成器的开源项目。github的地址如下,https://github.com/Codennnn/vue-color-avatar 目前拥有3.4K 的star 。...若无法访问,请检查防火墙配置 当然,最简单的,你可以直接使用作者部署好的站点。 可以访问:https://vue-color-avatar.leoku.dev/ 来使用。...最后下载下来就完事了 创作不易,如果您觉得这篇文章对你有帮助,不妨给我点个赞,这将是我继续分享优质内容的动力。

    14200
    领券