Javascript
Solusi: 1785 karakter
mengeksekusi kode dengan nodeJS
perhatikan pada masalah 7: algoritma ok, tapi perlu beberapa saat! Jika seseorang memiliki solusi yang lebih efisien ...
z=process.argv[2]
y=console.log
if(z==1){b=0;for(i=1e3;i--;)if(i%3<1||i%5<1)b+=i;y(b)}
if(z==2){d=e=1;f=0;while(e<=4e6)g=d+e,d=e,e=g,f+=e%2<1?e:0;y(f)}
if(z==3){e=Math.sqrt(d=600851475143)|0+1;f=2;while(f<e){g=d/f;if(g==(g|0))h=f,d=g;f+=f==2?1:2}y(h)}
if(z==4){for(a=b=100,c=0;a+b<1998;){d=a++*b;if(d==(""+d).split("").reverse().join("")&&d>c)c=d;if(a>999)a=b+1,b++}y(c)}
if(z==5){for(a=c=1;c;){for(b=20;b>1;)a%b>0?b=0:b--;b==1?c=0:a++}y(a)}
if(z==6){for(a=100,b=Math.pow(a*(a+1)/2,2),d=a+1;d--;)b-=d*d;y(b)}
if(z==7){for(a=3,c=d=0;c<1e4;){for(b=a;b>2;){b=b>3?b-2:2;if(a%b<1)b=0}if(b>0)c++,d=a;a=a+2}y(d)}
if(z==8){a="7316717653133062491922511967442657474235534919493496983520312774506326239578318016984801869478851843858615607891129494954595017379583319528532088055111254069874715852386305071569329096329522744304355766896648950445244523161731856403098711121722383113622298934233803081353362766142828064444866452387493035890729629049156044077239071381051585930796086670172427121883998797908792274921901699720888093776657273330010533678812202354218097512545405947522435258490771167055601360483958644670632441572215539753697817977846174064955149290862569321978468622482839722413756570560574902614079729686524145351004748216637048440319989000889524345065854122758866688116427171479924442928230863465674813919123162824586178664583591245665294765456828489128831426076900422421902267105562632111110937054421750694165896040807198403850962455444362981230987879927244284909188845801561660979191338754992005240636899125607176060588611646710940507754100225698315520005593572972571636269561882670428252483600823257530420752963450";for(e=0,b=996;b--;){d=eval(a.substr(b,5).split("").join("*"));if(d>e)e=d};y(e)}
if(z==9){for(a=b=0;(c=a+b+Math.sqrt(a*a+b*b))!=1e3;)if(++a==500)a=0,b++;y(a,b,c-b-a)}
masalah 1: 39 karakter
b=0;for(i=1e3;i--;)if(i%3<1||i%5<1)b+=i
masalah 2: 49 karakter
d=e=1;f=0;while(e<=4e6)g=d+e,d=e,e=g,f+=e%2<1?e:0
masalah 3: 85 karakter
e=Math.sqrt(d=600851475143)|0+1;f=2;while(f<e){g=d/f;if(g==(g|0))h=f,d=g;f+=f==2?1:2}
masalah 4: 105 karakter
for(a=b=100,c=0;a+b<1998;){d=a++*b;if(d==(""+d).split("").reverse().join("")&&d>c)c=d;if(a>999)a=b+1,b++}
masalah 5: 55 karakter
for(a=c=1;c;){for(b=20;b>1;)a%b>0?b=0:b--;b==1?c=0:a++}
masalah 6: 51 karakter
for(a=100,b=Math.pow(a*(a+1)/2,2),d=a+1;d--;)b-=d*d
masalah 7: 82 karakter
for(a=3,c=d=0;c<1e4;){for(b=a;b>2;){b=b>3?b-2:2;if(a%b<1)b=0}if(b>0)c++,d=a;a=a+2}
masalah 8: 1078 karakter ^ _ ^
a="7316717653133062491922511967442657474235534919493496983520312774506326239578318016984801869478851843858615607891129494954595017379583319528532088055111254069874715852386305071569329096329522744304355766896648950445244523161731856403098711121722383113622298934233803081353362766142828064444866452387493035890729629049156044077239071381051585930796086670172427121883998797908792274921901699720888093776657273330010533678812202354218097512545405947522435258490771167055601360483958644670632441572215539753697817977846174064955149290862569321978468622482839722413756570560574902614079729686524145351004748216637048440319989000889524345065854122758866688116427171479924442928230863465674813919123162824586178664583591245665294765456828489128831426076900422421902267105562632111110937054421750694165896040807198403850962455444362981230987879927244284909188845801561660979191338754992005240636899125607176060588611646710940507754100225698315520005593572972571636269561882670428252483600823257530420752963450"
for(e=0,b=996;b--;){d=eval(a.substr(b,5).split("").join("*"));if(d>e)e=d}
masalah 9: 58 karakter
for(a=b=0;a+b+Math.sqrt(a*a+b*b)!=1e3;)if(++a==500)a=0,b++
if(i%3<1||i%5<1)a+=i
lebih pendek! :)e=Math.sqrt(d=600851475143)|0+1;f=2;while(f<e){g=d/f;if(g==g|0)h=f,d=g;f+=f==2?1:2}
for(a=b=100,c=0;a+b<1998;){d=a++*b;if(d==(""+d).split("").reverse().join("")&&d>c)c=d;if(a>999)a=b+1,b++}
g==g|0
tidak berhasilg|0
harus antara kurungh
, bukan nilai yang dikembalikan oleh skripR 684 karakter
Bertakuk:
Pemakaian:
Terpisah:
1: 48 karakter
sum(which(rowSums(!outer(1:999,c(3,5),`%%`))>0))
2: 64 karakter
x=c(1,1);while(tail(x,1)<4e6)x=c(x,sum(tail(x,2)));sum(x[!x%%2])
3: 73 karakter
n=600851475143;m=2:sqrt(n);M=m[!n%%m];max(M[rowSums(!outer(M,M,`%%`))<2])
4: 88 karakter
a=900:999;b=a%o%a;max(b[sapply(strsplit(c(b,""),""),function(x)all(x==rev(x)))],na.rm=T)
5: 34 karakter
a=20;while(any(a%%1:20>0))a=a+20;a
6: 25 karakter
a=1:100;sum(a)^2-sum(a^2)
7: 54 karakter
d=3;P=2;while(P<=1e4){d=d+2;if(sum(!d%%2:d)<2)P=P+1};d
8: 181 karakter
Baris pertama membaca nomor dari situs web proyek euler, baris kedua sebenarnya melakukan perhitungan.
9: 87 karakter
z=1:1e3;Z=expand.grid(z,z);Y=cbind(Z,sqrt(rowSums(Z^2)));prod(Y[rowSums(Y)==1000,][1,])
sumber
f(7)
membutuhkan 2 menit untuk menghitung sehingga tidak benar-benar memenuhi batasan waktu eksekusi. Saya akan mencoba mengatasinya. (f(5)
memakan waktu 48J
245236232n adalah file yang mengandung yang berikut:
sumber
TI-BASIC (Work in Progress)
Untuk kalkulator TI-83 atau TI-84 Anda
Program utama, 15 byte :
Perpustakaan 1 ( 4 byte ) tidak dihitung terhadap jumlah total byte:
Kemudian, kita memiliki Daftar # 1:
sumber