一道收集优惠券的面试题

2023年最新版自动化测试全套面试题 如果你想获取该文章配套的视频视频教程以及练手的接口。请狠狠点击下方链接,并把所需的资料的文章链接发给我即可领取如果你想获取简历模板+面试技术宝典+求职视频+上千份测试真题,也请狠狠点击下方链接,并把所需的资料的文章链接发给我即可领取。 阅读详情

问题:

一个饭店发行一套优惠券,一套里面总共有 n 张不同的优惠券,顾客每次吃一次,可以随机获得一张优惠券。如果收集齐一套,下次吃饭可以打折。请问:顾客要来多少次才能收集齐一套优惠券?(是不是和小时候吃零食收集刮刮卡的情形是一样的,呵呵)

分析:

问题的难点在于顾客获得的优惠劵可能会有重复。但是,我们可以换一角度思考。

假设顾客第一次来,他一定会得到一张独一无二的优惠券,第二次来的时候,得到的优惠券和上次不重复的概率是 (n-1) / n, 第三次来的时候,得到与上两次不同的概率是 (n - 2) / n,.... ,到第 n 次来的时候,与前 n - 1 次收集到的优惠券不同的概率是 1 / n。 

换句话说,拿到第一张不重复的优惠券需要的次数是 1, 拿到第二张与前一张不同的优惠券需要的次数是 n / (n - 1), 拿到第三张与前两张不同的优惠劵需要的次数是 n /(n - 2), 以此类推,拿到最后一张不重复的优惠券所需要的次数是 n / 1.


所以,总的次数是 1 + n / (n-1) + n /(n-2) + n / (n -3) + ... + n ~= n lg n.


转载请注明出处:http://blog.youkuaiyun.com/beiyeqingteng

Redis系列学习文章分享---第五篇(Redis实战篇--优惠券秒杀,全局唯一id 添加优惠券 实现秒杀下单 库存超卖问题分析 乐观锁解决超卖 实现一人一单功能 集群下的线程并发安全问题) 如果您有任何问题或建议,请随时在评论区留言。在优惠券秒杀系统中,全局唯一ID的生成非常关键,它可以用于标识每个优惠券的唯一性,并防止重复领取或使用。在分布式环境下,需要考虑集群下的线程并发安全问题,可以通过分布式锁等机制来保证并发操作的安全性。利用Redis的原子操作,可以实现高效地生成全局唯一ID,保证其在并发情况下的唯一性和一致性。通过Redis的乐观锁机制,可以解决库存超卖问题,确保每张优惠券在被领取时都是有效的。在高并发情况下,可能会出现库存超卖的问题,即某个优惠券被超卖,导致用户无法正常使用。 阅读详情

相关推荐

优惠券_Collector_Solver

优惠券收集者的问题解决者 此代码使用蒙特卡洛方法来解决不平衡优惠券收集者的问题。 普遍的问题假设每次成功都有相等的发生概率,但这不适用于我的问题。 (在此处了解更多信息: : ) 真的,我只是想能够估计从Warframe的Nightmare Mission Mode收集每个Mod所需的运行量,而Warframe Wiki没有估算值。 战利品表在这里: :

【概率论】优惠劵收集者问题

期望E=事件*事件发生的概率。

2301_79896098的博客 2049

赠券收集问题1

一、 问题定义 二、 数学期望 三、 方差 四、 累积分布函数 五、 概率密度函数

优惠券收集问题

题目:已知盒子中有数量众多的优惠券,一共N种,求 1.集齐N种优惠券,需要收集优惠券个数n的期望? 2.手里有n个优惠券的情况下,种类数的期望?

BeiErGeLaiDe的博客 3484

“支付宝集五福”抽卡概率问题分析1

摘要2019 春节前夕,支付宝如往年一样举办“集五福”活动,在参与的过程中我产生对该问题研究的兴趣,我希望能计算集齐全部 5 种卡片所需次数的数学期望,以及限制

光斑大小控制【ZEMAX操作数】

在使用Zemax优化光学系统时,对成像的聚焦光斑大小进行限制,即弥散斑的大小; 一、RSCE(质心RMS光斑半径):二、RSCH(光线RMS光斑半径):

yh的博客 7868

java优惠券收集问题_收集20个经典的Java面试题

1.什么是线程局部变量?线程局部变量是局限于线程内部的变量,属于线程自身所有,不在多个线程间共享。Java 提供 ThreadLocal 类来支持线程局部变量,是一种实现线程安全的方式。但是在管理环境下(如 web 服务器)使用线程局部变量的时候要特别小心,在这种情况下,工作线程的生命周期比任何应用变量的生命周期都要长。任何线程局部变量一旦在工作完成后没有释放,Java 应用就存在内存泄露的风险。...

weixin_28726391的博客 440

Vivado加上VsCode让你的生活更美好

