
欧拉计划
zhengzibin
这一站广轻下一站北京
展开
-
Project Euler -> problem 6
6. 前十个自然数的平方和是:1^2 + 2^2 + ... + 10^2 = 385前十个自然数的和的平方是:(1 + 2 + ... + 10)^2 = 55^2 = 3025所以平方和与和的平方的差是3025 - 385 = 2640.找出前一百个自然数的平方和与和平方的差。int main(void){ longi,j=0,k=0; for(i=1;原创 2013-08-22 15:33:58 · 313 阅读 · 0 评论 -
Project Euler -> problem 5
5. 2520是最小的能被1-10中每个数字整除的正整数。最小的能被1-20中每个数整除的正整数是多少?int divided(int i);int main(void){ inti,j; for(i=2520;;i++){ j = divided(i); if(j){ printf("%d\n",i);原创 2013-08-22 15:33:56 · 566 阅读 · 0 评论 -
Project Euler -> problem 11
11. 在以下这个2020的网格中,四个处于同一对角线上的相邻数字用红色标了出来:08 02 22 97 38 15 00 40 00 75 04 05 07 78 52 12 50 77 910849 49 99 40 17 81 18 57 60 87 17 40 98 43 69 48 04 56 620081 49 31 73 55 79 14 29 93 71 40 67 5原创 2013-08-22 15:34:11 · 403 阅读 · 0 评论 -
Project Euler -> problem 7
int main(void){ inti,u,j=0; for(i=2;;i++){ intflag = 1; for(u=2;u*u if(i%u == 0){ flag =0; break; } } if(flag== 1) j++; if(原创 2013-08-22 15:34:00 · 268 阅读 · 0 评论 -
Project Euler -> problem 3
3.13195的质数因子有5,7,13和29。600851475143的最大质数因子是多少?#include void MaxPrine(unsigned long long u);int main(void){ unsigned long longi=13195,u=600851475143; MaxPrine(i); MaxPrine(u); re原创 2013-08-22 15:33:51 · 268 阅读 · 0 评论 -
Project Euler -> problem 2
2. 斐波那契数列中的每一项被定义为前两项之和。从1和2开始,斐波那契数列的前十项为:1, 2, 3, 5, 8, 13, 21, 34, 55, 89, ...考虑斐波那契数列中数值不超过4百万的项,找出这些项中值为偶数的项之和。int main(void){ inta[3]={1,2,0},i=0; while(a[2] a[2] = a[0] +原创 2013-08-22 15:33:49 · 297 阅读 · 0 评论 -
Project Euler -> problem 1
1. 10以下的自然数中,属于3和5的倍数的有3,5,6和9,它们之和是23.找出1000以下的自然数中,属于3和5的倍数的数字之和。int main(void) { inti,j=0; for(i=1;i//求3的倍数 if(i%3==0) j+=i;//求5的倍数 else if(i%5==0)原创 2013-08-22 15:33:47 · 312 阅读 · 0 评论 -
Project Euler -> problem 12
12. 三角形数序列是由对自然数的连加构造而成的。所以第七个三角形数是1 + 2 + 3 + 4 + 5 + 6 + 7 =28. 那么三角形数序列中的前十个是:1, 3, 6, 10, 15, 21, 28, 36, 45, 55, ...下面我们列出前七个三角形数的约数:1: 13: 1,36: 1,2,3,610: 1,2,5,1015: 1,3,5,1521: 1,原创 2013-08-22 15:34:13 · 265 阅读 · 0 评论 -
Project Euler -> problem 9
9.一个毕达哥拉斯三元组是一个包含三个自然数的集合,aa^2 + b^2 = c^2例如:3^2 + 4^2 = 9 + 16 = 25 = 5^2.已知存在并且只存在一个毕达哥拉斯三元组满足条件a + b + c = 1000。找出该三元组中abc的乘积。int main(void){ inta,b,c; for(a=1;a for(b=a+1;b原创 2013-08-22 15:34:04 · 307 阅读 · 0 评论 -
Project Euler -> problem 8
8.找出以下这个1000位的整数中连续5个数字的最大乘积。(例如前五个数字的乘积是7*3*1*6*7=882)731671765313306249192251196744265747423553491949349698352031277450632623957831801698480186947885184385861560789112949495459501737958331952853原创 2013-08-22 15:34:02 · 328 阅读 · 0 评论 -
Project Euler -> problem 4
4. 一个回文数指的是从左向右和从右向左读都一样的数字。最大的由两个两位数乘积构成的回文数是9009 = 91 * 99。找出最大的有由个三位数乘积构成的回文数。int main(void){ inti,j,t,k,n=0; for(i=100;i for(j=100;j//求回问数算法 for(t=0,k=i*j;k>0;k/=10)原创 2013-08-22 15:33:54 · 263 阅读 · 0 评论 -
Project Euler -> problem 10
10. 10以下的质数的和是2 + 3 + 5 + 7 = 17.找出两百万以下所有质数的和。int main(void){ int i,u; longlong sum=0; for(i=2;i int flag = 1; for(u=2;u*u if(i%u ==0){ fla原创 2013-08-22 15:34:07 · 324 阅读 · 0 评论