Skip to content

Instantly share code, notes, and snippets.

View stepankuzmin's full-sized avatar
🥡

Stepan Kuzmin stepankuzmin

🥡
View GitHub Profile
@stepankuzmin
stepankuzmin / feature-grid.js
Created November 23, 2011 10:28
Mapping with OpenLayers and GeoExt
OpenLayers.IMAGE_RELOAD_ATTEMPTS = 5; // How many times should we try to reload an image before giving up?
OpenLayers.ImgPath = "http://js.mapbox.com/theme/dark/";
var mapPanel, store, gridPanel, mainPanel;
Ext.onReady(function() {
var map = new OpenLayers.Map('', {
controls: [],
projection: new OpenLayers.Projection("EPSG:900913"),
units: "m",
@stepankuzmin
stepankuzmin / euler1.erl
Created January 23, 2012 17:28
Project Euler. Problem 1.
-module(euler1).
-export([start/0]).
start() ->
start_acc(0, 0).
start_acc(1000, Acc) ->
Acc;
start_acc(N, Acc) when N rem 3 == 0; N rem 5 == 0 ->
@stepankuzmin
stepankuzmin / euler2.erl
Created January 24, 2012 10:33
Project Euler. Problem 2.
-module(euler2).
-export([start/0]).
start() ->
start_acc(0, 0).
start_acc(N, Acc) ->
F = fib(N),
if F > 4000000 -> Acc;
true -> if F rem 2 == 0 -> start_acc(N+1, Acc+F);
@stepankuzmin
stepankuzmin / euler3.erl
Created January 24, 2012 11:04
Project Euler. Problem 3.
-module(euler3).
-export([start/0]).
start() ->
brute(600851475143, 2).
brute(N, N) ->
N;
brute(N, M) when N rem M == 0 ->
@stepankuzmin
stepankuzmin / gist:1682247
Created January 26, 2012 11:02
Project Euler. Problem 4.
lists:max([Z || Z <- [X*Y || X <- lists:seq(1, 999), Y <- lists:seq(1, 999)], lists:reverse(erlang:integer_to_list(Z)) == erlang:integer_to_list(Z)]).
@stepankuzmin
stepankuzmin / euler5.erl
Created January 26, 2012 11:53
Project Euler. Problem 5.
-module(euler5).
-export([start/0]).
start() ->
start_acc(1).
start_acc(N) ->
case is_evently_divisible(N, 20) of
true -> N;
false -> start_acc(N+1)
@stepankuzmin
stepankuzmin / euler6.erl
Created January 26, 2012 12:16
Project Euler. Problem 6.
-module(euler6).
-export([start/0]).
start() ->
N = fac(100),
N*N-fac2(100).
fac(N) ->
fac_acc(N, 0).
@stepankuzmin
stepankuzmin / euler7.erl
Created January 27, 2012 15:59
Project Euler. Problem 7.
-module(euler7).
-export([start/0]).
start() ->
start_acc(2, 0).
start_acc(N, 10001) ->
N-1;
start_acc(N, Acc) ->
@stepankuzmin
stepankuzmin / euler8.erl
Created January 27, 2012 16:53
Project Euler. Problem 8.
-module(euler8).
-export([start/0]).
start() ->
lists:max(start_acc("7316717653133062491922511967442657474235534919493496983520312774506326239578318016984801869478851843858615607891129494954595017379583319528532088055111254069874715852386305071569329096329522744304355766896648950445244523161731856403098711121722383113622298934233803081353362766142828064444866452387493035890729629049156044077239071381051585930796086670172427121883998797908792274921901699720888093776657273330010533678812202354218097512545405947522435258490771167055601360483958644670632441572215539753697817977846174064955149290862569321978468622482839722413756570560574902614079729686524145351004748216637048440319989000889524345065854122758866688116427171479924442928230863465674813919123162824586178664583591245665294765456828489128831426076900422421902267105562632111110937054421750694165896040807198403850962455444362981230987879927244284909188845801561660979191338754992005240636899125607176060588611646710940507754100225698315520005593572972571
@stepankuzmin
stepankuzmin / euler9.erl
Created April 2, 2012 07:51
Project Euler. Problem 9.
-module(euler9).
-compile(export_all).
start() ->
start(1, 2, 1000, []).
start(A, Max, Max, Acc) ->
start(A+1, A+2, Max, Acc);
start(Max, _B, Max, Acc) ->
Acc;
start(A, B, Max, Acc) ->