第一题
function fun(num) {
let temp = 0;
for (i = 0; i < num; i++) {
if (i % 3 == 0 || i % 5 == 0) {
temp += i
}
}
return temp;
}
第二题
function name() {
let arr = [];
let a = 1;
let b = 2;
let c = a + b;
while (c < 4000000) {
a = b;
b = c;
c = a + b;
if (c % 2 == 0) {
arr.push(c);
}
}
return arr.reduce((a, b) => a + b, 2);
}
第三题
function fun(num) {
if (num <= 0) {
return;
}
let i = 2;
let target;
while (num > 1) {
if (num % i == 0) {
num = num / i;
// console.log(`${num}/${i}`);
target = i;
} else {
i++;
}
}
return target;
}
第四题
function fun(){
let max = 0
for( let i = 999; i>=100;i-- ){
for( let j = 999; j>=100;j-- ){
let temp = i*j
if (isHui(temp) && temp > max ) {
max = temp
}
}
}
return max
}
// 判断是否回文数
function isHui(num) {
num = num + ''
return num === num.split("").reverse().join("")
}
第五题
function fun() {
for( let i = 20;;i++){
let flag = true;
for(let j = 1;j<=20;j++){
if (i%j != 0) {
flag = false
break
}
}
if (flag) {
return i
break
}
}
}
第六题
function name(n) {
// 公式
temp = n*(n-1)*(n+1)*(3*n+2)/12
return temp
// let temp = 0
// let temp2 = 0
// for(let i = 0;i<=n;i++){
// temp += i
// temp2 += i*i
// }
// return Math.pow(temp,2) - temp2
}
第七题
function fun() {
let arr = []
for(let j=2;;j++){
if (isPrime(j)) {
arr.push(j)
}
if (arr.length > 10001) {
break
}
}
return arr[arr.length-1]
}
// 判断是否质数
function isPrime(num) {
// 只要3到num - 1 之间有一个数能被num整除 那么就不是质数
for (let i = 3; i < num; i++) {
if (num % i === 0) {
return false
}
}
return true
}
第八题
function name(params) {
var str =
"73167176531330624919225119674426574742355349194934" +
"96983520312774506326239578318016984801869478851843" +
"85861560789112949495459501737958331952853208805511" +
"12540698747158523863050715693290963295227443043557" +
"66896648950445244523161731856403098711121722383113" +
"62229893423380308135336276614282806444486645238749" +
"30358907296290491560440772390713810515859307960866" +
"70172427121883998797908792274921901699720888093776" +
"65727333001053367881220235421809751254540594752243" +
"52584907711670556013604839586446706324415722155397" +
"53697817977846174064955149290862569321978468622482" +
"83972241375657056057490261407972968652414535100474" +
"82166370484403199890008895243450658541227588666881" +
"16427171479924442928230863465674813919123162824586" +
"17866458359124566529476545682848912883142607690042" +
"24219022671055626321111109370544217506941658960408" +
"07198403850962455444362981230987879927244284909188" +
"84580156166097919133875499200524063689912560717606" +
"05886116467109405077541002256983155200055935729725" +
"71636269561882670428252483600823257530420752963450";
var arr = str.split("");
var arr1 = arr.map(function (value) {
return parseInt(value);
});
var mul = [];
for (var i = 0; i < arr1.length; i++) {
if (arr1[i] == 0) {
continue;
}
var num =
arr1[i] *
arr1[i + 1] *
arr1[i + 2] *
arr1[i + 3] *
arr1[i + 4] *
arr1[i + 5] *
arr1[i + 6] *
arr1[i + 7] *
arr1[i + 8] *
arr1[i + 9] *
arr1[i + 10] *
arr1[i + 11] *
arr1[i + 12];
mul.push(num);
if (i === arr1.length - 13) {
break;
}
}
mul.sort(function (a, b) {
return b - a;
});
return mul[0]
}
第九题
function name() {
let n = 1000;
for (let i = 1; i < n - 1; i++) {
for (let j = i + 1; j < n - i; j++) {
let k = n - i - j;
if (i + j + k == 1000 && i * i + j * j == k * k) {
// console.log(i, j, k);
return i,j,k
}
}
}
}
第十题
function name(num) {
let sum = 0;
for (let i = 2; i <= num; i++) {
if (isPrime(i)) {
sum += i;
}
}
return sum;
}
console.log(name(2000000));
function isPrime(n) {
if (n == 2 || n == 3) {
return true;
}
if (n % 2 == 0) {
return false;
}
for (let i = 3; i <= Math.sqrt(n); i += 2) {
if (n % i == 0) return false;
}
return true;
}
持续更新