ProjectEuler
error0318
这个作者很懒,什么都没留下…
展开
-
ProjectEuler Problem 18.Maximum path sum I
题目链接:18.Maximum path sum I题意: By starting at the top of the triangle below and moving to adjacent numbers on the row below, the maximum total from top to bottom is 23.3742468 593That is, 3 + 7 + 4 + 9 = 23.解题思路: 动态规划的思想,下一行的值等于上一行...原创 2020-09-21 09:54:37 · 90 阅读 · 0 评论 -
projectEuler problem 17 .Number letter counts
题目链接:17 .Number letter counts题意:If the numbers 1 to 5 are written out in words: one, two, three, four, five, then there are 3 + 3 + 5 + 4 + 4 = 19 letters used in total.If all the numbers from 1 to 1000 (one thousand) inclusive were written out in wo原创 2020-09-18 12:33:58 · 179 阅读 · 2 评论 -
projectEuler Problem 16.Power digit sum
题目链接:16.Power digit sum题意: 求2的1000次方的每一位之和2^15= 32768 and the sum of its digits is 3 + 2 + 7 + 6 + 8 = 26.解题思路: 直接算肯定是超范围,所以,使用数组进行次方的模拟乘法运算#include <bits/stdc++.h>using namespace std;typedef long long ll;const int maxn = 2500;i...原创 2020-09-17 12:52:32 · 119 阅读 · 0 评论 -
projectEuler Problem 15.Lattice paths
题目链接:15.Lattice paths题意:Starting in the top left corner of a 2×2 grid, and only being able to move to the right and down, there are exactly 6 routes to the bottom right corner. How many such routes are there ...原创 2020-09-16 14:48:20 · 117 阅读 · 0 评论 -
projectEuler Problem 14.Longest Collatz sequence
题目链接:14.Longest Collatz sequence题意: 如果一个数 n 为偶数,那么 n = n / 2 如果一个数 n 为奇数,那么 n = n * 3 + 1, 默认每个数都可以转换到113 → 40 → 20 → 10 → 5 → 16 → 8 → 4 → 2 → 113的链长为 10问 : 小于一百万的数字中 哪个数字的链长最长解题思路: 这个网站是只要答案,所以暴力跑,可能20多秒就跑出来了,但是还是最好运用算法,记忆化搜索。节省...原创 2020-09-15 18:29:54 · 160 阅读 · 0 评论 -
projectEuler Problem 13 .Large sum(大数相加)
题目链接:13 .Large sum题意: 给100个长度为50的数字,求数字之和的前10位解题思路: 也就是大数相加,使用数组进行模拟即可#include <bits/stdc++.h>using namespace std;typedef long long ll;int main() { string s, t; int n; int a[100]; memset(a, 0, sizeof(a)); cin >> n; /...原创 2020-09-14 21:02:43 · 165 阅读 · 0 评论 -
projectEuler Problem 12.Highly divisible triangular number
题目链接:12.Highly divisible triangular number题意:The sequence of triangle numbers is generated by adding the natural numbers. So the 7thtriangle 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...原创 2020-09-13 17:00:38 · 109 阅读 · 0 评论 -
projectEuler Problem 11 Largest product in a grid
题目链接:11 Largest product in a grid题意: 给一个20 * 20的网格,求相邻的最大乘积, 同一行,同一列,同一条斜线上解题思路: 模拟#include <iostream>using namespace std;int g[25][25];int main() { int n = 20, ans = 0; for(int i = 0; i < n; i++) { for(int j = 0; j < n; ...原创 2020-09-12 20:32:00 · 130 阅读 · 0 评论 -
projectEuler Problem 10 Summation of primes
题目链接:10 Summation of primes题意: 求小于 2000000 的素数和解题思路: 直接使用欧拉函数 详见(埃拉托斯尼斯筛法)#include <bits/stdc++.h>using namespace std;typedef long long ll;const int maxn = 2000005;ll ans = 0;ll prime[maxn];int is_prime[maxn+1];void ...原创 2020-09-11 11:37:46 · 127 阅读 · 1 评论 -
projectEuler Problem 9.Special Pythagorean triplet
题目链接:9.Special Pythagorean triplet题意: 求 a * b * c要求 a + b + c = 1000 a * a + b * b = c * c解题思路: 直接模拟 #include <bits/stdc++.h>using namespace std;typedef long long ll;ll ans = 1;int main() { for(int a = 1; a < 5...原创 2020-09-10 09:49:29 · 133 阅读 · 0 评论 -
projectEuler Problem 8.Largest product in a series
题目链接:8.Largest product in a series题意: 给定一个字符串,求连续13个数字的乘积最大值解题思路: 处理一下0的地方就可以#include <bits/stdc++.h>using namespace std;typedef long long ll;ll ans = 1, res = 1;int main() { string s = "7316717653133062491922511967442657474235...原创 2020-09-10 09:27:26 · 94 阅读 · 0 评论 -
projectEuler problem 7.10001st prime
题目链接:7.10001st prime题意: 求第10001个素数。解题思路: 就素数打表#include <bits/stdc++.h>using namespace std;typedef long long ll;const int maxn = 10001;int prime[maxn] = {2, 3};bool is_prime(int val) { // 判断素数 for(int i = 1; prime[i] <= sqrt(...原创 2020-09-09 16:36:59 · 107 阅读 · 0 评论 -
projectEuler problem6.Sum square difference
题目链接:6.Sum square difference题意: 求(1+2+.....+100)^2 - (1 ^ 2 + 2 ^2 + ....... + 100^2)解题思路: 无,直接搞#include <bits/stdc++.h>using namespace std;typedef long long ll;int main() { ll ans = 0, ans1 = 0, ans2 = 0; for(int i = 1; i &...原创 2020-09-09 15:45:19 · 90 阅读 · 0 评论 -
projectEuler problem 5.Smallest multiple
题目链接: 5.Smallest multiple题意: 求1 - 20 的最小公倍数解题思路; 直接写个gcd,然后求#include <bits/stdc++.h>using namespace std;typedef long long ll;const int maxn = 300005;ll gcd(ll a, ll b) { return b == 0 ? a : gcd(b, a % b);}int main() { ll ans = 1...原创 2020-09-08 11:38:01 · 96 阅读 · 2 评论 -
ProjectEuler Problem 4.Largest palindrome product
题目链接:4.Largest palindrome product题意: 求由两个三位数组成的六位数的回文数解题思路: 六位数可以写成num = 100000*x + 10000 * y + 1000 * z + 100 * z + 10 * y + x;num = 100001 * x + 1100 * y + 1100 * znum = 11(9091 * x + 910 * y + 100 * z)得这个回文数是11的倍数可以进行剪枝#include &l...原创 2020-09-08 11:36:10 · 106 阅读 · 0 评论 -
ProjectEuler problem3.Largest prime factor
题目链接:3.Largest prime factor题意:求600851475143 的最大质因子解题思路: 分解质因子#include <bits/stdc++.h>using namespace std;const int maxn = 300005;int main() { long long num = 600851475143; int k = 3; // 由于从肉眼 判断出此数不能整除2,所以从3开始 while(num > 1) { .原创 2020-09-08 08:23:23 · 121 阅读 · 0 评论 -
ProjectEuler problem2.Even Fibonacci numbers
题目链接:2.Even Fibonacci numbers题意: 求斐波那契数列中,小于四百万的 前n项 偶数值的和解题思路: 简单模拟....#include <bits/stdc++.h>using namespace std;const int maxn = 300005;int main() { int f1 = 1; int f2 = 2; int f3 = 0, ans = 2; while(f3 < 4000000) { ...原创 2020-09-08 08:21:00 · 107 阅读 · 0 评论 -
ProjectEuler Problem1.Multiples of 3 and 5
题目链接:1.Multiples of 3 and 5题意:求小于1000的3和5的倍数的和解题 可以使用循环,也可以直接分析,等差数列求和(注意,3和5的公倍数只需计算一次,多计算的减去)#include <bits/stdc++.h>using namespace std;const int maxn = 300005;int main() { int ans = 0; ans += (995 / 5) * (5 + 995) / 2; ans += ...原创 2020-09-08 08:15:14 · 134 阅读 · 0 评论