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

几道有趣概率

昨晚睡觉前刷朋友圈,看到有朋友转了一篇叫做《和上帝一起掷骰子》文章,里面提到了很多概率有关问题,不少经过计算得出概率都与人第一看上去产生直觉大相径庭。所以,人类直觉往往是靠不住。...那么他真的是携带者可能性是多大? 这里,我们不考虑各种其他条件。看上去5%误检率是很低。但其实,这人真正携带hiv概率只有1.96%。...那么那辆车是蓝色概率有多大? 按理说,眼见为实,八成不会错。但那车是蓝色概率仅有41.38%。...直觉上似乎觉得,你生几个小孩,每个小孩是男孩概率不都是1/2吗?这跟你是不是星期二生有啥关系啊!但答案是13/27。 看到这里时候,我手机没电了。于是就在床上闭着眼睛算。...通过程序枚举得到,其中有一个周二出生男孩情况是27种,这27种中又是两个男孩情况是13种。很暴力地得到了答案。 嗯,我觉得今天这篇文章阅读量应该不大。

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

有趣算法~单调栈

这是无量测试之道第195篇原创 在刷 LeetCode 时候,每次遇到精彩题解都会感叹数据结构伟大,通过巧妙地设计,能够非常清晰明了解决问题。...和 OI 题目,如 RQNOJ 队列等【来源于百度百科定义】 作用 可以以 O(1) 时间复杂度得知某个位置左右两侧比他大(或小)位置,当你需要高效率获取某个位置左右两侧比他大(或小...)位置时候就可以用到单调栈。...由于单调栈满足从栈底到栈顶元素对应温度递减,因此每次有元素进栈时,会将温度更低元素全部移除,并更新出栈元素对应等待天数,这样可以确保等待天数一定是最小。...,括号内数字表示下标在温度列表中对应温度。

28510

一道有趣树状数组

有趣树状数组题目 Every year, Farmer John's N (1 <= N <= 20,000) cows attend "MooFest",a social gathering of...两头牛之间通讯花费为max(ai,aj)*dis。两牛音量最高值 * 两牛距离,求所有牛之间交流花费。 暴力的话就是O(n^2)。题目数据这样子搞肯定超时。那么我们可以想想数据结构来优化。...可以想到,我们对每对牛进行处理时候,我们优先考虑是音量大那头牛。那么我们从音量小牛开始算起。先按音量排个序。...前面的牛距离总和sumfront为当前牛位置 * 在前面的牛个数(音量比当前牛小)减去到当前牛累计位置之和。...sumlast计算很巧妙,用已经遍历过前缀和(音量比当前牛小,代码中用total表示)减去当前牛前面的所有牛位置之和再减去当前位置 * 右边个数(这里包括它本身)`。

46000

JAVA有趣移位操作

有哪些容易被遗漏细节? 上次介绍了JAVA有趣位运算,知道了位运算是直接对一个整形二进制位进行操作,效率上比起加减乘除高不少,因此常运用在对性能很敏感场景。 今天介绍在二进制下移位操作。...此外,补码与原码相互转换,其运算过程是相同,不需要额外硬件电路。 JAVA中也一样,存储和移位操作都是补码,正数时都一样,负数时就要注意了。...另一个需要注意地方,由于Java只存储补码,正数补码和原码相同先不管,负数补码会把原码0变成1,所以负数左移位时,移出去最高是1,后面怼上来一般也是1(没到极限),所以还是负数。...11111111111111111111111111111100 (符号位除外,其余取反) // 补码: 11111111111111111111111111111101 (反码+1) // Java...无符号右移会把负数变成正数 没有无符号左移 位移超过JAVA基本类型位数后,等同于位移取模后位数

1.5K30

插播:一道有趣程序 (中)

在上一期中,F老师遇到了一个有意思题目,在小T同学帮助下得到了答案。 F老师把小T同学送走以后,思考了以下几个推广问题: 1....如果机器人运行轨道是环形,环周长步数为X,这种算法最坏情况下,两个机器人需要多少个周期才能相遇? 2....如图,机器人A和机器人B空降在一个环形离散轨道上,轨道步数为X,两个机器人距离为Y。 由于轨道为环形,从另一个方向看,两个机器人之间距离是(X-Y)。...执行结果是,一开始两个机器人以相等速度(进二退一),在轨道上互相追逐对方。...由于我们设定条件是B发现了A踪迹,才从进二退一前进方式改为全速前进,也就是说,A追上B时,是没有走完整个环形轨道。 因此,我们得到了结论: X > 3Y-1时,A可以追上B。

28630

插播:一道有趣程序 (下)

