长泽梓无码片迅雷链接:欧拉项目第六题Problem6
来源:百度文库 编辑:九乡新闻网 时间:2024/04/28 22:52:10
欧拉项目第六题Problem6
The sum of the squares of the first ten natural numbers is,
12 + 22 + ... + 102 = 385
The square of the sum of the first ten natural numbers is,
(1 + 2 + ... + 10)2 = 552 = 3025
Hence the difference between the sum of the squares of the first ten natural numbers and the square of the sum is 3025
Find the difference between the sum of the squares of the first one hundred natural numbers and the square of the sum.
package project.euler;
public class Problem
/**
* @欧拉项目 第六题 方法1
*
*/
public void findDiff(int maxNum){
//long longDif = 0;
long sum = 0; //sum = 1^2 + 2^2 + ... + 10^2 + …… + n^2
int sumSqu = 0; //sumSqu = 1 + 2 + ... + 10 + …… + n
long pow = 0; //pow = (sumSqu)^2
//减数
for(int i = 1; i <= maxNum; i++){
sumSqu += i;
pow = (long)Math.pow(sumSqu, 2);
sum += Math.pow(i, 2);
System.out.println("前" + i + "项和" + sumSqu + "的平方" + pow + " - " + sum + " = " + (pow - sum));
}
//pow = (long)Math.pow(sumSqu, 2);
//return longDif;
}
public static void main(String[] args) {
Problem
p6.findDiff(100);
}
}
前1项和1的平方1 - 1 = 0
前2项和3的平方9 - 5 = 4
前3项和6的平方36 - 14 = 22
前4项和10的平方100 - 30 = 70
前5项和15的平方225 - 55 = 170
前6项和21的平方441 - 91 = 350
前7项和28的平方784 - 140 = 644
前8项和36的平方1296 - 204 = 1092
前9项和45的平方2025 - 285 = 1740
前10项和55的平方3025 - 385 = 2640
前11项和66的平方4356 - 506 = 3850
前12项和78的平方6084 - 650 = 5434
前13项和91的平方8281 - 819 = 7462
前14项和105的平方11025 - 1015 = 10010
前15项和120的平方14400 - 1240 = 13160
前16项和136的平方18496 - 1496 = 17000
前17项和153的平方23409 - 1785 = 21624
前18项和171的平方29241 - 2109 = 27132
前19项和190的平方36100 - 2470 = 33630
前20项和210的平方44100 - 2870 = 41230
前21项和231的平方53361 - 3311 = 50050
前22项和253的平方64009 - 3795 = 60214
前23项和276的平方76176 - 4324 = 71852
前24项和300的平方90000 - 4900 = 85100
前25项和325的平方105625 - 5525 = 100100
前26项和351的平方123201 - 6201 = 117000
前27项和378的平方142884 - 6930 = 135954
前28项和406的平方164836 - 7714 = 157122
前29项和435的平方189225 - 8555 = 180670
前30项和465的平方216225 - 9455 = 206770
前31项和496的平方246016 - 10416 = 235600
前32项和528的平方278784 - 11440 = 267344
前33项和561的平方314721 - 12529 = 302192
前34项和595的平方354025 - 13685 = 340340
前35项和630的平方396900 - 14910 = 381990
前36项和666的平方443556 - 16206 = 427350
前37项和703的平方494209 - 17575 = 476634
前38项和741的平方549081 - 19019 = 530062
前39项和780的平方608400 - 20540 = 587860
前40项和820的平方672400 - 22140 = 650260
前41项和861的平方741321 - 23821 = 717500
前42项和903的平方815409 - 25585 = 789824
前43项和946的平方894916 - 27434 = 867482
前44项和990的平方980100 - 29370 = 950730
前45项和1035的平方1071225 - 31395 = 1039830
前46项和1081的平方1168561 - 33511 = 1135050
前47项和1128的平方1272384 - 35720 = 1236664
前48项和1176的平方1382976 - 38024 = 1344952
前49项和1225的平方1500625 - 40425 = 1460200
前50项和1275的平方1625625 - 42925 = 1582700
前51项和1326的平方1758276 - 45526 = 1712750
前52项和1378的平方1898884 - 48230 = 1850654
前53项和1431的平方2047761 - 51039 = 1996722
前54项和1485的平方2205225 - 53955 = 2151270
前55项和1540的平方2371600 - 56980 = 2314620
前56项和1596的平方2547216 - 60116 = 2487100
前57项和1653的平方2732409 - 63365 = 2669044
前58项和1711的平方2927521 - 66729 = 2860792
前59项和1770的平方3132900 - 70210 = 3062690
前60项和1830的平方3348900 - 73810 = 3275090
前61项和1891的平方3575881 - 77531 = 3498350
前62项和1953的平方3814209 - 81375 = 3732834
前63项和2016的平方4064256 - 85344 = 3978912
前64项和2080的平方4326400 - 89440 = 4236960
前65项和2145的平方4601025 - 93665 = 4507360
前66项和2211的平方4888521 - 98021 = 4790500
前67项和2278的平方5189284 - 102510 = 5086774
前68项和2346的平方5503716 - 107134 = 5396582
前69项和2415的平方5832225 - 111895 = 5720330
前70项和2485的平方6175225 - 116795 = 6058430
前71项和2556的平方6533136 - 121836 = 6411300
前72项和2628的平方6906384 - 127020 = 6779364
前73项和2701的平方7295401 - 132349 = 7163052
前74项和2775的平方7700625 - 137825 = 7562800
前75项和2850的平方8122500 - 143450 = 7979050
前76项和2926的平方8561476 - 149226 = 8412250
前77项和3003的平方9018009 - 155155 = 8862854
前78项和3081的平方9492561 - 161239 = 9331322
前79项和3160的平方9985600 - 167480 = 9818120
前80项和3240的平方10497600 - 173880 = 10323720
前81项和3321的平方11029041 - 180441 = 10848600
前82项和3403的平方11580409 - 187165 = 11393244
前83项和3486的平方12152196 - 194054 = 11958142
前84项和3570的平方12744900 - 201110 = 12543790
前85项和3655的平方13359025 - 208335 = 13150690
前86项和3741的平方13995081 - 215731 = 13779350
前87项和3828的平方14653584 - 223300 = 14430284
前88项和3916的平方15335056 - 231044 = 15104012
前89项和4005的平方16040025 - 238965 = 15801060
前90项和4095的平方16769025 - 247065 = 16521960
前91项和4186的平方17522596 - 255346 = 17267250
前92项和4278的平方18301284 - 263810 = 18037474
前93项和4371的平方19105641 - 272459 = 18833182
前94项和4465的平方19936225 - 281295 = 19654930
前95项和4560的平方20793600 - 290320 = 20503280
前96项和4656的平方21678336 - 299536 = 21378800
前97项和4753的平方22591009 - 308945 = 22282064
前98项和4851的平方23532201 - 318549 = 23213652
前99项和4950的平方24502500 - 328350 = 24174150
前100项和5050的平方25502500 - 338350 = 25164150
问题分析:
这是个纯数学题了,有数学公式的:
(1+2+3...+n)^2 = ((1+n)*n/2)^2
(1^2 + 2^2 + 3^2 +...+ n^2) = 1/6 * n(n+1)(2n+1)
public class Problem6b {
/**
* @欧拉项目第六题 方法2
*/
public void findDiff(int maxNum){
long dif = (maxNum * (maxNum + 1) * (maxNum - 1) * (3 * maxNum + 2)) / 12;
System.out.print(dif);
}
public static void main(String[] args) {
Problem6b p6b = new Problem6b();
p6b.findDiff(100);
}
}