Tag: 数学

ChatGPT在数学和逻辑方面表现不佳

一题简单的数学逻辑题: 一口井10米深, 一只青蛙在井底, 它白天往上爬3米, 晚上往下掉2米, 请问青蛙几天能爬出去? ChatGPT 不在行这种题, 简直就是糊说八道 睁眼睛说瞎话. 现在的人工智能基本上是基于大数据+机器学习也就是模式识别 Pattern Matching, 海量的数据进行训练, 如果数据本身就有问题(比如错误或者有偏好Bias), 那么通过学习得到的答案就有可能有问题. 这题的正确答案是8天, 青蛙7天爬7米, 第8天的时候往上3米就上了10米了. **ChatGPT: 这道题可以用数学模型来解决. 设青蛙爬出井口需要x天, 则: 第一天: 青蛙爬了3米, 距离井口还有 10 – 3 …

欧几里得定理 (Euclid’s theorem): 无限素数(质数)的证明

欧几里得定理 (Euclid’s theorem): 无限素数的证明 质数定义为只能被1和它本身整除的正整数, 质数有无穷多个的证明如下: 证明: 假设质数有有限个, 设它们为p1,p2,p3,…,pn, 则它们的乘积N=p1p2p3…pn, 由于N是一个正整数, 则N+1也是一个正整数, 而N+1不能被p1,p2,p3,…,pn整除, 因此N+1必定是一个质数, 这与假设矛盾, 因此质数有无穷多个. 素数有无限个的证明被称为欧几里德定理. 欧几里得定理指出, 如果你采用任何有限的素数集, 那么你总能找到一个不在该集合中的素数. 为了证明这个定理, 我们将使用数学上的反证法. 假设有一个有限的素数集, P = {p1, p2, p3, …, …

C++ 编程练习题 – 找出第三大的数

题意: 给出一个数组, 求第三大的数字是多少, 重复的数字并不算在内, 比如 第3大的数字是1 而不是 2. Using std::set set 是集合, 是有序的(从小到大), 集合中不包含重复的元素, 所以我们可以遍历数组并把数字添加到集合中. 在这过程中, 如果集合大小大于三个, 就把最小的元素删除. 我们不能直接按照索引的访问集合中的元素, 但是我们可以用迭代器 rbegin() 和 begin() 来访问集合中最大和最小的元素. class Solution { public: int …

谷歌面试扔鸡蛋问题

这题据说是 GOOGLE的面试题, 但是却真实的被一些软件公司拿来考应聘者. 比如我在前几年面试剑桥的博通公司/Broadcom, 在第二轮也被问到了这个问题. 题意是: 给你两个鸡蛋, 有个100层楼, 你可以把鸡蛋从任意一层楼扔下, 鸡蛋可能破, 也可能不破, 如果不破的话, 你可以继续用这个鸡蛋扔. 你需要用这两个鸡蛋来试出鸡蛋会破的最小楼层高度. 这两个鸡蛋一模一样. 问你采用什么策略可以使最坏情况下的尝试次数最少? 什么是最差情况? 如果你只有一个鸡蛋, 那么你最坏需要100次(需要从1层楼开始测试)才可以得到结论. 最直接的做法就是从第一层开始试, 然后第二层以此类推, 但是这种方法只需要用到1个鸡蛋即可. 如果第N层鸡蛋没碎但是第N+1层碎了, 答案就是N. 这种情况下最坏需要尝试100次. 如果我们在第50层扔呢? 如果鸡蛋碎了, 那么答案就在第1到第49层, 反之答案就在第51到第100. …