在上期中,F老师分析出了扩展1漏洞和答案。那么,我们再来看看扩展2和3: 2....开放问题:我们把问题扩展到二维平面,并为机器人增加两条指令:up (向上走),down (向下走),在两个机器人无法通信前提下,有没有办法让两个机器人相遇?...让我们在坐标轴上标出两个机器人可能空降位置: 可见,这个问题我们可以转化为原问题,只需要规定机器人行走路线—— 如图,机器人沿着橙色箭头走,其中,走过实线经过点则执行mark指令记录坐标,而走过虚线经过点则不记录坐标...我们发现,由于我们可以将机器人路径从二维转换为一维,问题是有解。 再让我们回到问题2。...问题2不可解原因是,X和Y坐标完全随机,路径是无法从二维转换为一维——因此无法编制程序,让两个机器人运行相同程序还可以相遇。 那么,问题3程序,你们知道怎么写了吗?

39830

插播:一道有趣程序 (上)

如果在一维整数数轴上,随机空降两个机器人,并且固化了相同由这四条指令构成程序,那么,如何编写这个程序,使得两个机器人能够相遇?...F老师正准备回答小T,顺便跟妹子炫耀一下自己学过“阿喀琉斯永远追不上乌龟”“芝诺悖论之追龟辩”,突然,大脑中一道灵光闪过—— 如果机器人P看见机器人Q标记时,加速追赶呢?...虽然机器人没有加速追赶指令,但如果让前面的机器人减速走呢? F老师想到了爷爷讲过故事—— 在淮海战役中,解放军某部奉命追击国民党军黄维兵团。...这样,被追击者执行以下循环: 走两步 回退一步 做标记 由于被追击机器人不可能发现追击者标记,它会一直执行这个循环。...F老师痛定思痛,决定把这道做改造: 如果机器人运行轨道是环形,环周长步数为X,这种算法最坏情况下,两个机器人需要多少个周期才能相遇?

28730

JAVA有趣位运算

一起来感受它们神奇吧~ 当我们看一些源码时候,经常会看到诸如 &、|、^、~ 符号,这些就是位运算符。...位运算是直接对一个整形二进制位进行操作,效率上比起加减乘除高不少,因此常运用在对性能很敏感场景。...& 与运算 在二进制格式下,将两个数每一位(1或0)分别做与运算(1&1=1,其它=0),得到一个新二进制数。...可以看做一个三位二进制数,每一位分别表示一种权限开启与否(1开启,0关闭),通过或运算组合就得到了不同权限组合。 所以最高权限就是7,即二进制“111”,拥有读、写、执行全部权限。...= * 4 1 0 0 */ System.out.println(2 ^ 6); } } // 输出: 4 异或有个有趣特性

83810

一次饶有趣CTF注入

2021.2.9 好久没有玩LOL了,今天晚上在无限火力模式大杀四方时候,朋友突然发来一道CTF,正好好久没做CTF了,拿来练练手。...you are l'] ........ a-XA d-Xw m-aA i-ZA n-aQ 对于admin用户名编码就应该是 XAXwaAZAaQ 正当我觉得这竟然如此简单之时...1 or 1=1#,正准备用编码替换时,发现刚刚爆出来编码表中,并没有空格编码!...,此应该还有非预期解,目前有17人做出来了,而且此环境貌似权限较高,允许load_file读取文件,看了下数据库路径,于是猜测了一下web环境路径,一下子就读到了主页文件。...还能读敏感数据文件 总结: 实在太菜了,写脚本没法看,希望能够继续提升技术,赶紧把自己GUI工具写出来。

27510

原创 | codeforces 1419D2,有趣思维

今天选择题目是codeforces contest 1419D2,难度也不算很大,也是典型思维。...这是因为这道出题人给了两个版本,一个Easy版和一个Hard版。 废话不多说,我们来看题目。...题解 在分析问题之前,我们先来说说这道Easy版本和Hard版本区别,区别只有一个地方。就是在Easy版本当中,所有冰激凌价格均不相等,而在Hard版当中去掉了这个限制。...,这道不算很难,也没有太多弯弯绕,就是需要我们冷静下来仔细把这些变量之间关系以及出现问题思考清楚。...这也是我们算法能力当中很大一部分,比如面试时候当我们遇到问题卡住时候,就非常需要这样固定思维模式。希望大家好好体会一下这道思考过程,领会这种分析问题解决问题思考过程。

96310

有趣Java分形绘制

