欧拉计划大合集
Problem #1 Multiples of 3 or 5
Problem Description
If we list all the natural numbers below $10$ that are multiples of $3$ or $5$, we get $3, 5, 6$ and $9$. The sum of these multiples is $23$.
Find the sum of all the multiples of $3$ or $5$ below $1000$.
Chinese / 3 或 5 的倍数
如果我们列出所有小于 $10$ 的 $3$ 或 $5$ 的倍数,我们会得到 $3、5、6$ 和 $9$。这些倍数的和是 $23$。
求所有小于 $1000$ 的 $3$ 或 $5$ 的倍数之和。
Solution
枚举每个数即可,答案为 。
Code
C++
1 |
|
Python
1 | ans = 0 |
Wolfram Language
1 | answer = 0 |
Problem #2 Even Fibonacci Numbers
Problem Description
Each new term in the Fibonacci sequence is generated by adding the previous two terms. By starting with $1$ and $2$, the first $10$ terms will be: $$1, 2, 3, 5, 8, 13, 21, 34, 55, 89, \dots$$
By considering the terms in the Fibonacci sequence whose values do not exceed four million, find the sum of the even-valued terms.
Chinese / 偶斐波那契数
斐波那契数列中的每个新项都是通过将前两项相加而生成的。从 $1$ 和 $2$ 开始,前 $10$ 项分别是: $$1, 2, 3, 5, 8, 13, 21, 34, 55, 89, \dots$$
考虑斐波那契数列中值不超过四百万的项,求其中为偶数的项之和。
Solution
也是直接模拟斐波那契数列即可,答案为 。
Code
C++
1 |
|
Problem #3 Largest Prime Factor
Problem Description
The prime factors of $13195$ are $5, 7, 13$ and $29$.
What is the largest prime factor of the number $600851475143$?
Chinese / 最大质因子
$13195$ 的质因子是 $5、7、13$ 和 $29$。
数字 $600851475143$ 的最大质因子是多少?
Solution
枚举给定数的所有质因子即可,这里使用了 Miller–Rabin 素性测试。答案为 。
Code
C++
1 |
|
Problem #4 Largest Palindrome Product
Problem Description
A palindromic number reads the same both ways. The largest palindrome made from the product of two $2$-digit numbers is $9009 = 91 \times 99$.
Find the largest palindrome made from the product of two $3$-digit numbers.
Chinese / 最大回文乘积
回文数从两个方向读都是相同的。由两个 $2$ 位数的乘积构成的最大回文数是 $9009 = 91 \times 99$。
求由两个 $3$ 位数的乘积构成的最大回文数。
Solution
枚举便可,答案为 。
Code
C++
1 |
|
Problem #5 Smallest Multiple
Problem Description
$2520$ is the smallest number that can be divided by each of the numbers from $1$ to $10$ without any remainder.
What is the smallest positive number that is evenly divisibledivisible with no remainder by all of the numbers from $1$ to $20$?
Chinese / 最小公倍数
$2520$ 是能被从 $1$ 到 $10$ 的每个数整除的最小数。
能被从 $1$ 到 $20$ 的所有数整除的最小正数是多少?
Solution
题意转化为求 到 的最小公倍数。我们用 表示 与 的最大公因数, 代表最小公倍数。
答案为 。
Code
C++
1 |
|
Problem #6 Sum Square Difference
Problem Description
The sum of the squares of the first ten natural numbers is,
$$1^2 + 2^2 + ... + 10^2 = 385.$$The square of the sum of the first ten natural numbers is,
$$(1 + 2 + ... + 10)^2 = 55^2 = 3025.$$Hence the difference between the sum of the squares of the first ten natural numbers and the square of the sum is $3025 - 385 = 2640$.
Find the difference between the sum of the squares of the first one hundred natural numbers and the square of the sum.
Chinese / 平方和与和平方之差
前十个自然数的平方和是
$$1^2 + 2^2 + ... + 10^2 = 385.$$前十个自然数的和的平方是
$$(1 + 2 + ... + 10)^2 = 55^2 = 3025.$$因此,前十个自然数的平方和与和的平方之间的差是 $3025 - 385 = 2640$。
求前一百个自然数的平方和与和的平方之间的差。
Solution
我们有如下两个公式。
答案为 。
Code
C++
1 |
|
Problem #7 10 001st Prime
Problem Description
By listing the first six prime numbers: $2, 3, 5, 7, 11$, and $13$, we can see that the $6$th prime is $13$.
What is the $10\,001$st prime number?
Chinese / 第 10001 个质数
列出前六个质数:$2、3、5、7、11$ 和 $13$,我们可以看到第 $6$ 个质数是 $13$。
第 $10001$ 个质数是多少?
Solution
使用线性筛解决,答案为 。
Code
C++
1 |
|
Problem #8 Largest Product in a Series
Problem Description
The four adjacent digits in the $1000$-digit number that have the greatest product are $9 \times 9 \times 8 \times 9 = 5832$.
73167176531330624919225119674426574742355349194934
96983520312774506326239578318016984801869478851843
85861560789112949495459501737958331952853208805511
12540698747158523863050715693290963295227443043557
66896648950445244523161731856403098711121722383113
62229893423380308135336276614282806444486645238749
30358907296290491560440772390713810515859307960866
70172427121883998797908792274921901699720888093776
65727333001053367881220235421809751254540594752243
52584907711670556013604839586446706324415722155397
53697817977846174064955149290862569321978468622482
83972241375657056057490261407972968652414535100474
82166370484403199890008895243450658541227588666881
16427171479924442928230863465674813919123162824586
17866458359124566529476545682848912883142607690042
24219022671055626321111109370544217506941658960408
07198403850962455444362981230987879927244284909188
84580156166097919133875499200524063689912560717606
05886116467109405077541002256983155200055935729725
71636269561882670428252483600823257530420752963450
Find the thirteen adjacent digits in the $1000$-digit number that have the greatest product. What is the value of this product?
Chinese / 连续数字最大乘积
在这个 $1000$ 位数字中,乘积最大的四个相邻数字是 $9 \times 9 \times 8 \times 9 = 5832$。
73167176531330624919225119674426574742355349194934
96983520312774506326239578318016984801869478851843
85861560789112949495459501737958331952853208805511
12540698747158523863050715693290963295227443043557
66896648950445244523161731856403098711121722383113
62229893423380308135336276614282806444486645238749
30358907296290491560440772390713810515859307960866
70172427121883998797908792274921901699720888093776
65727333001053367881220235421809751254540594752243
52584907711670556013604839586446706324415722155397
53697817977846174064955149290862569321978468622482
83972241375657056057490261407972968652414535100474
82166370484403199890008895243450658541227588666881
16427171479924442928230863465674813919123162824586
17866458359124566529476545682848912883142607690042
24219022671055626321111109370544217506941658960408
07198403850962455444362981230987879927244284909188
84580156166097919133875499200524063689912560717606
05886116467109405077541002256983155200055935729725
71636269561882670428252483600823257530420752963450
在这个 $1000$ 位数字中找出乘积最大的十三个相邻数字。这个乘积的值是多少?
Solution
暴力枚举即可,答案为 。
Code
C++
1 |
|
Problem #9 Special Pythagorean Triplet
Problem Description
A Pythagorean triplet is a set of three natural numbers, $a \lt b \lt c$, for which, $$a^2 + b^2 = c^2.$$
For example, $3^2 + 4^2 = 9 + 16 = 25 = 5^2$.
There exists exactly one Pythagorean triplet for which $a + b + c = 1000$.
Find the product $abc$.
Chinese / 特殊毕达哥拉斯三元组
勾股数是一组三个自然数,$a \lt b \lt c$,满足 $$a^2 + b^2 = c^2.$$
例如,$3^2 + 4^2 = 9 + 16 = 25 = 5^2$。
存在唯一一组勾股数满足 $a + b + c = 1000$。
求这组勾股数的乘积 $abc$。
Solution
直接枚举 和 ,计算 并判断合法性。答案为 。
Code
C++
1 |
|
Problem #10 Summation of Primes
Problem Description
The sum of the primes below $10$ is $2 + 3 + 5 + 7 = 17$.
Find the sum of all the primes below two million.
Chinese / 质数求和
小于 $10$ 的质数之和是 $2 + 3 + 5 + 7 = 17$。
求小于两百万的所有质数之和。
Solution
使用线性筛筛一遍就可,答案为 。
Code
C++
1 |
|
Problem #11 Largest Product in a Grid
Problem Description
In the $20 \times 20$ grid below, four numbers along a diagonal line have been marked in red.
08 02 22 97 38 15 00 40 00 75 04 05 07 78 52 12 50 77 91 08
49 49 99 40 17 81 18 57 60 87 17 40 98 43 69 48 04 56 62 00
81 49 31 73 55 79 14 29 93 71 40 67 53 88 30 03 49 13 36 65
52 70 95 23 04 60 11 42 69 24 68 56 01 32 56 71 37 02 36 91
22 31 16 71 51 67 63 89 41 92 36 54 22 40 40 28 66 33 13 80
24 47 32 60 99 03 45 02 44 75 33 53 78 36 84 20 35 17 12 50
32 98 81 28 64 23 67 10 26 38 40 67 59 54 70 66 18 38 64 70
67 26 20 68 02 62 12 20 95 63 94 39 63 08 40 91 66 49 94 21
24 55 58 05 66 73 99 26 97 17 78 78 96 83 14 88 34 89 63 72
21 36 23 09 75 00 76 44 20 45 35 14 00 61 33 97 34 31 33 95
78 17 53 28 22 75 31 67 15 94 03 80 04 62 16 14 09 53 56 92
16 39 05 42 96 35 31 47 55 58 88 24 00 17 54 24 36 29 85 57
86 56 00 48 35 71 89 07 05 44 44 37 44 60 21 58 51 54 17 58
19 80 81 68 05 94 47 69 28 73 92 13 86 52 17 77 04 89 55 40
04 52 08 83 97 35 99 16 07 97 57 32 16 26 26 79 33 27 98 66
88 36 68 87 57 62 20 72 03 46 33 67 46 55 12 32 63 93 53 69
04 42 16 73 38 25 39 11 24 94 72 18 08 46 29 32 40 62 76 36
20 69 36 41 72 30 23 88 34 62 99 69 82 67 59 85 74 04 36 16
20 73 35 29 78 31 90 01 74 31 49 71 48 86 81 16 23 57 05 54
01 70 54 71 83 51 54 69 16 92 33 48 61 43 52 01 89 19 67 48
The product of these numbers is $26 \times 63 \times 78 \times 14 = 1788696$.
What is the greatest product of four adjacent numbers in the same direction (up, down, left, right, or diagonally) in the $20 \times 20$ grid?
Chinese / 方阵中的最大乘积
在下面的 $20 \times 20$ 的方阵中,有四个呈对角线排列的数被标记为红色。
08 02 22 97 38 15 00 40 00 75 04 05 07 78 52 12 50 77 91 08
49 49 99 40 17 81 18 57 60 87 17 40 98 43 69 48 04 56 62 00
81 49 31 73 55 79 14 29 93 71 40 67 53 88 30 03 49 13 36 65
52 70 95 23 04 60 11 42 69 24 68 56 01 32 56 71 37 02 36 91
22 31 16 71 51 67 63 89 41 92 36 54 22 40 40 28 66 33 13 80
24 47 32 60 99 03 45 02 44 75 33 53 78 36 84 20 35 17 12 50
32 98 81 28 64 23 67 10 26 38 40 67 59 54 70 66 18 38 64 70
67 26 20 68 02 62 12 20 95 63 94 39 63 08 40 91 66 49 94 21
24 55 58 05 66 73 99 26 97 17 78 78 96 83 14 88 34 89 63 72
21 36 23 09 75 00 76 44 20 45 35 14 00 61 33 97 34 31 33 95
78 17 53 28 22 75 31 67 15 94 03 80 04 62 16 14 09 53 56 92
16 39 05 42 96 35 31 47 55 58 88 24 00 17 54 24 36 29 85 57
86 56 00 48 35 71 89 07 05 44 44 37 44 60 21 58 51 54 17 58
19 80 81 68 05 94 47 69 28 73 92 13 86 52 17 77 04 89 55 40
04 52 08 83 97 35 99 16 07 97 57 32 16 26 26 79 33 27 98 66
88 36 68 87 57 62 20 72 03 46 33 67 46 55 12 32 63 93 53 69
04 42 16 73 38 25 39 11 24 94 72 18 08 46 29 32 40 62 76 36
20 69 36 41 72 30 23 88 34 62 99 69 82 67 59 85 74 04 36 16
20 73 35 29 78 31 90 01 74 31 49 71 48 86 81 16 23 57 05 54
01 70 54 71 83 51 54 69 16 92 33 48 61 43 52 01 89 19 67 48
这些数字的乘积是 $26 \times 63 \times 78 \times 14 = 1788696$。
在 $20 \times 20$ 的方阵中,四个呈一直线(竖直、水平或对角线)的相邻的数的最大乘积是多少?
Solution
枚举所有可能的情况即可,答案为 。
Code
C++
1 |
|
Problem #12 Highly Divisible Triangular Number
Problem Description
The sequence of triangle numbers is generated by adding the natural numbers. So the $7$th triangle number would be $1 + 2 + 3 + 4 + 5 + 6 + 7 = 28$. The first ten terms would be: $$1, 3, 6, 10, 15, 21, 28, 36, 45, 55, \dots$$
Let us list the factors of the first seven triangle numbers:
$$\begin{align} \mathbf 1 &\colon 1\\ \mathbf 3 &\colon 1,3\\ \mathbf 6 &\colon 1,2,3,6\\ \mathbf{10} &\colon 1,2,5,10\\ \mathbf{15} &\colon 1,3,5,15\\ \mathbf{21} &\colon 1,3,7,21\\ \mathbf{28} &\colon 1,2,4,7,14,28 \end{align}$$We can see that $28$ is the first triangle number to have over five divisors.
What is the value of the first triangle number to have over five hundred divisors?
Chinese / 有很多因数的三角形数
三角形数是通过连续累加自然数得到的。例如第 $7$ 个三角形数是 $1 + 2 + 3 + 4 + 5 + 6 + 7 = 28$。前十个三角形数是: $$1, 3, 6, 10, 15, 21, 28, 36, 45, 55, \dots$$
让我们列出前七个三角形数的所有因数:
$$\begin{align} \mathbf 1 &\colon 1\\ \mathbf 3 &\colon 1,3\\ \mathbf 6 &\colon 1,2,3,6\\ \mathbf{10} &\colon 1,2,5,10\\ \mathbf{15} &\colon 1,3,5,15\\ \mathbf{21} &\colon 1,3,7,21\\ \mathbf{28} &\colon 1,2,4,7,14,28 \end{align}$$我们可以看到 $28$ 是第一个拥有超过五个因数的三角形数。
第一个拥有超过五百个因数的三角形数的值是多少?
Solution
枚举数并判断其因数个数即可,答案为 。
Code
C++
1 |
|
- 标题: 欧拉计划大合集
- 作者: Gavin
- 创建于 : 2025-12-07 15:33:00
- 更新于 : 2025-12-09 14:06:00
- 链接: https://gavin-blog.pages.dev/2025/欧拉计划大合集/
- 版权声明: 本文章采用 CC BY-NC-SA 4.0 进行许可。