存档

文章标签 ‘数论’
1月
04

Project Euler个人解答(Problem 61~70)

pe_banner_light好吧,我又来写这种没人看的东西了。。。。

本来说好乖乖写论文的。。但是我一无聊,就想找人打麻将,一旦找不到人打麻将。。我就去刷Euler题,然后刷着刷着。。。有人我搞出10道题了。。。好,这次说好了。。。乖乖写论文。。。而且我已经预感到后面的题好像继续变难了。。所以决定论文写完之前,不再碰Euler题了。。。再做剁手! 阅读全文…

12月
18

Project Euler个人解答(Problem 21~30)

pe_banner_light好吧,继续,第三篇。。。

我的渺小的愿望就是在有生之年赶上官网进度的80%。。。。

题目翻译摘自Project Euler 中文翻译站

Problem 21:Amicable numbers

Let d(n) be defined as the sum of proper divisors of n (numbers less than n which divide evenly into n).
If d(a) = b and d(b) = a, where a ≠ b, then a and b are an amicable pair and each of a and b are called amicable numbers.

For example, the proper divisors of 220 are 1, 2, 4, 5, 10, 11, 20, 22, 44, 55 and 110; therefore d(220) = 284. The proper divisors of 284 are 1, 2, 4, 71 and 142; so d(284) = 220.

Evaluate the sum of all the amicable numbers under 10000.

阅读全文…

12月
16

Project Euler个人解答(Problem 1~10)

pe_banner_light

写在前面:

毅然决然决定开这个坑!!好吧,本文主要为个人做笔记用,也可以方便大家交流,但是做题时为了节省时间,代码写得有些乱,思路有时也比较粗暴,方法和变量命名请不要吐槽。。我看过讨论版上有很多精彩的方法,但是这里只做一个自己的笔记用而已!!

题目翻译摘自Project Euler 中文翻译站,特此感谢,虽然我做题的时候都是看英文的。。

另外,题目里面有些数学上的东西,比如说平方那些,我就懒得修改了。。看得懂就行。 

再另外,虽然我一般的习惯是不分P来写博客,也就是说一个主题就开一篇,比如我以前写的所有的笔记性质的博客,全是一篇超长的,但是有人跟我说这样看起来挺累的,所以我也就决定分一下P,正好博客搬家,水一下数量给搜索引擎看。。。而且,被我搞到现在每一道题的解答的格式有点复杂,所以也是为了保险起见,我还是分一下P吧,不然哪一天WP抽风了,一打开修改后全部格式全乱了就神作了。。。老师教导我们,鸡蛋不要放在一个篮子里!!

前言部分就这么多吧~每10题1P,前面30到40题都是超级简单的。。。 阅读全文…

11月
22

互质数倒数乘积之和の研究【算法优化向】

pe_banner_light上周开始一直在Euler Project上面刷题,玩得不亦乐乎,那种面对千奇百怪的问题,可以用自己手边的各种工具来“玩弄”的感觉真是让人欲罢不能,其实手头上也就4套工具,C++,Python,Matlab,Mathematica,主要用得最多的也就Mathematica,Python。

好吧,讲正事,上周遇到一道题,可算把我两天给送进去了。。。。

题目链接可以参见这里,翻译过来是这样的:

对于任意整数M,我们定义R(M)是符合下面条件的整数p,q的乘积的倒数1/(p·q)的和,
1.1≤p<q≤M
2.p+q≥M
3.p和q互质
然后我们定义S(N)表示R(i)的和,2≤i<N

求:S(107)精确到小数点后4位

我开始用python试测了一下这个暴算的复杂度,直接跪了,所以我马上转战C++。。

首先我们可以根据题目表面要求写出第一套可以预知不可能成功的程序: 阅读全文…