换句话说,较小分支通过放大适当比例后可以得到一个与整体几乎完全一致花簇。因此我们可以说西兰花簇是一个分形实例。...(i)分形集都具有任意小尺度下比例细节,或者说它具有精细结构。 (ii)分形集不能用传统几何语言来描述,它既不是满足某些条件轨迹,也不是某些简单方程解集。...(v)在大多数令人感兴趣情形下,分形集由非常简单方法定义,可能以变换迭代产生。...用java写分形时,不同图形根据不同画法调用递归来实现,如: 科赫曲线: 1 public void draw1(int x1, int y1, int x2, int y2,int...4、一直重复,直到无穷,所画出曲线叫做科赫曲线。 小结:分形是个很好玩东西,根据自己奇妙想象可以画出很多很好看图形,不仅仅是已经存在,你可以创造出属于你自己图形!

54520

有趣】这段java太古怪

纯纯正正java代码,class为XJJjava源码,执行后打印小姐姐我爱你。 ? 还是不信?自个儿拷贝下去执行一下。不过,IDEA是会报错,用命令行哦。 好隐晦表白方式,是暗恋么? ?...其实没什么神奇,我们不过是将正常源代码翻译成了unicode编码方式。就是这段java代码。...我要将我java项目,全部编码成这种方式,然后传到github,嘿嘿。能编译但不可读,比base64更冷门。 所以以下几行python代码诞生了(仅用于python3): #!..., 'w' , encoding='utf-8') as f: f.write(sb)print(java) 在命令行中执行以下命令,将会将指定目录(test)中所有java文件翻译成我们所想要.../test | grep \\.java$ | xargs -I '{}' python3 uni.py {} 是不是很简单? 那改完java文件怎么恢复呢?

47730

java完善程序_JAVA 程序

参考链接: 用于计算商数和余数Java程序 摘抄自:http://www.cnblogs.com/forlina/archive/2011/08/03/2126292.html1.完成数组int[]...9.输入一个整数,求这个整数中每位数字相加和  10.编写一个java应用程序,要求如下:  (1)声明一个String类变量并初始化值“Hello World”。  ...14.程序功能:求能被3整除且至少有一位数字为5三位数个数。  15.程序功能:求三位奇数中,个位数字与十位数字之和除以10所得余数是百位数字个数。  16.解百马百瓦古。...57.程序功能:将50元兑换成5元、2元和1元方法(每种面额不能为0)种数。  58.程序功能:某试卷由26个问题组成,答对一题得8分,答错一扣5分。...今有一考生虽然回答了全部26个问题,但所得总分为零,问他错答多少

1.6K20

记录一道有趣算法——图转换与spfa

题目的来源 先来说说题目的来源,这是帮外国留学生做一个作业题目,其实很多时候我都会先去chegg这个相当于外国作业帮地方搜,要是没有再自己做,一般也学不到啥,但是今天遇到一个搜不到又不得不做,和同学们请教后也是终于明白了...题目 嗯我们先贴一下英文版和我翻译后中文版题目吧,内容确实蛮长,我会尽可能用简单方式让不太了解其中定义朋友们也看懂。...中文版本: G = (V, E)是一个有向加权图(边权重允许是负)。对于任何边S⊂E子集,我们用G-S=(V,E-S)表示去除S所有边图G。...这个函数就是可以帮你算G’这个DAG图里面,一个点到另一个点距离,那我们现在想法就是借助这个函数,利用x和y在去掉边(a,b)后G’图中距离,来得到原图G中距离,这是我们思路,但是空想我们很难受...,0和7之间距离计算需要用0到2距离加上2到3距离加上3到7距离,来计算。

29910

漫画:六九式是一道简单有趣算法(开车...)

(越单纯,越幸运) 今天是小浩算法 “365刷计划” 第94天 。69式是一种。。。咳咳,六九问题是一道很有趣算法。嗯,不服来辩。...01 PART 六九问题 注意,num 每一位上数字都是 6 或者 9 。 1323. 6 和 9 组成最大数字 给你一个仅由数字 6 和 9 组成正整数 num。...//java class Solution { public int maximum69Number (int num) { String s = num + "";...03 PART 这道考啥 ? 写出上面的答案,大概率是被面试官锤了。那这道到底是考察我们什么呢? ? 大家可以看到,这是一道数学。所以我们需要用数学方法来进行求解。...//java class Solution { public int maximum69Number(int num) { if (num / 1000 == 6) {

1.2K20

一次Java内存泄漏调试有趣经历

接下来,我将讲述一系列最近在我们一个应用上犯过这种错误。最有意思是,一开始迹象揭示问题,与实际发生问题完全不同。 在一个凄凉午夜 午夜刚过,我就被一条来自监控系统警报吵醒了。...没人知道当时发生了什么,服务表现非常怪异。突然间,我想到了什么。Java 服务表现怪异主要根源是什么?当然是垃圾回收。 为了应对目前这种情况发生,我们一直打印着 GC 日志。...我们应用在索引过程中会产生大量短生命周期对象,因此一些过早提升是正常,但是不应该如此严重。当应用产生大量短生命周期对象时,能想到第一件事就是简单增加新生代空间。...他是位很知名 Java 性能专家,我碰巧在 Allegro 举办 Devoxx 会议训练课程里认识了他。...我们没有背压事实足以中断这个系统,但是直到我们解决了内存泄漏问题后,它才浮现。 我希望我们这个有趣经历,能在你解决自己遇到性能问题时发挥一些作用。

69430
领券