VsCode与Vivado的灵活使用 引言 ​ 现在大二了,在接触硬件描述语言。Vivado自带的编辑器实在很难用,为了能够“极客”一些,当然是去Google了一下有哪些方法可以取而代之。 ​ 网络上的答案大同小异,基本上都是用的Sublime Text.(我的学长们也几乎都是) 平时码代码的过程中,我习惯与使用VsCode,尤其是在微软收购GitHub之后,Code 简直就是神器了。于是乎…一个...

qq_39498701的博客 10万+

Java面试题(11) 整理Java面试题及参考答案

下面是最近收集的一些Java面试题: Java面试题(01) Java面试题(02) Java面试题(03) Java面试题(04) Java面试题(05) Java面试题(06) Java面试题(07) Java面试题(08) Java面试题(09) Java面试题(10) Java面试题(11) Java面试题(12) Java面试题(13) Java面试题(14) Java面试题(15) J...

郑清 8820

educoder 5-3Python 计算思维训练——地图模拟

任务描述 本关任务:利用 Python 实现动画观察近 30 天 4.5 级以上地震发生情况。 相关知识 为了完成本关任务,你需要掌握:1.如何用 Python 从网络获取所需数据;2.如何用 Python 绘制地图 从网络获取数据 URL 处理模块(库) 在这里插入代码片 import urllib.request as req 创建一个表示远程 url 的类文件对象 urllib.urlopen(" ") 如同本地文件一样读取内容 print data的输出结果: 摘取动画所需数据

Manonll的博客 2488

Flowable任务节点动态预测:基于任务ID与参数获取下一节点及候选分配策略

本文深入探讨了Flowable工作流引擎中任务节点动态预测功能的实现。通过解析任务ID与运行时参数,模拟流程执行路径,精准预测下一节点及候选用户/组集合,从而提升用户体验与系统透明度。核心在于利用自定义命令实现表达式求值,并深度解析候选者分配策略,确保预测结果与实际流程执行一致。

nnn11的博客 742

【测试面试题】14题常见APP测试面试题(参考答案)

这份面试题不难,都是一些基础题。 先上一个面试题汇总图,建议大家可以先思考下如果是自己能不能回答全,再去对照看参考答案。

主要分享测试的学习资源,帮助快速了解测试行业,帮助想转行、进阶、小白成长为高级测试工程师。 2693

深入解析ffmpeg编码错误:avcodec_send_frame()返回-22的排查与修复

本文深入解析FFmpeg编码中avcodec_send_frame()返回-22(AVERROR(EINVAL))错误的根本原因与系统排查方法。核心问题通常在于编码器未正确打开或上下文传递错误。文章提供了从检查编码器查找、确认avcodec_open2()调用,到验证上下文传递的完整修复指南,并附有可运行的代码示例,帮助开发者快速定位并解决这一常见编码障碍。

weixin_28049429的博客 390

【软件测试面试】全网最全,自动化测试面试题总结大全(付答案)

面试题1:你有没有做过自动化测试?答:我在xx项目中实施了web自动化测试,我们项目中搭建自动化测试框架技术:python+selenium+pytest/unittest+ddt+jenkins,然后用的POM分层的模式(面向对象思想),数据驱动使用的是excel+ddt的驱动模式,我在这个自动化测试实施的项目里所负责的那些模块那些测试用例的自动化代码编写我在xx项目中实施了接口自动测试平台搭建,技术栈:python+django+pytest+vue+ddt+jenkins。

2301_76643199的博客 860

【软考高级架构】论文范文12——论生成式AI在软件开发中的应用与挑战

随着生成式AI技术的跨越式发展,以大语言模型为代表的生成式AI正在深刻改变软件开发的传统模式。在代码生成、测试构造、文档编写等环节,生成式AI展现出显著的效率提升潜力,但其应用也面临着代码质量不可控、安全漏洞植入、版权合规等严峻挑战。本文以笔者主导的某大型金融企业智能研发辅助平台建设项目为案例,围绕生成式AI在软件开发中的应用实践与应对挑战的策略展开论述。笔者担任系统架构师,负责平台架构设计、模型选型、质量保障机制及安全防线构建。

qq837993702的博客 276

金三银四!风控建模岗面试题库大全:从理论到实战避坑指南

风控建模面试大全

阿黎逸阳的博客 767

【模拟篇】AI产品经理的面试题——产品问题1

此刻还算是个互联网的初学者,我从应试角度,整合了全网有关的产品经理有关的面试题,下面就一起熟悉一下大佬们都从哪些方面入手考察我们吧!

2401_85375151的博客 1170

一根同轴线,真的扛得住 4K 吗? ——从摄像头带宽算起,聊透车载 SerDes 接口选型

如果你记住这三句话,这篇文章就值了:🎯摄像头带宽 = 分辨率 × 位深 × fps × 开销4K RAW 摄像头 ≈ 3.7Gbps,是现实不是理论SerDes 选型,宁可多留 20%,不要刚刚好。

weixin_43199439的博客 193
上一篇: 平均需要扔多少次硬币才能够得到连续2个正面
下一篇: O(N lgK) 时间内合并K个有序链表
beiyetengqing
博客等级 码龄14年 148粉丝 169原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值