8 Aug

CreaWriter,惬意创作!

最近打算记录一下过去生活的点点滴滴,于是便起了要找一个写作软件的想法。为什么呢?像Word之类的软件的确可以很完美地完成文档编辑的工作,可是写作并不是写论文,我想要的是一个能够让我有写作的惬意之感的软件,这显然是Word这类“巨无霸”所不能胜任的。上网搜索了一下,找到一个还算满意的软件——CreaWriter

CreaWriter_1

CreaWriter_1

点击阅读全文...

26 Sep

数学基本技艺(A Mathematical Trivium)

这是Arnold给物理系学生出的基础数学题。原文是Arnold于1991年,在Russian Math Surveys 46:1(1991),271-278上发的一篇文章,英文名叫 A mathematical trivium,这篇文章是有个前言的,用两页纸的内容吐槽了1991年的学生数学学得很烂,尤其是物理系的。文后附了100道数学题,号称是物理系学生的数学底线。

这是给物理系出的数学题,所以和一般的数学竞赛题目不同,没太多证明题,主要就是计算和解模型,而且还有不少近似估算的,带有明显的物理风格。虽然作者说这是物理系学生数学的底线,但即使对于数学系的学生来说,这些题目还是有不少难度的。网络也有一些题目的答案,但是都比较零散。在这里与大家分享一下题目。什么时候有时间了,或者刚好碰到类似的研究,我也会把题目做做,与各位分享。希望有兴趣的朋友做了之后也把答案与大家交流呀。

1

1

点击阅读全文...

27 Jun

Project Euler 454 :五天攻下“擂台”

进入期末了,很多同学都开始复习了,这学期我选的几门课到现在还不是很熟悉,本想也在趁着这段时间好好看看。偏生五天前我在浏览数学研发论坛的编程擂台时看到了这样的一道题目

设对于给定的$L$,方程
$$\frac{1}{x}+\frac{1}{y}=\frac{1}{n}$$
满足$0 < x < y \leq L$的正整数解共有$f(L)$种情况。比如$f(6)=1,f(12)=3,f(1000)=1069$,求$f(10^{12})$。

这道题目的来源是Project Euler的第454题:Diophantine reciprocals III(丢潘图倒数方程),题目简短易懂,但又不失深度,正符合我对理想题目的定义。而且最近在学习Python学习得不亦乐乎,看到这道题目就跃跃欲试。于是乎,我的五天时间就没有了,而且过程中几乎耗尽了我现在懂的所有编程技巧。由于不断地测试运行,我的电脑发热量比平时大了几倍,真是辛苦了我的电脑。最后的代码,自我感觉已经是我目前写的最精彩的代码了。在此与大家共享和共勉~

上述表达式是分式,不利于编程,由于$n=\frac{xy}{x+y}$,于是上述题目也等价于求$(x+y)|xy$(意思是$x+y$整除$xy$)的整数解。

点击阅读全文...

22 Jul

初试在Python中使用PARI/GP

BoJone很喜欢Python,也很喜欢数论,所以就喜欢利用Python玩数论了。平时也喜欢自己动手写一些数论函数,毕竟Python支持大整数高精度运算,这点是非常好的;但是,在很多实际应用中,还是希望能有一个现成的数论函数库来调用。之前尝试过数学研发网的HugeCalc库,但是由于各种不熟悉不了了之。后来论坛上的无心老兄推荐了PARI/GP,小试一下,居然在Python上成功调用了。以后再也不用担心Python上的数论计算问题了,呵呵~

点击阅读全文...

9 Aug

素数之美2:Bertrand假设的证明

有了上一篇文章的$\prod\limits_{p\leq n}p < 4^{n-1}$的基础,我们其实已经很接近Bertrand假设的证明了。Bertrand假设的证明基于对二项式系数$C_n^{2n}$的素因子次数的细致考察,而在本篇文章中,我们先得到一个关于素数之积的下限公式,然后由此证明一个比Bertrand假设稍微弱一点的假设。最后,则通过一个简单的技巧,将我们的证明推动至Bertrand假设。

二项式系数的素因子

首先,我们考察$n!$中的素因子$p$的次数,结果是被称为Legendre定理的公式:

$n$中素因子$p$的次数恰好为$\sum\limits_{k\geq 1}\left\lfloor\frac{n}{p^k}\right\rfloor$。

证明很简单,因为$n!=1\times 2\times 3\times 4\times \dots \times n$,每隔$p$就有一个$p$的倍数,每隔$p^2$就有一个$p^2$的倍数,每隔$p^3$就有一个$p^3$的倍数,每增加一次幂,将多贡献一个$p$因子,所以把每个间隔数叠加即可。注意该和虽然写成无穷形式,但是非零项是有限的。

点击阅读全文...

19 Sep

Cantor-Bernstein 定理(给出双射!)

学过集合论的朋友应该会知道,按照定义,判断两个集合的“势”相同的最直接的方法就是给出这两个集合之间的一个双射。然而,这样的双射往往不容易想到,比如

请给出一个$[0,+\infty)$到$(0,+\infty)$的双射

但是,直观地看,这两个集合的势一定是相当的,而且这两个集合之间的双射有无穷多个。然而,大多数的我们却很难想出一个双射来。当我们看到构造出来的双射时,第一反应往往是:这样的证明是怎么想到的!?比如,上述问题的答案之一是:

点击阅读全文...

30 May

【备忘】维基百科与DNSCrypt

中文维基百科的域名zh.wikipedia.org于5月19日被关键字屏蔽和DNS污染,目前从中国已无法访问中文维基百科,中文维基百科的域名也无法解析出正确的IP地址,而英文维基百科目前未受影响,可以正常访问。

来自“月光博客”:http://www.williamlong.info/archives/4240.html

类似的新闻还有:http://www.freebuf.com/news/68011.html

点击阅读全文...

2 Jul

用Pandas实现高效的Apriori算法

最新更新:《用Numpy实现高效的Apriori算法》

最近在做数据挖掘相关的工作,阅读到了Apriori算法。平时由于没有涉及到相关领域,因此对Apriori算法并不了解,而如今工作上遇到了,就不得不认真学习一下了。Apriori算法是一个寻找关联规则的算法,也就是从一大批数据中找到可能的逻辑,比如“条件A+条件B”很有可能推出“条件C”(A+B-->C),这就是一个关联规则。具体来讲,比如客户买了A商品后,往往会买B商品(反之,买了B商品不一定会买A商品),或者更复杂的,买了A、B两种商品的客户,很有可能会再买C商品(反之也不一定)。有了这些信息,我们就可以把一些商品组合销售,以获得更高的收益。而寻求关联规则的算法,就是关联分析算法。

啤酒与尿布

啤酒与尿布

啤酒与尿布

关联算法的案例中,最为人老生常谈的应该是“啤酒与尿布”了。“啤酒与尿布”的故事产生于20世纪90年代的美国沃尔玛超市中,超市管理人员发现“啤酒与尿布两件看上去毫无关系的商品会经常出现在同一个购物篮中”。经过分析,原来在美国有婴儿的家庭中,一般是母亲在家中照看婴儿,年轻的父亲前去超市购买尿布。父亲在购买尿布的同时,往往会顺便为自己购买啤酒,这样就会出现啤酒与尿布这两件看上去不相干的商品经常会出现在同一个购物篮的现象。因此,沃尔玛尝试将啤酒与尿布摆放在相同的区域,让年轻的父亲可以同时找到这两件商品。事实是效果相当不错!

点击阅读全文...