- 博客(46)
- 收藏
- 关注
原创 Note:重新看PE1,PE2,PE3
PE1Q: 求 1000 以下所有是 3 或 5 的倍数的自然数的和T: 1000简单,但是当数字很大时,考虑 是3的倍数 + 是 5 的倍数 - 15的倍数K: 是3的倍数: 3 + 6 + 9 + 12 + : : : + n = 3 (1 + 2 + 3 + 4 + ::: + n/3) = 3 *(首项+尾项) * n /
2014-02-04 23:52:04
780
原创 <MEMORY>Project Euler NO58
从1开始逆时针旋转,可以得到一个边长为7的螺旋正方形。37 36 3534 33 32 3138 17 16 15 14 13 3039 18 5 4 3 12 2940 19 6 1 2 11 2841 20 7 8 9 10 2742 21 2223 24 25 2643 44 45 46 47 48 49有趣的是奇数的平方数都处于右
2014-02-03 20:16:54
531
原创 <MEMORY>Project Euler NO57
2的平方根可以被表示为无限延伸的分数: 2 = 1 + 1/(2 + 1/(2 + 1/(2 + ... ))) = 1.414213...将其前四次迭代展开,我们得到:1 + 1/2 = 3/2 = 1.51 + 1/(2 + 1/2) = 7/5 = 1.41 + 1/(2 + 1/(2 + 1/2)) = 17/12 = 1.41666...1 + 1/(
2014-02-03 19:43:52
486
原创 <MEMORY>Project Euler NO56
一个googol (10100)是一个巨大的数字:1后面跟着100个0;100100几乎是不可想象的大:1后面跟着200个0。它们虽然很大,但是它们的各位数之和却只有1。考虑形如 ab 的数, 其中 a, b 100,最大的各位和是多少?import java.math.BigInteger;public class Problem56{ public static v
2014-02-03 17:21:18
560
原创 <MEMORY>Project Euler NO55
我们将47与它的逆转相加,47 + 74 = 121, 可以得到一个回文。并不是所有数都能这么快产生回文,例如:349 + 943 = 1292,1292 + 2921 = 42134213 + 3124 = 7337也就是说349需要三次迭代才能产生一个回文。虽然还没有被证明,人们认为一些数字永远不会产生回文,例如196。那些永远不能通过上面的方法(逆转然
2014-02-03 17:15:08
520
原创 <MEMORY>Project Euler NO53
从五个数12345中选出三个数一共有十种方法:123, 124, 125, 134, 135, 145, 234, 235, 245, and 345在组合数学中我们用5C3 = 10来表示.概括来说:nCr =n!r!(nr)!,其中r n, n! = n(n1)...321, 并且0! = 1.n =
2014-02-02 14:32:25
534
原创 <MEMORY>Project Euler NO52
125874和它的二倍,251748, 包含着同样的数字,只是顺序不同。找出最小的正整数x,使得 2x, 3x, 4x, 5x, 和6x都包含同样的数字。import java.util.Arrays;public class Problem52{ public static void main(String[] args) { long start
2014-02-02 14:19:00
436
原创 <MEMORY>Project Euler NO51
通过置换*3的第一位得到的9个数中,有六个是质数:13,23,43,53,73和83。通过用同样的数字置换56**3的第三位和第四位,这个五位数是第一个能够得到七个质数的数字,得到的质数是:56003, 56113, 56333, 56443, 56663, 56773, 和 56993。因此其中最小的56003就是具有这个性质的最小的质数。找出最小的质数,通过用同样的数字置换其中的一部分
2014-02-02 13:51:35
499
原创 <MEMORY>Project Euler NO50
41这个质数,可以写作6个连续质数之和:41 = 2 + 3 + 5 + 7 + 11 + 13这是100以下的最长的和为质数的连续质数序列。1000以下最长的和为质数的连续质数序列包含21个项,和为953.找出100万以下的最长的何为质数的连续质数序列之和。100万以下的哪个质数能够写成最长的连续质数序列?public class Problem5
2014-01-31 22:08:32
446
原创 <MEMORY>Project Euler NO49
1487, 4817, 8147这个序列,每个比前一个递增3330,而且这个序列有两个特点:1. 序列中的每个数都是质数。2. 每个四位数都是其他数字的一种排列。1,2,3位组成的三个质数的序列中没有具有以上性质的。但是还有另外一个四位的递增序列满足这个性质。如果将这另外一个序列的三个数连接起来,组成的12位数字是多少?import java.util.Arrays
2014-01-31 21:53:26
534
原创 <MEMORY>Project Euler NO48
11 + 22 + 33 + ... + 1010 = 10405071317.11 + 22 + 33 + ... + 10001000的最后十位是什么?java BigIntegerimport java.math.BigInteger;public class Problem48{ public static void main(Str
2014-01-31 21:14:17
486
原创 <MEMORY>Project Euler NO47
最小的两个具有两个不同质数因子的连续整数是:14 = 2 715 = 3 5最小的三个具有三个不同质数因子的连续整数是:644 = 2² 7 23645 = 3 5 43646 = 2 17 19.找出最小的四个具有四个不同质数因子的整数。它们之中的第一个是多少?时间过长~~import java.util.Arrays;
2014-01-31 21:12:54
502
原创 <MEMORY>Project Euler NO46
Christian Goldbach 提出每个奇合数都可以写作一个质数与一个平方数的二倍之和:9 = 7 + 21215 = 7 + 22221 = 3 + 23225 = 7 + 23227 = 19 + 22233 = 31 + 212但是这个推测是错误的。最小的不能写作一个质数与一个平方数的二倍之和的奇合数是多少?public class
2014-01-30 16:40:15
502
原创 <MEMORY>Project Euler NO45
三角数,五角数和六角数分别通过以下公式定义:三角数 Tn=n(n+1)/2 1, 3, 6, 10, 15, ...五角数 Pn=n(3n1)/2 1, 5, 12, 22, 35, ...六角数 Hn=n(2n1) 1, 6, 15, 28, 45, ...可以证实 T285 = P165
2014-01-30 16:26:55
417
原创 <MEMORY>Project Euler NO44
求助!!!!这道题不会,用遍历求出的答案 时间太长五角数通过如下公式定义:Pn=n(3n1)/2。前十个五角数是:1, 5, 12, 22, 35, 51, 70, 92, 117, 145, ...可以看出P4 + P7 = 22 + 70 = 92 = P8. 但是它们的差70 22 = 48却不是五角数。找出最小的五角数对Pj 和 Pk,
2014-01-30 15:18:33
483
原创 <MEMORY>Project Euler NO43
1406357289是一个pandigital数,因为它包含了0到9之间每个数字且只包含了一次。此外它还有一个有趣的子串整除性质。令d1表示其第一位数字,d2表示第二位,以此类推。这样我们可以得到:d2d3d4=406 能被 2 整除d3d4d5=063 能被 3 整除d4d5d6=635 能被 5 整除d5d6d7=357 能被 7 整除d6d7d8=572 能被 11 整除d7d8
2014-01-29 15:42:09
412
原创 <MEMORY>Project Euler NO42
三角形数序列中第 n 项的定义是: tn = ½n(n+1); 因此前十个三角形数是:1, 3, 6, 10, 15, 21, 28, 36, 45, 55, ...通过将一个单词中每个字母在字母表中的位置值加起来,我们可以将一个单词转换为一个数。例如,单词SKY的值为19 + 11 + 25 = 55 = t10。如果单词的值是一个三角形数,我们称这个单词为三角形单词。wor
2014-01-29 14:51:53
414
原创 <MEMORY>Project Euler NO41
如果一个数字将1到n的每个数字都使用且只使用了一次,我们将其称其为一个n位的pandigital数。例如,2143是一个4位的pandigital数,并且是一个质数。最大的n位pandigital质数是多少?import java.util.Arrays;public class Problem41{ public static void main(Stri
2014-01-29 14:31:02
487
原创 <MEMORY>Project Euler NO40
将正整数连接起来可以得到一个无理小数:0.123456789101112131415161718192021...可以看出小数部分的第12位是1。如果用dn表示这个数小数部分的第n位,找出如下表达式的值:d1 d10 d100 d1000 d10000 d100000 d1000000public class
2014-01-29 14:11:41
452
原创 <MEMORY>Project Euler NO39
如果p是一个直角三角形的周长,三角形的三边长{a,b,c}都是整数。对于p = 120一共有三组解:{20,48,52}, {24,45,51}, {30,40,50}对于1000以下的p中,哪一个能够产生最多的解?public class Problem39{ public static void main(String[] args) { long sta
2014-01-28 21:07:48
464
原创 <MEMORY>Project Euler NO38
将192与1,2,3分别相乘得到:192 × 1 = 192192 × 2 = 384192 × 3 = 576将这三个乘积连接起来我们得到一个1到9的pandigital数, 192384576。我们称 192384576是192和 (1,2,3)的连接积。通过将9与1,2,3,4和5相乘也可以得到pandigital数:918273645,这个数是9和(1,2,3,4,5)
2014-01-28 19:37:23
445
原创 <MEMORY>Project Euler NO37
3797这个数很有趣。它本身是质数,而且如果我们从左边不断地裁去数字,得到的仍然都是质数:3797,797,97,7。而且我们还可以从右向左裁剪:3797,379,37,3,得到的仍然都是质数。找出全部11个这样从左向右和从右向左都可以裁剪的质数。注意:2,3,5和7不被认为是可裁剪的质数。public class Problem37{ public static
2014-01-28 16:57:09
451
原创 <MEMORY>Project Euler NO36
十进制数字585 = 10010010012 (二进制),可以看出在十进制和二进制下都是回文(从左向右读和从右向左读都一样)。求100万以下所有在十进制和二进制下都是回文的数字之和。(注意在两种进制下的数字都不包括最前面的0)public class Problem36{ public static void main(String[] args) {
2014-01-28 16:37:55
475
原创 <MEMORY>Project Euler NO35
我们称197为一个循环质数,因为它的所有轮转形式: 197, 971和719都是质数。100以下有13个这样的质数: 2, 3, 5, 7, 11, 13, 17, 31, 37, 71, 73, 79, 和97.100万以下有多少个循环质数?public class Problem35{ public static void main(String[] args)
2014-01-28 16:28:06
432
原创 <MEMORY>Project Euler NO34
145 是一个奇怪的数字, 因为 1! + 4! + 5! = 1 + 24 + 120 = 145.找出所有等于各位数字阶乘之和的数字之和。注意: 因为 1! = 1 和 2! = 2 不是和的形式,所以它们不算在内。import java.util.Arrays;public class Problem34{ public static void main(
2014-01-27 16:58:58
392
原创 <MEMORY>Project Euler NO33
分数 49/98 是一个奇怪的分数:当一个菜鸟数学家试图对其进行简化时,他可能会错误地可以认为通过将分子和分母上的9同时去除得到 49/98 = 4/8。但他得到的结果却是正确的。我们将30/50 = 3/5这样的分数作为普通个例。一共有四个这样的非普通分数,其值小于1,并且包括分子和分母都包括2位数。如果将这四个分数的乘积约分到最简式,分母是多少?public class
2014-01-27 16:17:56
417
原创 <MEMORY>Project Euler NO32
如果一个n位数使用了1到n中每个数字且只使用了一次,我们称其为pandigital。例如,15234这个五位数,是1到5pandigital的。7254是一个不寻常的数,因为:39 × 186 = 7254这个算式的乘数,被乘数和乘积组成了一个1到9的pandigital组合。找出所有能够组合成1到9pandigital的乘法算式中乘积的和。提示: 有的乘积数字能够被多个乘法算
2014-01-27 15:48:53
459
原创 <MEMORY>Project Euler NO30
令人惊奇的,只有三个数能够写成它们各位数的四次方之和:1634 = 14 + 64 + 34 + 448208 = 84 + 24 + 04 + 849474 = 94 + 44 + 74 + 441 = 14没有被算作在内因为它不是一个和。这些数字的和是 1634 + 8208 + 9474 = 19316.找出所有能被写成各位数字五次方之和的数之
2014-01-26 15:54:53
446
原创 <MEMORY>Project Euler NO29
考虑 ab 在 2 ≤ a ≤ 5,2 ≤ b ≤ 5下的所有整数组合:22=4, 23=8, 24=16, 25=3232=9, 33=27, 34=81, 35=24342=16, 43=64, 44=256, 45=102452=25, 53=125, 54=625, 55=3125如果将这些数字排序,并去除重复的,我们得到如下15个数字的序列:4,
2014-01-26 15:35:50
405
原创 <MEMORY>Project Euler NO28
原题链接从数字1开始向右顺时针方向移动,可以得到如下的5×5的螺旋:21 22 23 24 2520 7 8 9 1019 6 1 2 1118 5 4 3 1217 16 15 14 13可以算出对角线上数字之和是101.1001×1001的螺旋中对角线上数字之和是多少?public class Project28{ p
2014-01-26 15:18:42
462
原创 <MEMORY>Project Euler NO27
欧拉曾发表过一个著名的二次公式:n² + n + 41这个公式对于0到39的连续数字能够产生40个质数。但是当 n = 40时,402 + 40 + 41 = 40(40 + 1) + 41能够被41整除。当n = 41时, 41² + 41 + 41显然也能被41整除。利用计算机,人们发现了一个惊人的公式:n² 79n + 1601。这个公式对于n = 0 到 79能够
2014-01-26 14:50:49
402
原创 <MEMORY>Project Euler NO26
分子为1的分数称为单分数。分母是2到10的单分数用十进制表示如下:1/2=0.51/3=0.(3)1/4=0.251/5=0.21/6=0.1(6)1/7=0.(142857)1/8=0.1251/9=0.(1)1/10
2014-01-25 20:15:08
446
原创 <MEMORY>Project Euler NO25
以下是斐波那契数列的递归定义:Fn = Fn1 + Fn2, F1 = 1,F2 = 1.那么其12项为:F1 = 1F2 = 1F3 = 2F4 = 3F5 = 5F6 = 8F7 = 13F8 = 21F9 = 34F10 = 55F11 = 89F12 = 144因此第12项,F12,是第一个包含三位数字的项。
2014-01-25 16:28:19
402
原创 <MEMORY>Project Euler NO24
排列是一个物体的有序安排。例如3124是1,2,3,4的一种排列。如果所有的排列按照数值或者字母序排序,我们称其为一个字典序。0,1,2的字典排列有:012 021 102 120 201 2100, 1, 2, 3, 4, 5, 6, 7, 8,9的第100万个字典排列是什么?public class Problem24{
2014-01-24 19:49:11
447
原创 <MEMORY>Project Euler NO23
如果一个数的所有真因子之和等于这个数,那么这个数被称为完全数。例如,28的所有真因子之和为1 + 2 + 4 + 7 + 14 = 28,所以28是一个完全数。如果一个数的所有真因子之和小于这个数,称其为不足数,如果大于这个数,称其为过剩数。12是最小的过剩数,1 + 2 + 3 + 4 + 6 = 16。因此最小的能够写成两个过剩数之和的数字是24。经过分析,可以证明所有大于2812
2014-01-24 18:49:48
401
原创 <MEMORY>Project Euler NO22
文件names.txt (右键另存为)是一个46K大小的文本文件,包含5000多个英文名字。利用这个文件,首先将文件中的名字按照字母排序,然后计算每个名字的字母值,最后将字母值与这个名字在名字列表中的位置相乘,得到这个名字的得分。例如将名字列表按照字母排序后, COLIN这个名字是列表中的第938个,它的字母值是3 + 15 + 12 + 9 + 14 = 53。所以COLIN这个名字的得
2014-01-23 22:00:51
482
原创 <MEMORY>Project Euler NO21
d(n)定义为n 的所有真因子(小于 n 且能整除 n 的整数)之和。如果 d(a) = b 并且 d(b) = a, 且 a b, 那么 a 和 b 就是一对相亲数(amicable pair),并且 a 和 b 都叫做亲和数(amicable number)。例如220的真因子是 1, 2, 4, 5, 10, 11, 20, 22, 44, 55 和 110; 因此 d(2
2014-01-23 20:31:28
420
原创 <MEMORY>Project Euler NO20
算出100!的各位之和。import java.math.BigInteger;public class Problem20{ public static void main(String[] args) { long start = System.currentTimeMillis(); System.out.print("answer: "); bi
2014-01-23 19:54:56
314
原创 <MEMORY>Project Euler NO19
以下是一些已知信息,但是或许你需要自己做一些其他的调查。1900年1月1日是星期一。30天的月份有:9月,4月,6月,11月。此外的月份都是31天,当然2月除外。2月在闰年有29天,其他时候有28天。年份可以被4整除的时候是闰年,但是不能被400整除的世纪年(100的整数倍年)除外。20世纪(1901年1月1日到2000年12月31日)一共有多少个星期日落在了当月的第一天?
2014-01-23 18:27:01
508
原创 <MEMORY>Project Euler NO18
从下面的三角形的顶端开始,向下面一行的相邻数字移动,从顶端到底端的最大总和为23.37 42 4 68 5 9 3也就是 3 + 7 + 4 + 9 = 23.找出从以下三角形的顶端走到底端的最大总和:7595 6417 47 8218 35 87 1020 04 82 47 6519 01 23 75 03 3488 02 77
2014-01-23 18:06:26
502
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人