220 18 Mar 2011 Loopy Loops: Print the numbers from 1 to 1000 without using loops or conditionals exercise solution codepad
161 24 Aug 2010 Daniel Shanks’ Square Form Factorization Algorithm: A simple and very fast factorization algorithm for integers between 105 and 1020 exercise solution codepad
161 24 Aug 2010 Daniel Shanks’ Square Form Factorization Algorithm: A simple and very fast factorization algorithm for integers between 105 and 1020 exercise solution codepad
399 14 Dec 2012   115132219018763992565095597973971522401: Calculate the sequence of narcissistic numbers exercise solution codepad
288 15 Nov 2011 Phil Harvey’s Puzle: partition {1,…,16} into two sets of equal size so each subset has the same sum, sum of squares and sum of cubes exercise solution codepad
304 10 Jan 2012 Thirteen Anagram: 12+1=11+2 and “twelve plus one equals eleven plus two” are both anagrams exercise solution codepad
261 09 Aug 2011 Hett’s Problem 1.28: Sorting a list of lists according to length of sublists exercise solution codepad
129 20 Apr 2010   145 Puzzle: Build and evaluate expressions using the digits one through nine and the simple arithmetic operators exercise solution codepad
412 05 Feb 2013 The 147 Puzzle: Compute all the solutions to 1/a + 1/b + 1/c + 1/d + 1/e = 1 in integers exercise solution codepad
397 07 Dec 2012 Wirth Problem 15.12: Compute a sequence of numbers defined by Wirth exercise solution codepad
284 01 Nov 2011 RIP John McCarthy: Implementation of the “Maxwell’s equations of software” from the LISP 1.5 Programmer’s Manual exercise solution codepad
271 13 Sep 2011 Tetrahedral Numbers: Find the base of the tetrahedron that contains 169179692512835000 balls exercise solution codepad
486 29 Oct 2013 The 16 Game: Determine the odds in a scratch-off game exercise solution codepad
413 08 Feb 2013 The Biggest Prime: Print all 17-million digits of the largest known prime number exercise solution codepad
215 01 Mar 2011 An Early LISP Program: A program to flatten a list, from the March 1960 LISP I manual exercise solution codepad
51 17 Jul 2009 International Mathematical Olympiad: Three exercises from 1960s math competitions exercise solution codepad
412 05 Feb 2013 The 147 Puzzle: Compute all the solutions to 1/a + 1/b + 1/c + 1/d + 1/e = 1 in integers exercise solution codepad
68 15 Sep 2009 Regular Expressions, Part 1: A parser for regular expressions exercise solution codepad
412 05 Feb 2013 The 147 Puzzle: Compute all the solutions to 1/a + 1/b + 1/c + 1/d + 1/e = 1 in integers exercise solution codepad
412 05 Feb 2013 The 147 Puzzle: Compute all the solutions to 1/a + 1/b + 1/c + 1/d + 1/e = 1 in integers exercise solution codepad
163 31 Aug 2010 Data Encryption Standard: Part 1: Basic block enciphering and deciphering using DES exercise solution codepad
206 28 Jan 2011 Population Count: Count the number of set bits (1-bits) in the binary representation of an integer exercise solution codepad
412 05 Feb 2013 The 147 Puzzle: Compute all the solutions to 1/a + 1/b + 1/c + 1/d + 1/e = 1 in integers exercise solution codepad
412 05 Feb 2013 The 147 Puzzle: Compute all the solutions to 1/a + 1/b + 1/c + 1/d + 1/e = 1 in integers exercise solution codepad
441 17 May 2013 Coin Change, Part 1: Classic problem to count the ways to make change exercise solution codepad
415 15 Feb 2013 Facebook Hacker Cup 2013, Round 1, Problem 1: Count the ways to win a card game exercise solution codepad
412 05 Feb 2013 The 147 Puzzle: Compute all the solutions to 1/a + 1/b + 1/c + 1/d + 1/e = 1 in integers exercise solution codepad
412 05 Feb 2013 The 147 Puzzle: Compute all the solutions to 1/a + 1/b + 1/c + 1/d + 1/e = 1 in integers exercise solution codepad
348 15 Jun 2012 Counting Ones: Count the number of 1-digits in the numbers less than n exercise solution codepad
412 05 Feb 2013 The 147 Puzzle: Compute all the solutions to 1/a + 1/b + 1/c + 1/d + 1/e = 1 in integers exercise solution codepad
412 05 Feb 2013 The 147 Puzzle: Compute all the solutions to 1/a + 1/b + 1/c + 1/d + 1/e = 1 in integers exercise solution codepad
130 23 Apr 2010 Modern Elliptic Curve Factorization, Part 1: Elliptic arithmetic using Montgomery’s parameterization exercise solution codepad
350 22 Jun 2012 Billboard Challenge, Part 1: First part of a Google recruiting challenge exercise solution codepad
177 19 Oct 2010 Text File Databases: Part 1: Functions to read records with fields in various formats exercise solution codepad
412 05 Feb 2013 The 147 Puzzle: Compute all the solutions to 1/a + 1/b + 1/c + 1/d + 1/e = 1 in integers exercise solution codepad
412 05 Feb 2013 The 147 Puzzle: Compute all the solutions to 1/a + 1/b + 1/c + 1/d + 1/e = 1 in integers exercise solution codepad
197 28 Dec 2010 Carmichael Numbers: Composite numbers such that an-1 1 (mod n) if a is prime to n exercise solution codepad
197 28 Dec 2010 Carmichael Numbers: Composite numbers such that an-1 ≡ 1 (mod n) if a is prime to n exercise solution codepad
167 14 Sep 2010 The Factorization Of F7: Part 1: Our fortieth anniversary celebration of Morrison and Brillhart’s method of integer factorization by continued fractions exercise solution codepad
415 15 Feb 2013 Facebook Hacker Cup 2013, Round 1, Problem 1: Count the ways to win a card game exercise solution codepad
86 17 Nov 2009 Master Mind, Part 1: Referee a two-player game of deductive logic exercise solution codepad
220 18 Mar 2011 Loopy Loops: Print the numbers from 1 to 1000 without using loops or conditionals exercise solution codepad
378 02 Oct 2012 AKS Primality Prover, Part 1: Two functions used by the AKS primality prover exercise solution codepad
361 31 Jul 2012 SEND + MORE = MONEY, Part 1: Two slow solutions to a classic problem of recreational mathematics exercise solution codepad
24 14 Apr 2009 Google Treasure Hunt 2008 Puzzle 4: A prime-number puzzle exercise solution codepad
364 10 Aug 2012 Minimum Scalar Product: A simple exercise from the practice round of Google Code Jam 2008 exercise solution codepad
426 26 Mar 2013 Google Code Jam Qualification Round Africa 2010, Revisited: Four solutions to a Google programming exercise, with various time complexities exercise solution codepad
211 15 Feb 2011 Google Code Jam Qualification Round Africa 2010: Three simple exercises exercise solution codepad
415 15 Feb 2013 Facebook Hacker Cup 2013, Round 1, Problem 1: Count the ways to win a card game exercise solution codepad
404 01 Jan 2013 Happy New Year!: Find expressions that evaluate to 2013 exercise solution codepad
442 21 May 2013 Coin Change, Part 2: A variant on the classic coin change problem exercise solution codepad
164 03 Sep 2010 Data Encryption Standard: Part 2: ECB, CBC, CFB and OFB block modes for DES and other block ciphers exercise solution codepad
131 27 Apr 2010 Modern Elliptic Curve Factorization, Part 2: Elliptic arithmetic using Montgomery’s parameterization exercise solution codepad
242 03 Jun 2011 Mersenne Primes: The Lucas-Lehmer test for identifying primes of the form 2n−1 exercise solution codepad
168 17 Sep 2010 The Factorization Of F7: Part 2: Our fortieth anniversary celebration of Morrison and Brillhart’s method of integer factorization by continued fractions exercise solution codepad
463 06 Aug 2013 Sophie Germain Primes: Primes p such that 2p+1 is also prime exercise solution codepad
351 26 Jun 2012 Billboard Challenge, Part 2: Second part of a Google recruiting challenge exercise solution codepad
87 20 Nov 2009 Master Mind, Part 2: Solve a Master Mind puzzle in five probes or less exercise solution codepad
69 18 Sep 2009 Regular Expressions, Part 2: The corresponding matcher exercise solution codepad
379 05 Oct 2012 AKS Primality Prover, Part 2: The primality prover of Agrawal, Kayal and Saxena exercise solution codepad
259 02 Aug 2011 The Nth Prime: The n prime, counting from p1 = 2 exercise solution codepad
259 02 Aug 2011 The Nth Prime: The n prime, counting from p1 = 2 exercise solution codepad
362 03 Aug 2012 SEND + MORE = MONEY, Part 2: Two hill-climbing solutions to a classic problem of recreational mathematics exercise solution codepad
178 22 Oct 2010 Text File Databases: Part 2: Various functions to process records with fields exercise solution codepad
232 29 Apr 2011 Rule 30 RNG: The random number generator from Mathematica, based on Stephen Wolfram’s Rule 30 cellular automata exercise solution codepad
232 29 Apr 2011 Rule 30 RNG: The random number generator from Mathematica, based on Stephen Wolfram’s Rule 30 cellular automata exercise solution codepad
443 24 May 2013 Coin Change, Part 3: Another variant on the classic coin change problem exercise solution codepad
70 22 Sep 2009 Regular Expressions, Part 3: A regular expression test suite exercise solution codepad
450 18 Jun 2013   3SUM: A classic of computer science: find three numbers in an array that sum to zero exercise solution codepad
273 20 Sep 2011 Project Euler Problem 3: Thorough explanation of integer factorization by trial division exercise solution codepad
165 07 Sep 2010 Data Encryption Standard: Part 3: Triple DES and cryptographic hashing exercise solution codepad
400 18 Dec 2012 Petals Around The Rose: A game to celebrate our 400th exercise exercise solution codepad
24 14 Apr 2009 Google Treasure Hunt 2008 Puzzle 4: A prime-number puzzle exercise solution codepad
166 10 Sep 2010 Data Encryption Standard: Part 4: DES driver program exercise solution codepad
65 04 Sep 2009 Ron’s Cipher #4: Stream cipher by Ron Rivest that underlies the SSL and WEP protocols exercise solution codepad
365 14 Aug 2012   4SUM: Find four numbers in an array that sum to zero exercise solution codepad
251 05 Jul 2011 Big Numbers: Examples: A library for big integers: display factorials to 50, determine if a number is prime, and compute its prime factors exercise solution codepad
267 30 Aug 2011 Hamming Numbers: List the numbers with no factors greater than 5, a classic problem popularized by Dijkstra exercise solution codepad
89 27 Nov 2009   $7.11: A math puzzle: a+b+c+d = a×b×c×d = 7.11 exercise solution codepad
89 27 Nov 2009 $7.11: A math puzzle: a+b+c+d = a×b×c×d = 7.11 exercise solution codepad
89 27 Nov 2009 $7.11: A math puzzle: a+b+c+d = a×b×c×d = 7.11 exercise solution codepad
475 20 Sep 2013 McCarthy’s 91 Function: A recursive function designed as a test case for formal verification exercise solution codepad
208 04 Feb 2011 Excel Columns: Numbers as in Excel column names, A=1, Z=26, IV=256 exercise solution codepad
375 18 Sep 2012   ABC Conjecture: Demonstrate a recently-proved conjecture of number theory exercise solution codepad
89 27 Nov 2009 $7.11: A math puzzle: a+b+c+d = a×b×c×d = 7.11 exercise solution codepad
416 19 Feb 2013 NPR Sunday Puzzle: Find two words containing the letters a, b, c, d, e and f exercise solution codepad
465 13 Aug 2013 Unix Paths: Convert relative Unix path to absolute, by Robert Fisher exercise solution codepad
477 27 Sep 2013 Double-Ended Priority Queues: Priority queues that permit access at both ends exercise solution codepad
369 28 Aug 2012 Random Access Lists: A clever data structure that provides O(log n) access to items in a sequential list, along with cons, head and tail exercise solution codepad
369 28 Aug 2012 Random Access Lists: A clever data structure that provides O(log n) access to items in a sequential list, along with cons, head and tail exercise solution codepad
45 26 Jun 2009 Treaps: A randomized dictionary data structure, provides in-order access to key exercise solution codepad
466 16 Aug 2013 Monkey Grid Puzzle: How many points can the monkey access? exercise solution codepad
261 09 Aug 2011 Hett’s Problem 1.28: Sorting a list of lists according to length of sublists exercise solution codepad
343 25 May 2012   Ackermann’s Function: A fast-growing function that tests recursion exercise solution codepad
213 22 Feb 2011 Sliding Window Minimum: List of minimums sliding across an input list exercise solution codepad
209 08 Feb 2011 The First Computer Program: Ada Lovelace’s program to compute Bernoulli numbers for Charles Babbage’s Analytical Engine exercise solution codepad
109 09 Feb 2010 Numerical Integration: Quadrature by the rectangular, trapezoidal and Simpson’s method, including adaptive quadrature exercise solution codepad
292 29 Nov 2011 AVL Trees, Extended: Add additional functionality to AVL trees exercise solution codepad
120 19 Mar 2010 Extending Pollard’s P−1 Factorization Algorithm: Add a second stage to allow larger factorizations exercise solution codepad
292 29 Nov 2011 AVL Trees, Extended: Add additional functionality to AVL trees exercise solution codepad
143 22 Jun 2010 Matrix Operations: Matrix addition, scalar multiplication, multiplication and transposition exercise solution codepad
241 31 May 2011 Big Numbers: Addition, Subtraction And Multiplication: A library for big integers: grade-school algorithms for addition, subtraction, and multiplication exercise solution codepad
241 31 May 2011 Big Numbers: Addition, Subtraction And Multiplication: A library for big integers: grade-school algorithms for addition, subtraction, and multiplication exercise solution codepad
48 07 Jul 2009 Modular Arithmetic: A function library for performing modular addition, subtraction, multiplication, division, and square root exercise solution codepad
368 24 Aug 2012 Hash Tables With Open Addressing: An alternative to hash tables with chaining for collision resolution exercise solution codepad
169 21 Sep 2010 Kaprekar Numbers: Square the number and add the digits in halves exercise solution codepad
57 07 Aug 2009   ADFGX: A classic German military field cipher from the First World War exercise solution codepad
246 17 Jun 2011   Adi Shamir’s Threshold Scheme: Use cryptography to share a secret, by Graham Enos exercise solution codepad
268 02 Sep 2011 Two String Exercises: Remove duplicate characters, and squish adjacent blanks exercise solution codepad
94 15 Dec 2009   Affine-Shift Cipher: A cryptographically weak but mathematically interesting cipher exercise solution codepad
426 26 Mar 2013 Google Code Jam Qualification Round Africa 2010, Revisited: Four solutions to a Google programming exercise, with various time complexities exercise solution codepad
211 15 Feb 2011 Google Code Jam Qualification Round Africa 2010: Three simple exercises exercise solution codepad
449 14 Jun 2013 The Digits of Pi, Again: Chudnovsky’s algorithm for the digits of pi exercise solution codepad
379 05 Oct 2012 AKS Primality Prover, Part 2: The primality prover of Agrawal, Kayal and Saxena exercise solution codepad
378 02 Oct 2012   AKS Primality Prover, Part 1: Two functions used by the AKS primality prover exercise solution codepad
379 05 Oct 2012   AKS Primality Prover, Part 2: The primality prover of Agrawal, Kayal and Saxena exercise solution codepad
378 02 Oct 2012 AKS Primality Prover, Part 1: Two functions used by the AKS primality prover exercise solution codepad
133 04 May 2010 Spectacular Seven: Compute the odds at jai alai exercise solution codepad
398 11 Dec 2012 Stepwise Program Development: A Heuristic Algorithm: A backtracking solution to a problem of Wirth exercise solution codepad
120 19 Mar 2010 Extending Pollard’s P−1 Factorization Algorithm: Add a second stage to allow larger factorizations exercise solution codepad
138 04 Jun 2010 Williams’ P+1 Factorization Algorithm: A factorization algorithm, similar to Pollard’s p−1 algorithm exercise solution codepad
161 24 Aug 2010 Daniel Shanks’ Square Form Factorization Algorithm: A simple and very fast factorization algorithm for integers between 105 and 1020 exercise solution codepad
52 21 Jul 2009 Pollard’s P−1 Factorization Algorithm: A simple factorization algorithm by John Pollard exercise solution codepad
236 13 May 2011 Dixon’s Factorization Algorithm: A slow, but theoretically important, algorithm for integer factorization exercise solution codepad
117 09 Mar 2010 Lexicographic Permutations: Continually generate the next permutation using an algorithm by Dijkstra exercise solution codepad
52 21 Jul 2009 Pollard’s P−1 Factorization Algorithm: A simple factorization algorithm by John Pollard exercise solution codepad
393 23 Nov 2012 Tonelli-Shanks Algorithm: Compute modular square roots exercise solution codepad
431 12 Apr 2013 Booth’s Algorithm: Determine of two cyclic lists are equal exercise solution codepad
357 17 Jul 2012 Breshenham’s Line-Drawing Algorithm: Draw straight lines using raster graphics exercise solution codepad
176 15 Oct 2010 Find The Longest Palindrome In A String: A beautiful linear-time algorithm due to Johan Jeuring exercise solution codepad
84 10 Nov 2009 Merge Sort: A fast, stable sorting algorithm, especially well-suited to linked lists exercise solution codepad
328 03 Apr 2012 Cornacchia’s Algorithm: Find solutions to quadratic diophantine equations exercise solution codepad
125 06 Apr 2010 Minimum Spanning Tree: Kruskal’s Algorithm: Find the minimum-cost tree that includes all the nodes in a graph exercise solution codepad
126 09 Apr 2010 Minimum Spanning Tree: Prim’s Algorithm: Find the minimum-cost tree that includes all the nodes in a graph exercise solution codepad
199 04 Jan 2011 Dijkstra’s Algorithm: Find the shortest path to all vertices of a graph from a single source, guest written by Graham Enos exercise solution codepad
56 04 Aug 2009 Lenstra’s Algorithm: Hendrik Lenstra’s original algorithm for elliptic curve factorization exercise solution codepad
204 21 Jan 0 Pollard Rho, Revisited: Richard Brent’s variant of John Pollard’s rho algorithm for integer factorization exercise solution codepad
236 13 May 2011 Dixon’s Factorization Algorithm: A slow, but theoretically important, algorithm for integer factorization exercise solution codepad
161 24 Aug 2010 Daniel Shanks’ Square Form Factorization Algorithm: A simple and very fast factorization algorithm for integers between 105 and 1020 exercise solution codepad
243 07 Jun 2011 Big Numbers: Division: A library for big integers: the grade-school algorithm for long division exercise solution codepad
345 05 Jun 2012 Binomial Heaps: Another algorithm for maintaining priority queues exercise solution codepad
59 14 Aug 2009 Pairing Heaps: A standard algorithm for maintaining priority queues exercise solution codepad
105 26 Jan 2010 Primality Checking, Revisited: The Baillie-Wagstaff algorithm for primality checking exercise solution codepad
66 08 Sep 2009 Porter Stemming: Martin Porter’s algorithm for removing suffices from word stems exercise solution codepad
395 30 Nov 2012 Selection, Revisited: A guaranteed linear-time algorithm for selection exercise solution codepad
449 14 Jun 2013 The Digits of Pi, Again: Chudnovsky’s algorithm for the digits of pi exercise solution codepad
175 12 Oct 2010 Rotate An Array: A simple but tricky exercise solved by an algorithm from the folklore of computing exercise solution codepad
56 04 Aug 2009 Lenstra’s Algorithm: Hendrik Lenstra’s original algorithm for elliptic curve factorization exercise solution codepad
140 11 Jun 2010 N-Queens: Our version of a classic algorithmic exercise exercise solution codepad
134 07 May 2010 Integer Logarithms: An improved algorithm is O(log n) instead of O(n) exercise solution codepad
392 20 Nov 2012 List Difference: Another algorithm on linked lists exercise solution codepad
272 16 Sep 2011 Pollard’s P−1 Factorization Algoritihm, Revisited: An improved second stage that is much faster than the original exercise solution codepad
485 25 Oct 2013 Pessimal Algorithms And Simplexity Analysis: The slowsort algorithm using the multiply and surrender algorithms exercise solution codepad
241 31 May 2011 Big Numbers: Addition, Subtraction And Multiplication: A library for big integers: grade-school algorithms for addition, subtraction, and multiplication exercise solution codepad
138 04 Jun 2010 Williams’ P+1 Factorization Algorithm: A factorization algorithm, similar to Pollard’s p−1 algorithm exercise solution codepad
102 15 Jan 2010 Three Binary Algorithms: Multiplication, division and greatest common divisor using binary arithmetic exercise solution codepad
391 16 Nov 2012 List Intersection And Union: Two algorithms on linked lists, with multiple solutions exercise solution codepad
154 30 Jul 2010 Fibonacci Numbers: Three algorithms taking exponential time, linear time, and logarithmic time exercise solution codepad
349 19 Jun 2012 Digits Of E: Two algorithms that compute the digits of e, one bounded, the other unbounded exercise solution codepad
447 07 Jun 2013 Sets: A classic data structure and associated algorithms exercise solution codepad
485 25 Oct 2013 Pessimal Algorithms And Simplexity Analysis: The slowsort algorithm using the multiply and surrender algorithms exercise solution codepad
111 16 Feb 2010 Soundex: An algorithm to assign people’s last names to equivalence classes based on similar spelling exercise solution codepad
8 20 Feb 2009 The Digits of Pi: A spigot algorithm to calculate the digits of pi exercise solution codepad
335 27 Apr 2012 Trabb Pardo Knuth Algorithm: Trivial algorithm, used to explore an unfamiliar language exercise solution codepad
138 04 Jun 2010 Williams’ P+1 Factorization Algorithm: A factorization algorithm, similar to Pollard’s p−1 algorithm exercise solution codepad
226 08 Apr 2011 Credit Card Validation: Validate decimal numbers using the Luhn algorithm exercise solution codepad
289 18 Nov 2011 Grade School Multiplication: Display the steps in the grade school multiplication algorithm exercise solution codepad
291 25 Nov 2011 AVL Trees: Basic implementation of the original balanced-tree algorithm exercise solution codepad
2 19 Feb 2009 Sieve of Eratosthenes: A Scheme implementation of an ancient algorithm exercise solution codepad
301 30 Dec 2011 Split: Split a list in two halves using the tortoise-and-hare algorithm exercise solution codepad
34 19 May 2009 Fermat’s Method: Integer factorization by Fermat’s algorithm exercise solution codepad
385 26 Oct 2012 Pythatorean Triples: Generate primitive pythagorean triples by an ancient algorithm exercise solution codepad
424 19 Mar 2013 Quadratic Sieve: Basic version of a powerful factoring algorithm exercise solution codepad
43 19 Jun 2009 Monte Carlo Factorization: Integer factorization via Pollard’s rho algorithm exercise solution codepad
62 25 Aug 2009 String Search: Knuth-Morris-Pratt: Search for a pattern in a text using an O(n) algorithm exercise solution codepad
63 28 Aug 2009 String Search: Boyer-Moore: Search for a pattern in a text using a fast and simple algorithm exercise solution codepad
64 01 Sep 2009 String Search: Rabin-Karp: Our final classic string-search algorithm exercise solution codepad
82 03 Nov 2009 Quick Sort: Tony Hoare’s divide-and-conquer sorting algorithm exercise solution codepad
27 24 Apr 2009 Word Hy-phen-a-tion By Com-pu-ter: Frank Liang’s hyphenation algorithm, used in TeX exercise solution codepad
335 27 Apr 2012 Trabb Pardo Knuth Algorithm: Trivial algorithm, used to explore an unfamiliar language exercise solution codepad
485 25 Oct 2013 Pessimal Algorithms And Simplexity Analysis: The slowsort algorithm using the multiply and surrender algorithms exercise solution codepad
40 09 Jun 2009 Longest Common Subsequence: A classic programming algorithm, with a solution that dates to folklore exercise solution codepad
17 20 Mar 2009 Dodgson's Doublets: A word game invented by the author of Alice in Wonderland exercise solution codepad
170 24 Sep 2010   Alien Numbers: An exercise from Google Code Jam exercise solution codepad
413 08 Feb 2013 The Biggest Prime: Print all 17-million digits of the largest known prime number exercise solution codepad
337 04 May 2012 Even-Odd Partition: Partition an array so all even integers precede all odd integers exercise solution codepad
453 28 Jun 2013 A Programming Puzzle: Write a function f so that f(f(n)) = -n for all integers n. exercise solution codepad
337 04 May 2012 Even-Odd Partition: Partition an array so all even integers precede all odd integers exercise solution codepad
120 19 Mar 2010 Extending Pollard’s P−1 Factorization Algorithm: Add a second stage to allow larger factorizations exercise solution codepad
118 12 Mar 2010 Traveling Salesman: Brute Force: Examine all possible permutations to find the least-cost tour exercise solution codepad
61 21 Aug 2009 String Search: Brute Force: Search for a pattern in a text by comparing the pattern to the text at all possible positions exercise solution codepad
401 21 Dec 2012 Building Primes: Build the largest prime with all right-most subsequences also prime exercise solution codepad
386 30 Oct 2012 Pandigital Numbers: Find sums that include all ten digits exercise solution codepad
125 06 Apr 2010 Minimum Spanning Tree: Kruskal’s Algorithm: Find the minimum-cost tree that includes all the nodes in a graph exercise solution codepad
126 09 Apr 2010 Minimum Spanning Tree: Prim’s Algorithm: Find the minimum-cost tree that includes all the nodes in a graph exercise solution codepad
412 05 Feb 2013 The 147 Puzzle: Compute all the solutions to 1/a + 1/b + 1/c + 1/d + 1/e = 1 in integers exercise solution codepad
199 04 Jan 2011 Dijkstra’s Algorithm: Find the shortest path to all vertices of a graph from a single source, guest written by Graham Enos exercise solution codepad
425 22 Mar 2013 Jumping Jack: Jump in increasing sizes along the number line exercise solution codepad
369 28 Aug 2012 Random Access Lists: A clever data structure that provides O(log n) access to items in a sequential list, along with cons, head and tail exercise solution codepad
440 14 May 2013 Optimal Alphabetical Order: Redefine the alphabet to improve alphabetical ordering exercise solution codepad
440 14 May 2013 Optimal Alphabetical Order: Redefine the alphabet to improve alphabetical ordering exercise solution codepad
440 14 May 2013 Optimal Alphabetical Order: Redefine the alphabet to improve alphabetical ordering exercise solution codepad
401 21 Dec 2012 Building Primes: Build the largest prime with all right-most subsequences also prime exercise solution codepad
463 06 Aug 2013 Sophie Germain Primes: Primes p such that 2p+1 is also prime exercise solution codepad
214 25 Feb 2011 Sieve Of Euler: An alternate, and slow, method of sieving for primes exercise solution codepad
368 24 Aug 2012 Hash Tables With Open Addressing: An alternative to hash tables with chaining for collision resolution exercise solution codepad
106 29 Jan 2010 Straddling Checkerboard: An alternative to the Polybius square for ciphers that must convert letters to digits exercise solution codepad
110 12 Feb 2010 Sieve of Atkin: A modern alternative to the Sieve of Eratosthenes for computing prime numbers exercise solution codepad
303 06 Jan 2012 Pritchard’s Wheel Sieve: An alternative to the Sieve of Eratosthenes with a faster asymptotic time complexity exercise solution codepad
119 16 Mar 2010 Traveling Salesman: Nearest Neighbor: A greedy heuristic that builds a path by always choosing the nearest unvisited point exercise solution codepad
300 27 Dec 2011 Cheating Hangman: A version of Hangman that nearly always wins exercise solution codepad
394 27 Nov 2012   Amazon Interview Question: Find the hundred points of a million closest to the origin exercise solution codepad
7 20 Feb 2009 Multiple Dwellings: A simple logic puzzle, solved with the amb non-deterministic operator exercise solution codepad
320 06 Mar 2012 Union Route Cipher: Military cipher used successfully by Union forces in the American Civil War exercise solution codepad
180 29 Oct 2010 Fibonacci Primes: Find primes among the fibonacci numbers; includes the Park-Miller random number generator and Miller-Rabin primality checker exercise solution codepad
32 12 May 2009 Loan Amortization: Calculate and print a simple loan amortization table exercise solution codepad
32 12 May 2009 Loan Amortization: Calculate and print a simple loan amortization table exercise solution codepad
207 01 Feb 2011 Cuckoo Hashing: A hashing system with guaranteed constant-time lookup and amortized constant-time insertion exercise solution codepad
197 28 Dec 2010 Carmichael Numbers: Composite numbers such that an-1 ≡ 1 (mod n) if a is prime to n exercise solution codepad
304 10 Jan 2012 Thirteen Anagram: 12+1=11+2 and “twelve plus one equals eleven plus two” are both anagrams exercise solution codepad
309 27 Jan 2012 Anagram Phrases: “Gin grammar prop six” is an anagram for “Programming Praxis” exercise solution codepad
309 27 Jan 2012   Anagram Phrases: “Gin grammar prop six” is an anagram for “Programming Praxis” exercise solution codepad
23 10 Apr 2009   Anagrams: Find anagrams in a dictionary exercise solution codepad
23 10 Apr 2009 Anagrams: Find anagrams in a dictionary exercise solution codepad
304 10 Jan 2012 Thirteen Anagram: 12+1=11+2 and “twelve plus one equals eleven plus two” are both anagrams exercise solution codepad
485 25 Oct 2013 Pessimal Algorithms And Simplexity Analysis: The slowsort algorithm using the multiply and surrender algorithms exercise solution codepad
209 08 Feb 2011 The First Computer Program: Ada Lovelace’s program to compute Bernoulli numbers for Charles Babbage’s Analytical Engine exercise solution codepad
22 07 Apr 2009 Flipping Pancakes: A sorting method analyzed by Bill Gates exercise solution codepad
90 01 Dec 2009 Wolves And Rabbits: Analyze population dynamics using the Lotka-Volterra equations exercise solution codepad
218 11 Mar 2011 Lowest Common Ancestor: Find the lowest node in a binary search tree that is a common ancestor to two given nodes exercise solution codepad
218 11 Mar 2011 Lowest Common Ancestor: Find the lowest node in a binary search tree that is a common ancestor to two given nodes exercise solution codepad
2 19 Feb 2009 Sieve of Eratosthenes: A Scheme implementation of an ancient algorithm exercise solution codepad
385 26 Oct 2012 Pythatorean Triples: Generate primitive pythagorean triples by an ancient algorithm exercise solution codepad
162 27 Aug 2010 Chinese Remainders: An ancient application of modular inverses exercise solution codepad
446 04 Jun 2013 Egyptian Fractions: An ancient method of representing fractions exercise solution codepad
153 27 Jul 2010 HAMURABI.BAS: Manage grain and land in ancient Sumeria exercise solution codepad
167 14 Sep 2010 The Factorization Of F7: Part 1: Our fortieth anniversary celebration of Morrison and Brillhart’s method of integer factorization by continued fractions exercise solution codepad
168 17 Sep 2010 The Factorization Of F7: Part 2: Our fortieth anniversary celebration of Morrison and Brillhart’s method of integer factorization by continued fractions exercise solution codepad
388 06 Nov 2012 Fix Something Annoying: Take control of your computing environment by fixing something that annoys you exercise solution codepad
388 06 Nov 2012 Fix Something Annoying: Take control of your computing environment by fixing something that annoys you exercise solution codepad
196 24 Dec 2010 Tracking Santa: How far does Santa travel on his annual journey? exercise solution codepad
345 05 Jun 2012 Binomial Heaps: Another algorithm for maintaining priority queues exercise solution codepad
392 20 Nov 2012 List Difference: Another algorithm on linked lists exercise solution codepad
409 22 Jan 2013 Splay Heaps: Yet another implementation of priority queues exercise solution codepad
482 15 Oct 2013 Find The Minimum Difference: Find the minimum difference between any item from on list and any item from another list exercise solution codepad
187 23 Nov 2010 String Subsets: Determine if one string is a subset of another exercise solution codepad
443 24 May 2013 Coin Change, Part 3: Another variant on the classic coin change problem exercise solution codepad
469 27 Aug 2013 Two Sieving Problems: Use sieves to answer two prime-number questions exercise solution codepad
276 30 Sep 2011 Logarithm Tables: Print old-fashioned tables of logarithms and anti-logarithms exercise solution codepad
344 01 Jun 2012 Square Roots: Four methods to compute square roots, including one from antiquity exercise solution codepad
317 24 Feb 2012 Remove Characters From A String: Remove from one string any character in a second string exercise solution codepad
88 24 Nov 2009 Sunrise, Sunset: Calculate the times of sunrise and sunset on any day anywhere in the world exercise solution codepad
482 15 Oct 2013 Find The Minimum Difference: Find the minimum difference between any item from on list and any item from another list exercise solution codepad
482 15 Oct 2013 Find The Minimum Difference: Find the minimum difference between any item from on list and any item from another list exercise solution codepad
384 23 Oct 2012 Universal Hash Function: Compute a hash for any native Scheme datatype exercise solution codepad
88 24 Nov 2009 Sunrise, Sunset: Calculate the times of sunrise and sunset on any day anywhere in the world exercise solution codepad
225 05 Apr 2011 Fortune: Print a random aphorism from a file exercise solution codepad
436 30 Apr 2013 First Unrepeated Character In A String: Find the first character that appears only once in a string exercise solution codepad
262 12 Aug 2011 Word Breaks: Insert spaces between words: applepie => apple pie exercise solution codepad
262 12 Aug 2011 Word Breaks: Insert spaces between words: applepie => apple pie exercise solution codepad
262 12 Aug 2011 Word Breaks: Insert spaces between words: applepie => apple pie exercise solution codepad
162 27 Aug 2010 Chinese Remainders: An ancient application of modular inverses exercise solution codepad
227 12 Apr 2011 House Of Representatives: Apportion representatives by the Huntington-Hill method exercise solution codepad
73 02 Oct 2009 Red-Black Trees: A purely functional dictionary data structure based on approximately-balanced trees exercise solution codepad
258 29 Jul 2011   Approximating Pi: Approximating pi with the logarithmic integral and Riemann’s R function exercise solution codepad
258 29 Jul 2011 Approximating Pi: Approximating pi with the logarithmic integral and Riemann’s R function exercise solution codepad
201 11 Jan 2011 Two Integrals: The exponential and logarithmic integral, and an approximation for prime-pi exercise solution codepad
75 09 Oct 2009 Calculating Pi: Calculate the value of π by monte-carlo methods and by an Archimedean method exercise solution codepad
304 10 Jan 2012 Thirteen Anagram: 12+1=11+2 and “twelve plus one equals eleven plus two” are both anagrams exercise solution codepad
430 09 Apr 2013 Cyclic Equality: Determine if two cyclic lists are equal exercise solution codepad
431 12 Apr 2013 Booth’s Algorithm: Determine of two cyclic lists are equal exercise solution codepad
181 02 Nov 2010 Emirps: Prime numbers that are prime when their digits are reversed, but not palindromic exercise solution codepad
319 02 Mar 2012 Balanced Delimiters: Determine if nested delimiters are properly balanced exercise solution codepad
181 02 Nov 2010 Emirps: Prime numbers that are prime when their digits are reversed, but not palindromic exercise solution codepad
310 31 Jan 2012 String Rotation: Determine if two strings are rotations of each other exercise solution codepad
313 10 Feb 2012 Search In An Ascending Matrix: Find a number in a matrix where both rows and columns are sorted in ascending order exercise solution codepad
237 17 May 2011 Two Bad Sorts: Stooge sort and bogosort are worse than quadratic exercise solution codepad
142 18 Jun 0 Parsing Command-Line Arguments: An old-style getopt function exercise solution codepad
48 07 Jul 2009 Modular Arithmetic: A function library for performing modular addition, subtraction, multiplication, division, and square root exercise solution codepad
205 25 Jan 2011 Rational Numbers: A library of basic arithmetic and comparison of fractions exercise solution codepad
195 21 Dec 2010 Interval Arithmetic: An exercise from SICP exercise solution codepad
198 31 Dec 2010   Arithmetic Drill: Repetitious drill for children learning basic arithmetic exercise solution codepad
358 20 Jul 2012 Infix Expression Evaluation: Write a parser to evaluate arithmetic expressions exercise solution codepad
128 16 Apr 2010 Expression Evaluation: Parse and evaluate an arithmetic expression with plus, minus, times, divide and parentheses exercise solution codepad
325 23 Mar 2012 Base-26 Arithmetic: Perform arithmetic on integers represented as strings of letters exercise solution codepad
129 20 Apr 2010 145 Puzzle: Build and evaluate expressions using the digits one through nine and the simple arithmetic operators exercise solution codepad
325 23 Mar 2012 Base-26 Arithmetic: Perform arithmetic on integers represented as strings of letters exercise solution codepad
102 15 Jan 2010 Three Binary Algorithms: Multiplication, division and greatest common divisor using binary arithmetic exercise solution codepad
198 31 Dec 2010 Arithmetic Drill: Repetitious drill for children learning basic arithmetic exercise solution codepad
306 17 Jan 2012 Guess The Number: Number-guessing game for children learning arithmetic exercise solution codepad
433 19 Apr 2013 Integer Roots: Calculate square roots and higher roots in integer arithmetic exercise solution codepad
130 23 Apr 2010 Modern Elliptic Curve Factorization, Part 1: Elliptic arithmetic using Montgomery’s parameterization exercise solution codepad
131 27 Apr 2010 Modern Elliptic Curve Factorization, Part 2: Elliptic arithmetic using Montgomery’s parameterization exercise solution codepad
421 08 Mar 2013 Knight Moves: Move a knight around a chess board exercise solution codepad
400 18 Dec 2012 Petals Around The Rose: A game to celebrate our 400th exercise exercise solution codepad
175 12 Oct 2010 Rotate An Array: A simple but tricky exercise solved by an algorithm from the folklore of computing exercise solution codepad
274 23 Sep 2011   Array Duplicates: Find the duplicate integer in a large array exercise solution codepad
460 26 Jul 2013 Find X[i] = i In An Array: Find an array element equal to its index exercise solution codepad
460 26 Jul 2013 Find X[i] = i In An Array: Find an array element equal to its index exercise solution codepad
224 01 Apr 2011 Maximum Difference In An Array: Find maximum Xj &minus Xi, with ij exercise solution codepad
422 12 Mar 2013 An Array Of Two Symbols: A learning experience for binary search exercise solution codepad
78 20 Oct 2009 Shuffle: Create random permutations of an array or linked list exercise solution codepad
77 16 Oct 2009 Growable Arrays: Arrays that grow and shrink at run-time, with O(log n) complexity per operation exercise solution codepad
337 04 May 2012 Even-Odd Partition: Partition an array so all even integers precede all odd integers exercise solution codepad
77 16 Oct 2009 Growable Arrays: Arrays that grow and shrink at run-time, with O(log n) complexity per operation exercise solution codepad
228 15 Apr 2011 Partition Numbers: Calculate the partition numbers, using memoization via growing arrays exercise solution codepad
365 14 Aug 2012 4SUM: Find four numbers in an array that sum to zero exercise solution codepad
450 18 Jun 2013 3SUM: A classic of computer science: find three numbers in an array that sum to zero exercise solution codepad
274 23 Sep 2011 Array Duplicates: Find the duplicate integer in a large array exercise solution codepad
279 14 Oct 2011 The First N Primes: Embedding the Sieve of Eratosthenes in a priority queue instead of an array exercise solution codepad
410 25 Jan 2013 Imperative Heaps: The classing implementation of priority queues embedded in an array exercise solution codepad
344 00 May 2012 Streaming Median: Find the medians of a set of numbers as they arrive in a stream exercise solution codepad
313 10 Feb 2012 Search In An Ascending Matrix: Find a number in a matrix where both rows and columns are sorted in ascending order exercise solution codepad
313 10 Feb 2012 Search In An Ascending Matrix: Find a number in a matrix where both rows and columns are sorted in ascending order exercise solution codepad
111 16 Feb 2010 Soundex: An algorithm to assign people’s last names to equivalence classes based on similar spelling exercise solution codepad
447 07 Jun 2013 Sets: A classic data structure and associated algorithms exercise solution codepad
303 06 Jan 2012 Pritchard’s Wheel Sieve: An alternative to the Sieve of Eratosthenes with a faster asymptotic time complexity exercise solution codepad
110 12 Feb 2010 Sieve of Atkin: A modern alternative to the Sieve of Eratosthenes for computing prime numbers exercise solution codepad
112 19 Feb 2010 Sieve Of Atkin, Improved: A faster version of the Sieve of Atkin exercise solution codepad
112 19 Feb 2010 Sieve Of Atkin, Improved: A faster version of the Sieve of Atkin exercise solution codepad
89 27 Nov 2009 $7.11: A math puzzle: a+b+c+d = a×b×c×d = 7.11 exercise solution codepad
89 27 Nov 2009 $7.11: A math puzzle: a+b+c+d = a×b×c×d = 7.11 exercise solution codepad
238 20 May 0 ISBN Validation: Validate ISBN book numbers, and fetch author and title from the internet exercise solution codepad
229 19 Apr 2011 Same Five Digits: A math puzzle from New Scientist, solved by guest author Bob Miller exercise solution codepad
17 20 Mar 2009 Dodgson's Doublets: A word game invented by the author of Alice in Wonderland exercise solution codepad
458 19 Jul 2013 J K Rowling: Identify an author using forensic linguistics exercise solution codepad
91 04 Dec 2009   Autokey: A cipher in which the input text forms part of the key exercise solution codepad
147 06 Jul 2010 Chaocipher: First look at a ninety-two year old autokey-type cipher exercise solution codepad
33 15 May 2009 Cellular Automata: Linear cellular automata as described by Stephen Wolfram in his book A New Kind of Science exercise solution codepad
33 15 May 2009 Cellular Automata: Linear cellular automata as described by Stephen Wolfram in his book A New Kind of Science exercise solution codepad
232 29 Apr 2011 Rule 30 RNG: The random number generator from Mathematica, based on Stephen Wolfram’s Rule 30 cellular automata exercise solution codepad
333 20 Apr 2012 John Horton Conway’s Game Of Life: The classic cellular automata exercise solution codepad
456 12 Jul 2013 Dynamic Hash Tables: Hash tables that grow and contract automatically to maintain a constant load factor exercise solution codepad
376 21 Sep 2012   Autumn Equinox: Calculate the length of the day; provides a time-handling library exercise solution codepad
291 25 Nov 2011   AVL Trees: Basic implementation of the original balanced-tree algorithm exercise solution codepad
292 29 Nov 2011   AVL Trees, Extended: Add additional functionality to AVL trees exercise solution codepad
292 29 Nov 2011 AVL Trees, Extended: Add additional functionality to AVL trees exercise solution codepad
209 08 Feb 2011 The First Computer Program: Ada Lovelace’s program to compute Bernoulli numbers for Charles Babbage’s Analytical Engine exercise solution codepad
233 03 May 2011 Squaring The Bishop: Charles Babbage’s game of word squares exercise solution codepad
398 11 Dec 2012 Stepwise Program Development: A Heuristic Algorithm: A backtracking solution to a problem of Wirth exercise solution codepad
4 19 Feb 2009 Sudoku: A backtracking solution to everybody’s favorite puzzle exercise solution codepad
367 21 Aug 2012 Two More Random Exercises: Two bad random number generators, the middle-square method and RANDU exercise solution codepad
237 17 May 2011 Two Bad Sorts: Stooge sort and bogosort are worse than quadratic exercise solution codepad
105 26 Jan 2010 Primality Checking, Revisited: The Baillie-Wagstaff algorithm for primality checking exercise solution codepad
419 01 Mar 2013   Baillie-Wagstaff Pseudoprimality Tester: Primality test, an improvement over the Miller-Rabin test exercise solution codepad
319 02 Mar 2012   Balanced Delimiters: Determine if nested delimiters are properly balanced exercise solution codepad
291 25 Nov 2011 AVL Trees: Basic implementation of the original balanced-tree algorithm exercise solution codepad
319 02 Mar 2012 Balanced Delimiters: Determine if nested delimiters are properly balanced exercise solution codepad
271 13 Sep 2011 Tetrahedral Numbers: Find the base of the tetrahedron that contains 169179692512835000 balls exercise solution codepad
322 13 Mar 2012 Perfect Power Predicate: Given a positive integer n, determine if there exists a b and e for which be = n exercise solution codepad
325 23 Mar 2012   Base-26 Arithmetic: Perform arithmetic on integers represented as strings of letters exercise solution codepad
46 30 Jun 2009 Steve Yegge’s Phone-Screen Coding Exercises: A simple set of programming exercises based on a blog entry by Steve Yegge exercise solution codepad
26 21 Apr 2009 Probabilistic Spell Checking: A probabilistic spell-checker based on a Bloom filter exercise solution codepad
60 18 Aug 2009 Blum Blum Shub: Stream cipher based on a cryptographically secure pseudo-random number generator exercise solution codepad
203 18 Jan 2011 Solitaire Cipher: Bruce Schneier’s strong cryptography based on a deck of playing cards exercise solution codepad
73 02 Oct 2009 Red-Black Trees: A purely functional dictionary data structure based on approximately-balanced trees exercise solution codepad
257 26 Jul 2011 More Prime-Counting Functions: Prime counting functions by Meissel and Lehmer, based on Legendre’s sum exercise solution codepad
49 10 Jul 2009 The Golden Ratio: Evaluate a continued fraction, based on my daughter’s math homework exercise solution codepad
83 06 Nov 2009 Heap Sort: A guaranteed O(log n) sorting method based on priority queues exercise solution codepad
111 16 Feb 2010 Soundex: An algorithm to assign people’s last names to equivalence classes based on similar spelling exercise solution codepad
232 29 Apr 2011 Rule 30 RNG: The random number generator from Mathematica, based on Stephen Wolfram’s Rule 30 cellular automata exercise solution codepad
271 13 Sep 2011 Tetrahedral Numbers: Find the base of the tetrahedron that contains 169179692512835000 balls exercise solution codepad
205 25 Jan 2011 Rational Numbers: A library of basic arithmetic and comparison of fractions exercise solution codepad
198 31 Dec 2010 Arithmetic Drill: Repetitious drill for children learning basic arithmetic exercise solution codepad
163 31 Aug 2010 Data Encryption Standard: Part 1: Basic block enciphering and deciphering using DES exercise solution codepad
489 29 Oct 2013 Queues: Implement a basic data structure exercise solution codepad
54 28 Jul 2009 Elliptic Curves: Library of basic functions on elliptic curves exercise solution codepad
291 25 Nov 2011 AVL Trees: Basic implementation of the original balanced-tree algorithm exercise solution codepad
428 02 Apr 2013 Quadratic Sieve With Large Primes: A (slightly) improved version of the basic quadratic sieve exercise solution codepad
451 21 Jun 2013 Multiple Polynomial Quadratic Sieve: A greatly improved version of the basic quadratic sieve exercise solution codepad
424 19 Mar 2013 Quadratic Sieve: Basic version of a powerful factoring algorithm exercise solution codepad
435 26 Apr 2013 Correct Horse Battery Staple, Improved: Fix a horrible bug in the original version exercise solution codepad
434 23 Apr 2013 Correct Horse Battery Staple: Randall Munro’s passphrase generator exercise solution codepad
416 19 Feb 2013 NPR Sunday Puzzle: Find two words containing the letters a, b, c, d, e and f exercise solution codepad
484 22 Oct 2013 David Gries’ Coffee Can Problem: Simulate the process of extracting beans from a coffee can exercise solution codepad
67 11 Sep 2009   Beautiful Code: A simple regular-expression matcher by Rob Pike exercise solution codepad
176 15 Oct 2010 Find The Longest Palindrome In A String: A beautiful linear-time algorithm due to Johan Jeuring exercise solution codepad
260 05 Aug 2011 Ninety-Nine Bottles Of Beer: The popular song exercise solution codepad
452 25 Jun 2013 Swap List Nodes: Swap the kth node from the beginning of a list with the kth node from the end of a list exercise solution codepad
438 07 May 2013 Three List Exercises: Three simple exercises on lists, for beginning programmers exercise solution codepad
330 10 Apr 2012 Galton: Simulate a marble-drop that forms a bell-shaped curve exercise solution codepad
179 26 Oct 2010   Benford’s Law: A useful mathematical oddity, and an example of text file databases exercise solution codepad
113 23 Feb 2010 Engineering A Sort Function: A high-performance quicksort by Jon Bentley and Doug McIlroy exercise solution codepad
190 03 Dec 2010 Maximum Sum Subsequence: A classic programming exercise due to Jon Bentley exercise solution codepad
322 13 Mar 2012 Perfect Power Predicate: Given a positive integer n, determine if there exists a b and e for which be = n exercise solution codepad
377 28 Sep 2012 Pocklington’s N−1 Primality Prover: Prove n prime if n−1 can be partially factored exercise solution codepad
287 11 Nov 2011 Generators: Write functions that yield a value, but can then be re-entered exercise solution codepad
281 21 Oct 2011 Sum, Revisited: SysV and Berkeley versions of the Unix V7 sum command exercise solution codepad
209 08 Feb 2011 The First Computer Program: Ada Lovelace’s program to compute Bernoulli numbers for Charles Babbage’s Analytical Engine exercise solution codepad
210 11 Feb 2011 Sums Of Powers: Use Bernoulli numbers to quickly compute sums of powers exercise solution codepad
121 23 Mar 2010 Texas Hold ‘Em: Find the best poker hand exercise solution codepad
161 24 Aug 2010 Daniel Shanks’ Square Form Factorization Algorithm: A simple and very fast factorization algorithm for integers between 105 and 1020 exercise solution codepad
482 15 Oct 2013 Find The Minimum Difference: Find the minimum difference between any item from on list and any item from another list exercise solution codepad
407 15 Jan 2013 Translate CSV To Html: Convert between tabular storage forms exercise solution codepad
455 05 Jul 2013 Weekdays Between Two Dates: Number of days between two dates, excluding Saturday and Sunday exercise solution codepad
455 05 Jul 2013 Weekdays Between Two Dates: Number of days between two dates, excluding Saturday and Sunday exercise solution codepad
139 08 Jun 2010 Diff: Find the differences between two text files exercise solution codepad
262 12 Aug 2011 Word Breaks: Insert spaces between words: applepie => apple pie exercise solution codepad
115 02 Mar 2010 Goldbach’s Conjecture: Every even number greater than two can be written as the sum of two primes exercise solution codepad
76 13 Oct 2009   Bifid: A simple but effective fractionating cipher, never used militarily exercise solution codepad
413 08 Feb 2013 The Biggest Prime: Print all 17-million digits of the largest known prime number exercise solution codepad
251 05 Jul 2011 Big Numbers: Examples: A library for big integers: display factorials to 50, determine if a number is prime, and compute its prime factors exercise solution codepad
249 28 Jun 2011 Big Numbers: Functions: A library for big integers: gcd, powering, square root, random numbers exercise solution codepad
241 31 May 2011 Big Numbers: Addition, Subtraction And Multiplication: A library for big integers: grade-school algorithms for addition, subtraction, and multiplication exercise solution codepad
245 14 Jun 2011 Big Numbers: Input And Output: A library for big integers: input and output with radix conversion exercise solution codepad
239 24 May 2011 Big Numbers: Getting Started: A library for big integers: representation, comparison, simple functions exercise solution codepad
247 21 Jun 2011 Big Numbers: Testing: A library for big integers: testing exercise solution codepad
243 07 Jun 2011 Big Numbers: Division: A library for big integers: the grade-school algorithm for long division exercise solution codepad
241 31 May 2011   Big Numbers: Addition, Subtraction And Multiplication: A library for big integers: grade-school algorithms for addition, subtraction, and multiplication exercise solution codepad
243 07 Jun 2011   Big Numbers: Division: A library for big integers: the grade-school algorithm for long division exercise solution codepad
251 05 Jul 2011   Big Numbers: Examples: A library for big integers: display factorials to 50, determine if a number is prime, and compute its prime factors exercise solution codepad
249 28 Jun 2011   Big Numbers: Functions: A library for big integers: gcd, powering, square root, random numbers exercise solution codepad
239 24 May 2011   Big Numbers: Getting Started: A library for big integers: representation, comparison, simple functions exercise solution codepad
245 14 Jun 2011   Big Numbers: Input And Output: A library for big integers: input and output with radix conversion exercise solution codepad
247 21 Jun 2011   Big Numbers: Testing: A library for big integers: testing exercise solution codepad
350 22 Jun 2012   Billboard Challenge, Part 1: First part of a Google recruiting challenge exercise solution codepad
351 26 Jun 2012   Billboard Challenge, Part 2: Second part of a Google recruiting challenge exercise solution codepad
101 12 Jan 2010 Calculating Sines: Calculate sines using Taylor series and the triple-angle formula, by Bill Cruise exercise solution codepad
22 07 Apr 2009 Flipping Pancakes: A sorting method analyzed by Bill Gates exercise solution codepad
373 11 Sep 2012 The Sum Of The First Billion Primes: Write a prime generator, and use it exercise solution codepad
102 15 Jan 2010 Three Binary Algorithms: Multiplication, division and greatest common divisor using binary arithmetic exercise solution codepad
102 15 Jan 2010 Three Binary Algorithms: Multiplication, division and greatest common divisor using binary arithmetic exercise solution codepad
206 28 Jan 2011 Population Count: Count the number of set bits (1-bits) in the binary representation of an integer exercise solution codepad
18 23 Mar 2009   Binary Search: A simple task, easy to get wrong exercise solution codepad
116 05 Mar 2010   Binary Search Tree: Classic data structure, providing insert, delete and lookup for ordered datatypes exercise solution codepad
414 12 Feb 2013   Binary Search Tree: In-Order Predecessor And Successor: Find the previous and next items in a tree exercise solution codepad
218 11 Mar 2011 Lowest Common Ancestor: Find the lowest node in a binary search tree that is a common ancestor to two given nodes exercise solution codepad
422 12 Mar 2013 An Array Of Two Symbols: A learning experience for binary search exercise solution codepad
483 18 Oct 2013 Binary Tree Traversal: Traverse a binary tree in pre-order and post-order exercise solution codepad
483 18 Oct 2013   Binary Tree Traversal: Traverse a binary tree in pre-order and post-order exercise solution codepad
3 19 Feb 2009   Bingo: Calculate the probability of winning at Bingo exercise solution codepad
3 19 Feb 2009 Bingo: Calculate the probability of winning at Bingo exercise solution codepad
294 06 Dec 2011 Pascal’s Triangle: Display the binomial coefficients exercise solution codepad
345 05 Jun 2012   Binomial Heaps: Another algorithm for maintaining priority queues exercise solution codepad
381 12 Oct 2012 Birthday Paradox: Use simulation to demonstrate the birthday paradox exercise solution codepad
381 12 Oct 2012   Birthday Paradox: Use simulation to demonstrate the birthday paradox exercise solution codepad
233 03 May 2011 Squaring The Bishop: Charles Babbage’s game of word squares exercise solution codepad
464 09 Aug 2013   Bit Hacks: A time-honored tradition, and useful exercise solution codepad
467 20 Aug 2013 More Bit Hacks: A time-honored tradition, and useful exercise solution codepad
471 03 Sep 2013 Yet More Bit Hacks: A time-honored tradition, and useful exercise solution codepad
206 28 Jan 2011 Population Count: Count the number of set bits (1-bits) in the binary representation of an integer exercise solution codepad
268 02 Sep 2011 Two String Exercises: Remove duplicate characters, and squish adjacent blanks exercise solution codepad
164 03 Sep 2010 Data Encryption Standard: Part 2: ECB, CBC, CFB and OFB block modes for DES and other block ciphers exercise solution codepad
163 31 Aug 2010 Data Encryption Standard: Part 1: Basic block enciphering and deciphering using DES exercise solution codepad
164 03 Sep 2010 Data Encryption Standard: Part 2: ECB, CBC, CFB and OFB block modes for DES and other block ciphers exercise solution codepad
329 06 Apr 2012 Voters: Watch voting blocks migrate on the screen exercise solution codepad
46 30 Jun 2009 Steve Yegge’s Phone-Screen Coding Exercises: A simple set of programming exercises based on a blog entry by Steve Yegge exercise solution codepad
146 02 Jul 2010 Contents: Chronological Listing Of Exercises: Blog management exercise solution codepad
148 09 Jul 2010 Contents: Permuted Table Of Contents: Blog management exercise solution codepad
150 16 Jul 2010 Contents: Themes: Blog Management exercise solution codepad
26 21 Apr 2009 Probabilistic Spell Checking: A probabilistic spell-checker based on a Bloom filter exercise solution codepad
370 31 Aug 2012 Once In A Blue Moon: Find months with two full moons exercise solution codepad
60 18 Aug 2009   Blum Blum Shub: Stream cipher based on a cryptographically secure pseudo-random number generator exercise solution codepad
60 18 Aug 2009 Blum Blum Shub: Stream cipher based on a cryptographically secure pseudo-random number generator exercise solution codepad
470 30 Aug 2013   BMI Calculator: Calculate a person’s body mass index exercise solution codepad
421 08 Mar 2013 Knight Moves: Move a knight around a chess board exercise solution codepad
229 19 Apr 2011 Same Five Digits: A math puzzle from New Scientist, solved by guest author Bob Miller exercise solution codepad
58 11 Aug 2009 Uncle Bob’s Bowling Game Kata: Use pattern-matching on lists to solve a classic object-oriented programming exercise exercise solution codepad
470 30 Aug 2013 BMI Calculator: Calculate a person’s body mass index exercise solution codepad
237 17 May 2011 Two Bad Sorts: Stooge sort and bogosort are worse than quadratic exercise solution codepad
33 15 May 2009 Cellular Automata: Linear cellular automata as described by Stephen Wolfram in his book A New Kind of Science exercise solution codepad
238 20 May 0 ISBN Validation: Validate ISBN book numbers, and fetch author and title from the internet exercise solution codepad
431 12 Apr 2013   Booth’s Algorithm: Determine of two cyclic lists are equal exercise solution codepad
304 10 Jan 2012 Thirteen Anagram: 12+1=11+2 and “twelve plus one equals eleven plus two” are both anagrams exercise solution codepad
477 27 Sep 2013 Double-Ended Priority Queues: Priority queues that permit access at both ends exercise solution codepad
313 10 Feb 2012 Search In An Ascending Matrix: Find a number in a matrix where both rows and columns are sorted in ascending order exercise solution codepad
260 05 Aug 2011 Ninety-Nine Bottles Of Beer: The popular song exercise solution codepad
349 19 Jun 2012 Digits Of E: Two algorithms that compute the digits of e, one bounded, the other unbounded exercise solution codepad
58 11 Aug 2009 Uncle Bob’s Bowling Game Kata: Use pattern-matching on lists to solve a classic object-oriented programming exercise exercise solution codepad
63 28 Aug 2009 String Search: Boyer-Moore: Search for a pattern in a text using a fast and simple algorithm exercise solution codepad
277 04 Oct 2011   Brainfuck: Interpreter for a Turing-line language exercise solution codepad
262 12 Aug 2011 Word Breaks: Insert spaces between words: applepie => apple pie exercise solution codepad
28 28 Apr 2009 Morse Code: Translating the dots-and-dashes of Samuel Finley Breese Morse’s telegraph code exercise solution codepad
204 21 Jan 0 Pollard Rho, Revisited: Richard Brent’s variant of John Pollard’s rho algorithm for integer factorization exercise solution codepad
357 17 Jul 2012   Breshenham’s Line-Drawing Algorithm: Draw straight lines using raster graphics exercise solution codepad
445 31 May 2013 The Seven Bridges of Königsberg: A classic graph puzzle due to Leonhard Euler exercise solution codepad
167 14 Sep 2010 The Factorization Of F7: Part 1: Our fortieth anniversary celebration of Morrison and Brillhart’s method of integer factorization by continued fractions exercise solution codepad
168 17 Sep 2010 The Factorization Of F7: Part 2: Our fortieth anniversary celebration of Morrison and Brillhart’s method of integer factorization by continued fractions exercise solution codepad
203 18 Jan 2011 Solitaire Cipher: Bruce Schneier’s strong cryptography based on a deck of playing cards exercise solution codepad
118 12 Mar 2010 Traveling Salesman: Brute Force: Examine all possible permutations to find the least-cost tour exercise solution codepad
61 21 Aug 2009 String Search: Brute Force: Search for a pattern in a text by comparing the pattern to the text at all possible positions exercise solution codepad
80 27 Oct 2009 Three Quadratic Sorts: Bubble sort, selection sort and insertion sort exercise solution codepad
423 15 Mar 2013   Buffon’s Needle: Compute the value of π with a simulation exercise solution codepad
435 26 Apr 2013 Correct Horse Battery Staple, Improved: Fix a horrible bug in the original version exercise solution codepad
356 13 Jul 2012 The Evolution Of Flibs: Use genetic programming to build a finite state machine exercise solution codepad
39 05 Jun 2009 Ternary Search Tries: Build a function library for handling ternary search tries exercise solution codepad
129 20 Apr 2010 145 Puzzle: Build and evaluate expressions using the digits one through nine and the simple arithmetic operators exercise solution codepad
401 21 Dec 2012   Building Primes: Build the largest prime with all right-most subsequences also prime exercise solution codepad
119 16 Mar 2010 Traveling Salesman: Nearest Neighbor: A greedy heuristic that builds a path by always choosing the nearest unvisited point exercise solution codepad
401 21 Dec 2012 Building Primes: Build the largest prime with all right-most subsequences also prime exercise solution codepad
461 30 Jul 2013 Who Buys The Croissants?: Simulate an important Friday-morning question exercise solution codepad
6 20 Feb 2009 ROT13: A simple Caesar-shift cipher exercise solution codepad
32 12 May 2009 Loan Amortization: Calculate and print a simple loan amortization table exercise solution codepad
470 30 Aug 2013 BMI Calculator: Calculate a person’s body mass index exercise solution codepad
219 15 Mar 2011 Look And Say: Calculate John Horton Conway’s "Look and Say" sequence exercise solution codepad
479 04 Oct 2013 Calculating Statistics: Read a file of integers and calculate mean, median and mode exercise solution codepad
101 12 Jan 2010 Calculating Sines: Calculate sines using Taylor series and the triple-angle formula, by Bill Cruise exercise solution codepad
433 19 Apr 2013 Integer Roots: Calculate square roots and higher roots in integer arithmetic exercise solution codepad
95 18 Dec 2009 Calculating Logarithms: Use the methods of Newton and Euler to calculate square roots and logarithms exercise solution codepad
123 30 Mar 2010 Passover: Calculate the dates of the Jewish holidays Rosh Hashanah and Passover exercise solution codepad
174 08 Oct 2010 Zeller’s Congruence: Calculate the day of the week for a given date exercise solution codepad
248 24 Jun 2011 Thank God It’s Friday!: Three methods to calculate the day of the week exercise solution codepad
8 20 Feb 2009 The Digits of Pi: A spigot algorithm to calculate the digits of pi exercise solution codepad
376 21 Sep 2012 Autumn Equinox: Calculate the length of the day; provides a time-handling library exercise solution codepad
275 27 Sep 2011 Statistics: Calculate the mean, standard deviation, linear regression and correlation exercise solution codepad
104 22 Jan 2010 Phases Of The Moon: Calculate the number of days since the last new moon exercise solution codepad
228 15 Apr 2011 Partition Numbers: Calculate the partition numbers, using memoization via growing arrays exercise solution codepad
3 19 Feb 2009 Bingo: Calculate the probability of winning at Bingo exercise solution codepad
399 14 Dec 2012 115132219018763992565095597973971522401: Calculate the sequence of narcissistic numbers exercise solution codepad
88 24 Nov 2009 Sunrise, Sunset: Calculate the times of sunrise and sunset on any day anywhere in the world exercise solution codepad
75 09 Oct 2009 Calculating Pi: Calculate the value of π by monte-carlo methods and by an Archimedean method exercise solution codepad
95 18 Dec 2009   Calculating Logarithms: Use the methods of Newton and Euler to calculate square roots and logarithms exercise solution codepad
478 01 Oct 2013 Lucas Sequences: Fast methods for calculating Lucas sequences, similar to Fibonacci sequences exercise solution codepad
75 09 Oct 2009   Calculating Pi: Calculate the value of π by monte-carlo methods and by an Archimedean method exercise solution codepad
101 12 Jan 2010   Calculating Sines: Calculate sines using Taylor series and the triple-angle formula, by Bill Cruise exercise solution codepad
479 04 Oct 2013   Calculating Statistics: Read a file of integers and calculate mean, median and mode exercise solution codepad
305 13 Jan 2012 Excel’s XIRR Function: Numerical calculation of a derivative exercise solution codepad
256 22 Jul 2011 Counting Primes Using Legendre’s Formula: Recreate Legendre’s two-century old calculation of the number of primes less than a million exercise solution codepad
53 24 Jul 2009 Let’s Make A Deal!: Simulate a tricky probability calculation exercise solution codepad
470 30 Aug 2013 BMI Calculator: Calculate a person’s body mass index exercise solution codepad
1 19 Feb 2009 RPN Calculator: Evaluate numeric expressions at the command line exercise solution codepad
15 13 Mar 2009 Friday, the Thirteenth: A small calendar library, and a simple use of it exercise solution codepad
98 01 Jan 2010 Cal: Print a twelve-month calendar exercise solution codepad
98 01 Jan 2010   Cal: Print a twelve-month calendar exercise solution codepad
377 28 Sep 2012 Pocklington’s N−1 Primality Prover: Prove n prime if n−1 can be partially factored exercise solution codepad
115 02 Mar 2010 Goldbach’s Conjecture: Every even number greater than two can be written as the sum of two primes exercise solution codepad
484 22 Oct 2013 David Gries’ Coffee Can Problem: Simulate the process of extracting beans from a coffee can exercise solution codepad
466 16 Aug 2013 Monkey Grid Puzzle: How many points can the monkey access? exercise solution codepad
287 11 Nov 2011 Generators: Write functions that yield a value, but can then be re-entered exercise solution codepad
484 22 Oct 2013 David Gries’ Coffee Can Problem: Simulate the process of extracting beans from a coffee can exercise solution codepad
415 15 Feb 2013 Facebook Hacker Cup 2013, Round 1, Problem 1: Count the ways to win a card game exercise solution codepad
203 18 Jan 2011 Solitaire Cipher: Bruce Schneier’s strong cryptography based on a deck of playing cards exercise solution codepad
226 08 Apr 2011 Credit Card Validation: Validate decimal numbers using the Luhn algorithm exercise solution codepad
155 03 Aug 2010   Carl Hewitt’s Same-Fringe Problem: Do two trees have the same leaves, solved with streams (lazy lists) exercise solution codepad
43 19 Jun 2009 Monte Carlo Factorization: Integer factorization via Pollard’s rho algorithm exercise solution codepad
197 28 Dec 2010   Carmichael Numbers: Composite numbers such that an-1 ≡ 1 (mod n) if a is prime to n exercise solution codepad
250 01 Jul 2011 Feet And Inches: Convert decimal inches to carpenters’ fractions exercise solution codepad
472 06 Sep 2013   Cartesian Product: Cross-product of the items in a variable-length list of variable-length lists exercise solution codepad
475 20 Sep 2013 McCarthy’s 91 Function: A recursive function designed as a test case for formal verification exercise solution codepad
346 08 Jun 2012 Cat: The Unix V7 utility to catenate and print exercise solution codepad
346 08 Jun 2012   Cat: The Unix V7 utility to catenate and print exercise solution codepad
164 03 Sep 2010 Data Encryption Standard: Part 2: ECB, CBC, CFB and OFB block modes for DES and other block ciphers exercise solution codepad
416 19 Feb 2013 NPR Sunday Puzzle: Find two words containing the letters a, b, c, d, e and f exercise solution codepad
400 18 Dec 2012 Petals Around The Rose: A game to celebrate our 400th exercise exercise solution codepad
427 29 Mar 2013 One Million Hits: Celebrating our one-millionth hit! exercise solution codepad
167 14 Sep 2010 The Factorization Of F7: Part 1: Our fortieth anniversary celebration of Morrison and Brillhart’s method of integer factorization by continued fractions exercise solution codepad
168 17 Sep 2010 The Factorization Of F7: Part 2: Our fortieth anniversary celebration of Morrison and Brillhart’s method of integer factorization by continued fractions exercise solution codepad
33 15 May 2009 Cellular Automata: Linear cellular automata as described by Stephen Wolfram in his book A New Kind of Science exercise solution codepad
33 15 May 2009   Cellular Automata: Linear cellular automata as described by Stephen Wolfram in his book A New Kind of Science exercise solution codepad
232 29 Apr 2011 Rule 30 RNG: The random number generator from Mathematica, based on Stephen Wolfram’s Rule 30 cellular automata exercise solution codepad
333 20 Apr 2012 John Horton Conway’s Game Of Life: The classic cellular automata exercise solution codepad
372 07 Sep 2012 The First Two Programs: Hello World and a fahrenheit / celsius conversion table exercise solution codepad
372 07 Sep 2012 The First Two Programs: Hello World and a fahrenheit / celsius conversion table exercise solution codepad
164 03 Sep 2010 Data Encryption Standard: Part 2: ECB, CBC, CFB and OFB block modes for DES and other block ciphers exercise solution codepad
368 24 Aug 2012 Hash Tables With Open Addressing: An alternative to hash tables with chaining for collision resolution exercise solution codepad
353 03 Jul 2012 Chopping Words: Form a chain of words by removing letters one at a time exercise solution codepad
221 22 Mar 2011 Two Kaprekar Exercises: Kaprekar chains and Kaprekar numbers, from the Indian mathematician Dattaraya Ramchandra Kaprekar exercise solution codepad
11 27 Feb 2009 Mark V. Shaney: Generate parodies of a text using a Markov chain exercise solution codepad
350 22 Jun 2012 Billboard Challenge, Part 1: First part of a Google recruiting challenge exercise solution codepad
351 26 Jun 2012 Billboard Challenge, Part 2: Second part of a Google recruiting challenge exercise solution codepad
350 22 Jun 2012 Billboard Challenge, Part 1: First part of a Google recruiting challenge exercise solution codepad
351 26 Jun 2012 Billboard Challenge, Part 2: Second part of a Google recruiting challenge exercise solution codepad
183 09 Nov 2010 Subset Sums: Third level of the Greplin Programming Challenge, using dynamic programming and memoization exercise solution codepad
417 22 Feb 2013 Floupia: Make change in a strange currency exercise solution codepad
441 17 May 2013 Coin Change, Part 1: Classic problem to count the ways to make change exercise solution codepad
442 21 May 2013 Coin Change, Part 2: A variant on the classic coin change problem exercise solution codepad
443 24 May 2013 Coin Change, Part 3: Another variant on the classic coin change problem exercise solution codepad
442 21 May 2013 Coin Change, Part 2: A variant on the classic coin change problem exercise solution codepad
443 24 May 2013 Coin Change, Part 3: Another variant on the classic coin change problem exercise solution codepad
331 13 Apr 2012 McNugget Numbers, Revisited: The classic coin problem in disguise, how to count the number of ways to make change exercise solution codepad
441 17 May 2013 Coin Change, Part 1: Classic problem to count the ways to make change exercise solution codepad
371 04 Sep 2012 Fountain Codes: Transmit files over a lossy channel exercise solution codepad
473 12 Sep 2013 Diffie Hellman Key Exchange: Manage secure exchanges on an insecure communications channel exercise solution codepad
342 22 May 2012 Hamming Codes: Send messages over a noisy channel without error exercise solution codepad
147 06 Jul 2010   Chaocipher: First look at a ninety-two year old autokey-type cipher exercise solution codepad
264 19 Aug 2011 First Non-Repeating Character: Find the first character in a string that doesn’t repeat later in the string exercise solution codepad
317 24 Feb 2012 Remove Characters From A String: Remove from one string any character in a second string exercise solution codepad
436 30 Apr 2013 First Unrepeated Character In A String: Find the first character that appears only once in a string exercise solution codepad
264 19 Aug 2011 First Non-Repeating Character: Find the first character in a string that doesn’t repeat later in the string exercise solution codepad
268 02 Sep 2011 Two String Exercises: Remove duplicate characters, and squish adjacent blanks exercise solution codepad
317 24 Feb 2012 Remove Characters From A String: Remove from one string any character in a second string exercise solution codepad
159 17 Aug 2010 Cut: Select fields or characters from input lines exercise solution codepad
448 11 Jun 2013 Longest Substring Of Two Unique Characters: Longest run of consecutive characters in a string that contains only two unique characters exercise solution codepad
448 11 Jun 2013 Longest Substring Of Two Unique Characters: Longest run of consecutive characters in a string that contains only two unique characters exercise solution codepad
448 11 Jun 2013 Longest Substring Of Two Unique Characters: Longest run of consecutive characters in a string that contains only two unique characters exercise solution codepad
436 30 Apr 2013 First Unrepeated Character In A String: Find the first character that appears only once in a string exercise solution codepad
209 08 Feb 2011 The First Computer Program: Ada Lovelace’s program to compute Bernoulli numbers for Charles Babbage’s Analytical Engine exercise solution codepad
233 03 May 2011 Squaring The Bishop: Charles Babbage’s game of word squares exercise solution codepad
300 27 Dec 2011   Cheating Hangman: A version of Hangman that nearly always wins exercise solution codepad
106 29 Jan 2010 Straddling Checkerboard: An alternative to the Polybius square for ciphers that must convert letters to digits exercise solution codepad
29 01 May 2009 Primality Checking: A probabilistic primality checker by Gary Miller and Michael Rabin exercise solution codepad
180 29 Oct 2010 Fibonacci Primes: Find primes among the fibonacci numbers; includes the Park-Miller random number generator and Miller-Rabin primality checker exercise solution codepad
29 01 May 2009 Primality Checking: A probabilistic primality checker by Gary Miller and Michael Rabin exercise solution codepad
26 21 Apr 2009 Probabilistic Spell Checking: A probabilistic spell-checker based on a Bloom filter exercise solution codepad
25 17 Apr 2009 Spell Checking: A spell-checker in a trie-based dictionary exercise solution codepad
107 02 Feb 2010 Proving Primality: A deterministic, not probabilistic, method of checking primality exercise solution codepad
105 26 Jan 2010 Primality Checking, Revisited: The Baillie-Wagstaff algorithm for primality checking exercise solution codepad
105 26 Jan 2010 Primality Checking, Revisited: The Baillie-Wagstaff algorithm for primality checking exercise solution codepad
282 25 Oct 2011 Cksum: Unix checksum utility exercise solution codepad
421 08 Mar 2013 Knight Moves: Move a knight around a chess board exercise solution codepad
306 17 Jan 2012 Guess The Number: Number-guessing game for children learning arithmetic exercise solution codepad
198 31 Dec 2010 Arithmetic Drill: Repetitious drill for children learning basic arithmetic exercise solution codepad
38 02 Jun 2009 Pig Latin: A simple exercise to solve a children’s game exercise solution codepad
216 04 Mar 2011 Chutes And Ladders: Simulate a child’s game, and compute its statistics exercise solution codepad
162 27 Aug 2010   Chinese Remainders: An ancient application of modular inverses exercise solution codepad
144 25 Jun 2010 Learn A New Language: Solve the exercise of your choice in an unfamiliar language exercise solution codepad
316 21 Feb 2012 Learn A New Language: Solve the exercise of your choice in an unfamiliar language exercise solution codepad
119 16 Mar 2010 Traveling Salesman: Nearest Neighbor: A greedy heuristic that builds a path by always choosing the nearest unvisited point exercise solution codepad
353 03 Jul 2012   Chopping Words: Form a chain of words by removing letters one at a time exercise solution codepad
171 28 Sep 2010 Maxiphobic Heaps: A priority-queue data structure, similar to leftist heaps, due to Chris Okasaki exercise solution codepad
402 25 Dec 2012 The Twelve Days of Christmas: Count the gifts of Christmas exercise solution codepad
402 25 Dec 2012 The Twelve Days of Christmas: Count the gifts of Christmas exercise solution codepad
146 02 Jul 2010 Contents: Chronological Listing Of Exercises: Blog management exercise solution codepad
449 14 Jun 2013 The Digits of Pi, Again: Chudnovsky’s algorithm for the digits of pi exercise solution codepad
216 04 Mar 2011   Chutes And Ladders: Simulate a child’s game, and compute its statistics exercise solution codepad
65 04 Sep 2009 Ron’s Cipher #4: Stream cipher by Ron Rivest that underlies the SSL and WEP protocols exercise solution codepad
47 03 Jul 2009 The Playfair Cipher: A classic military field cipher exercise solution codepad
94 15 Dec 2009 Affine-Shift Cipher: A cryptographically weak but mathematically interesting cipher exercise solution codepad
37 29 May 2009 Double Transposition Cipher: A simple and effective cipher, easy to perform by hand exercise solution codepad
20 31 Mar 2009 Rail-Fence Cipher: A simple transposition cipher exercise solution codepad
60 18 Aug 2009 Blum Blum Shub: Stream cipher based on a cryptographically secure pseudo-random number generator exercise solution codepad
203 18 Jan 2011 Solitaire Cipher: Bruce Schneier’s strong cryptography based on a deck of playing cards exercise solution codepad
65 04 Sep 2009 Ron’s Cipher #4: Stream cipher by Ron Rivest that underlies the SSL and WEP protocols exercise solution codepad
37 29 May 2009 Double Transposition Cipher: A simple and effective cipher, easy to perform by hand exercise solution codepad
57 07 Aug 2009 ADFGX: A classic German military field cipher from the First World War exercise solution codepad
91 04 Dec 2009 Autokey: A cipher in which the input text forms part of the key exercise solution codepad
320 06 Mar 2012 Union Route Cipher: Military cipher used successfully by Union forces in the American Civil War exercise solution codepad
76 13 Oct 2009 Bifid: A simple but effective fractionating cipher, never used militarily exercise solution codepad
106 29 Jan 2010 Straddling Checkerboard: An alternative to the Polybius square for ciphers that must convert letters to digits exercise solution codepad
164 03 Sep 2010 Data Encryption Standard: Part 2: ECB, CBC, CFB and OFB block modes for DES and other block ciphers exercise solution codepad
12 03 Mar 2009 Creation: Cryptanalysis of a Vigenère cipher exercise solution codepad
147 06 Jul 2010 Chaocipher: First look at a ninety-two year old autokey-type cipher exercise solution codepad
20 31 Mar 2009 Rail-Fence Cipher: A simple transposition cipher exercise solution codepad
47 03 Jul 2009 The Playfair Cipher: A classic military field cipher exercise solution codepad
50 14 Jul 2009 The Daily Cryptogram: Solve a monoalphabetic substitution cipher exercise solution codepad
6 20 Feb 2009 ROT13: A simple Caesar-shift cipher exercise solution codepad
94 15 Dec 2009 Affine-Shift Cipher: A cryptographically weak but mathematically interesting cipher exercise solution codepad
320 06 Mar 2012 Union Route Cipher: Military cipher used successfully by Union forces in the American Civil War exercise solution codepad
320 06 Mar 2012 Union Route Cipher: Military cipher used successfully by Union forces in the American Civil War exercise solution codepad
282 25 Oct 2011   Cksum: Unix checksum utility exercise solution codepad
111 16 Feb 2010 Soundex: An algorithm to assign people’s last names to equivalence classes based on similar spelling exercise solution codepad
140 11 Jun 2010 N-Queens: Our version of a classic algorithmic exercise exercise solution codepad
333 20 Apr 2012 John Horton Conway’s Game Of Life: The classic cellular automata exercise solution codepad
442 21 May 2013 Coin Change, Part 2: A variant on the classic coin change problem exercise solution codepad
443 24 May 2013 Coin Change, Part 3: Another variant on the classic coin change problem exercise solution codepad
331 13 Apr 2012 McNugget Numbers, Revisited: The classic coin problem in disguise, how to count the number of ways to make change exercise solution codepad
447 07 Jun 2013 Sets: A classic data structure and associated algorithms exercise solution codepad
116 05 Mar 2010 Binary Search Tree: Classic data structure, providing insert, delete and lookup for ordered datatypes exercise solution codepad
96 22 Dec 2009 Permuted Index: David Parnas’ classic deconstruction of the keyword-in-context index exercise solution codepad
279 11 Oct 2011 Tower Of Hanoi: Classic demonstration of recursion exercise solution codepad
57 07 Aug 2009 ADFGX: A classic German military field cipher from the First World War exercise solution codepad
445 31 May 2013 The Seven Bridges of Königsberg: A classic graph puzzle due to Leonhard Euler exercise solution codepad
47 03 Jul 2009 The Playfair Cipher: A classic military field cipher exercise solution codepad
327 30 Mar 2012 Subset Sum, Meet In The Middle: An improved solution to the classic NP problem exercise solution codepad
326 27 Mar 2012 Subset Sum: Solve a classic NP problem using dynamic programming exercise solution codepad
58 11 Aug 2009 Uncle Bob’s Bowling Game Kata: Use pattern-matching on lists to solve a classic object-oriented programming exercise exercise solution codepad
450 18 Jun 2013 3SUM: A classic of computer science: find three numbers in an array that sum to zero exercise solution codepad
361 31 Jul 2012 SEND + MORE = MONEY, Part 1: Two slow solutions to a classic problem of recreational mathematics exercise solution codepad
362 03 Aug 2012 SEND + MORE = MONEY, Part 2: Two hill-climbing solutions to a classic problem of recreational mathematics exercise solution codepad
293 02 Dec 2011 Knight Rider: Classic problem of the knight’s tour exercise solution codepad
267 30 Aug 2011 Hamming Numbers: List the numbers with no factors greater than 5, a classic problem popularized by Dijkstra exercise solution codepad
441 17 May 2013 Coin Change, Part 1: Classic problem to count the ways to make change exercise solution codepad
40 09 Jun 2009 Longest Common Subsequence: A classic programming algorithm, with a solution that dates to folklore exercise solution codepad
190 03 Dec 2010 Maximum Sum Subsequence: A classic programming exercise due to Jon Bentley exercise solution codepad
64 01 Sep 2009 String Search: Rabin-Karp: Our final classic string-search algorithm exercise solution codepad
420 05 Mar 2013 Dutch National Flag: Classic ternary sort by Edsgar Dijkstra exercise solution codepad
14 10 Mar 2009 Word Frequencies: Our interpretation of a problem solved by a classic unix pipeline exercise solution codepad
71 25 Sep 2009 Grep: Simple version of the classic unix regular-expression matching utility exercise solution codepad
363 07 Aug 2012 Make: The classic Unix utility for managing file dependencies exercise solution codepad
298 20 Dec 2011 Hangman: Classic Unix V7 game for guessing words exercise solution codepad
408 18 Jan 2013 Triangle Trilemma: Determine if three points form a triangle, and classify it exercise solution codepad
410 25 Jan 2013 Imperative Heaps: The classing implementation of priority queues embedded in an array exercise solution codepad
321 09 Mar 2012 Sparse Sets: Clever data structure for storing sparse sets of small integers exercise solution codepad
369 28 Aug 2012 Random Access Lists: A clever data structure that provides O(log n) access to items in a sequential list, along with cons, head and tail exercise solution codepad
394 27 Nov 2012 Amazon Interview Question: Find the hundred points of a million closest to the origin exercise solution codepad
67 11 Sep 2009 Beautiful Code: A simple regular-expression matcher by Rob Pike exercise solution codepad
308 24 Jan 2012 A Dozen Lines Of Code: Do something cool in a small space exercise solution codepad
364 10 Aug 2012 Minimum Scalar Product: A simple exercise from the practice round of Google Code Jam 2008 exercise solution codepad
426 26 Mar 2013 Google Code Jam Qualification Round Africa 2010, Revisited: Four solutions to a Google programming exercise, with various time complexities exercise solution codepad
211 15 Feb 2011 Google Code Jam Qualification Round Africa 2010: Three simple exercises exercise solution codepad
170 24 Sep 2010 Alien Numbers: An exercise from Google Code Jam exercise solution codepad
342 22 May 2012 Hamming Codes: Send messages over a noisy channel without error exercise solution codepad
371 04 Sep 2012 Fountain Codes: Transmit files over a lossy channel exercise solution codepad
28 28 Apr 2009 Morse Code: Translating the dots-and-dashes of Samuel Finley Breese Morse’s telegraph code exercise solution codepad
173 05 Oct 2010 George Marsaglia’s Random Number Generators: Nine high-quality RNGs in nineteen lines of code exercise solution codepad
28 28 Apr 2009 Morse Code: Translating the dots-and-dashes of Samuel Finley Breese Morse’s telegraph code exercise solution codepad
46 30 Jun 2009 Steve Yegge’s Phone-Screen Coding Exercises: A simple set of programming exercises based on a blog entry by Steve Yegge exercise solution codepad
294 06 Dec 2011 Pascal’s Triangle: Display the binomial coefficients exercise solution codepad
484 22 Oct 2013 David Gries’ Coffee Can Problem: Simulate the process of extracting beans from a coffee can exercise solution codepad
484 22 Oct 2013 David Gries’ Coffee Can Problem: Simulate the process of extracting beans from a coffee can exercise solution codepad
441 17 May 2013   Coin Change, Part 1: Classic problem to count the ways to make change exercise solution codepad
442 21 May 2013   Coin Change, Part 2: A variant on the classic coin change problem exercise solution codepad
443 24 May 2013   Coin Change, Part 3: Another variant on the classic coin change problem exercise solution codepad
442 21 May 2013 Coin Change, Part 2: A variant on the classic coin change problem exercise solution codepad
443 24 May 2013 Coin Change, Part 3: Another variant on the classic coin change problem exercise solution codepad
331 13 Apr 2012 McNugget Numbers, Revisited: The classic coin problem in disguise, how to count the number of ways to make change exercise solution codepad
315 17 Feb 2012 Hailstones: Examine the Collatz sequence exercise solution codepad
368 24 Aug 2012 Hash Tables With Open Addressing: An alternative to hash tables with chaining for collision resolution exercise solution codepad
208 04 Feb 2011 Excel Columns: Numbers as in Excel column names, A=1, Z=26, IV=256 exercise solution codepad
313 10 Feb 2012 Search In An Ascending Matrix: Find a number in a matrix where both rows and columns are sorted in ascending order exercise solution codepad
208 04 Feb 2011 Excel Columns: Numbers as in Excel column names, A=1, Z=26, IV=256 exercise solution codepad
340 15 May 2012 Streaming Knapsack: Find first possible combination from a stream that sums to a given integer exercise solution codepad
244 10 Jun 2011 Steganography: A hand-operable system that combines cryptography and steganography exercise solution codepad
132 30 Apr 2010 Integer Factorization: Combine trial division, Pollard’s rho and p−1 methods, and elliptic curves into a single factorization program exercise solution codepad
81 30 Oct 2009 Two Sub-Quadratic Sorts: Comb sort and shell sort exercise solution codepad
160 20 Aug 0 Marriage Sort: A sub-quadratic sort similar to shell sort or comb sort exercise solution codepad
142 18 Jun 0 Parsing Command-Line Arguments: An old-style getopt function exercise solution codepad
1 19 Feb 2009 RPN Calculator: Evaluate numeric expressions at the command line exercise solution codepad
222 25 Mar 2011 Sum: The standard Unix V7 file-checksum command exercise solution codepad
281 21 Oct 2011 Sum, Revisited: SysV and Berkeley versions of the Unix V7 sum command exercise solution codepad
16 17 Mar 2009 Comma-Separated Values: Retrieve records from a comma-separated values file using a finite-state machine exercise solution codepad
16 17 Mar 2009   Comma-Separated Values: Retrieve records from a comma-separated values file using a finite-state machine exercise solution codepad
218 11 Mar 2011 Lowest Common Ancestor: Find the lowest node in a binary search tree that is a common ancestor to two given nodes exercise solution codepad
218 11 Mar 2011 Lowest Common Ancestor: Find the lowest node in a binary search tree that is a common ancestor to two given nodes exercise solution codepad
102 15 Jan 2010 Three Binary Algorithms: Multiplication, division and greatest common divisor using binary arithmetic exercise solution codepad
40 09 Jun 2009 Longest Common Subsequence: A classic programming algorithm, with a solution that dates to folklore exercise solution codepad
235 10 May 2011 Comm: select or reject lines common to two sorted files exercise solution codepad
235 10 May 2011   Comm: select or reject lines common to two sorted files exercise solution codepad
473 12 Sep 2013 Diffie Hellman Key Exchange: Manage secure exchanges on an insecure communications channel exercise solution codepad
61 21 Aug 2009 String Search: Brute Force: Search for a pattern in a text by comparing the pattern to the text at all possible positions exercise solution codepad
205 25 Jan 2011 Rational Numbers: A library of basic arithmetic and comparison of fractions exercise solution codepad
239 24 May 2011 Big Numbers: Getting Started: A library for big integers: representation, comparison, simple functions exercise solution codepad
312 07 Feb 2012 Solar Compass: Determine North by sighting the Sun exercise solution codepad
51 17 Jul 2009 International Mathematical Olympiad: Three exercises from 1960s math competitions exercise solution codepad
476 24 Sep 2013 Finding Digit Strings In Powers Of Two: A simple exercise from one of the competitive programming sites exercise solution codepad
426 26 Mar 2013 Google Code Jam Qualification Round Africa 2010, Revisited: Four solutions to a Google programming exercise, with various time complexities exercise solution codepad
77 16 Oct 2009 Growable Arrays: Arrays that grow and shrink at run-time, with O(log n) complexity per operation exercise solution codepad
303 06 Jan 2012 Pritchard’s Wheel Sieve: An alternative to the Sieve of Eratosthenes with a faster asymptotic time complexity exercise solution codepad
197 28 Dec 2010 Carmichael Numbers: Composite numbers such that an-1 ≡ 1 (mod n) if a is prime to n exercise solution codepad
474 17 Sep 2013 Smallest Consecutive Four-Factor Composites: Find consecutive numbers with four factors exercise solution codepad
114 26 Feb 2010 Run Length Encoding: A simple compression method for text files exercise solution codepad
74 06 Oct 2009 MapReduce: Google’s famous system for parallelizing computations expressed as a programming idiom exercise solution codepad
384 23 Oct 2012 Universal Hash Function: Compute a hash for any native Scheme datatype exercise solution codepad
412 05 Feb 2013 The 147 Puzzle: Compute all the solutions to 1/a + 1/b + 1/c + 1/d + 1/e = 1 in integers exercise solution codepad
397 07 Dec 2012 Wirth Problem 15.12: Compute a sequence of numbers defined by Wirth exercise solution codepad
209 08 Feb 2011 The First Computer Program: Ada Lovelace’s program to compute Bernoulli numbers for Charles Babbage’s Analytical Engine exercise solution codepad
223 28 Mar 2011 Look And Say, Revisited: Compute Conway’s constant exercise solution codepad
251 05 Jul 2011 Big Numbers: Examples: A library for big integers: display factorials to 50, determine if a number is prime, and compute its prime factors exercise solution codepad
216 04 Mar 2011 Chutes And Ladders: Simulate a child’s game, and compute its statistics exercise solution codepad
387 02 Nov 2012 Gasoline Mileage Log: Read a file of gasoline purchases to compute miles per gallon exercise solution codepad
393 23 Nov 2012 Tonelli-Shanks Algorithm: Compute modular square roots exercise solution codepad
27 24 Apr 2009 Word Hy-phen-a-tion By Com-pu-ter: Frank Liang’s hyphenation algorithm, used in TeX exercise solution codepad
36 26 May 2009 Word Search Solver: A computerized implementation of a popular time-waster exercise solution codepad
209 08 Feb 2011 The First Computer Program: Ada Lovelace’s program to compute Bernoulli numbers for Charles Babbage’s Analytical Engine exercise solution codepad
450 18 Jun 2013 3SUM: A classic of computer science: find three numbers in an array that sum to zero exercise solution codepad
344 01 Jun 2012 Square Roots: Four methods to compute square roots, including one from antiquity exercise solution codepad
210 11 Feb 2011 Sums Of Powers: Use Bernoulli numbers to quickly compute sums of powers exercise solution codepad
10 24 Feb 2009 Mardi Gras: Compute the date of Easter exercise solution codepad
349 19 Jun 2012 Digits Of E: Two algorithms that compute the digits of e, one bounded, the other unbounded exercise solution codepad
396 04 Dec 2012 Median Of Five: A very fast method to compute the median of five items exercise solution codepad
383 19 Oct 2012 Prime Partitions: Compute the number of ways to sum primes to a target exercise solution codepad
133 04 May 2010 Spectacular Seven: Compute the odds at jai alai exercise solution codepad
423 15 Mar 2013 Buffon’s Needle: Compute the value of π with a simulation exercise solution codepad
388 06 Nov 2012 Fix Something Annoying: Take control of your computing environment by fixing something that annoys you exercise solution codepad
110 12 Feb 2010 Sieve of Atkin: A modern alternative to the Sieve of Eratosthenes for computing prime numbers exercise solution codepad
103 19 Jan 2010 Flight Planning: Computing the navigation triangle, by Jos Koot exercise solution codepad
175 12 Oct 2010 Rotate An Array: A simple but tricky exercise solved by an algorithm from the folklore of computing exercise solution codepad
220 18 Mar 2011 Loopy Loops: Print the numbers from 1 to 1000 without using loops or conditionals exercise solution codepad
389 09 Nov 2012 Taxicab Numbers: Confirm an interesting observation of Srinivasa Ramanujan exercise solution codepad
174 08 Oct 2010 Zeller’s Congruence: Calculate the day of the week for a given date exercise solution codepad
375 18 Sep 2012 ABC Conjecture: Demonstrate a recently-proved conjecture of number theory exercise solution codepad
115 02 Mar 2010 Goldbach’s Conjecture: Every even number greater than two can be written as the sum of two primes exercise solution codepad
375 18 Sep 2012 ABC Conjecture: Demonstrate a recently-proved conjecture of number theory exercise solution codepad
448 11 Jun 2013 Longest Substring Of Two Unique Characters: Longest run of consecutive characters in a string that contains only two unique characters exercise solution codepad
474 17 Sep 2013 Smallest Consecutive Four-Factor Composites: Find consecutive numbers with four factors exercise solution codepad
194 17 Dec 2010 Polite Numbers: Write numbers as the sum of two or more consecutive integers exercise solution codepad
474 17 Sep 2013 Smallest Consecutive Four-Factor Composites: Find consecutive numbers with four factors exercise solution codepad
369 28 Aug 2012 Random Access Lists: A clever data structure that provides O(log n) access to items in a sequential list, along with cons, head and tail exercise solution codepad
457 16 Jul 2013 Vampire Numbers: Numbers x * y that consist of the digits of x and y exercise solution codepad
456 12 Jul 2013 Dynamic Hash Tables: Hash tables that grow and contract automatically to maintain a constant load factor exercise solution codepad
207 01 Feb 2011 Cuckoo Hashing: A hashing system with guaranteed constant-time lookup and amortized constant-time insertion exercise solution codepad
207 01 Feb 2011 Cuckoo Hashing: A hashing system with guaranteed constant-time lookup and amortized constant-time insertion exercise solution codepad
223 28 Mar 2011 Look And Say, Revisited: Compute Conway’s constant exercise solution codepad
416 19 Feb 2013 NPR Sunday Puzzle: Find two words containing the letters a, b, c, d, e and f exercise solution codepad
271 13 Sep 2011 Tetrahedral Numbers: Find the base of the tetrahedron that contains 169179692512835000 balls exercise solution codepad
448 11 Jun 2013 Longest Substring Of Two Unique Characters: Longest run of consecutive characters in a string that contains only two unique characters exercise solution codepad
148 09 Jul 2010 Contents: Permuted Table Of Contents: Blog management exercise solution codepad
146 02 Jul 2010   Contents: Chronological Listing Of Exercises: Blog management exercise solution codepad
148 09 Jul 2010   Contents: Permuted Table Of Contents: Blog management exercise solution codepad
150 16 Jul 2010   Contents: Themes: Blog Management exercise solution codepad
265 23 Aug 2011 Knapsack: Fill a knapsack to maximize the value of its contents exercise solution codepad
117 09 Mar 2010 Lexicographic Permutations: Continually generate the next permutation using an algorithm by Dijkstra exercise solution codepad
286 08 Nov 2011 Improved Standard Continuation: An improved version of elliptic curve factorization, widely used in current practice exercise solution codepad
49 10 Jul 2009 The Golden Ratio: Evaluate a continued fraction, based on my daughter’s math homework exercise solution codepad
167 14 Sep 2010 The Factorization Of F7: Part 1: Our fortieth anniversary celebration of Morrison and Brillhart’s method of integer factorization by continued fractions exercise solution codepad
168 17 Sep 2010 The Factorization Of F7: Part 2: Our fortieth anniversary celebration of Morrison and Brillhart’s method of integer factorization by continued fractions exercise solution codepad
456 12 Jul 2013 Dynamic Hash Tables: Hash tables that grow and contract automatically to maintain a constant load factor exercise solution codepad
382 16 Oct 2012 Version Control: Economically store multiple versions of text files exercise solution codepad
388 06 Nov 2012 Fix Something Annoying: Take control of your computing environment by fixing something that annoys you exercise solution codepad
372 07 Sep 2012 The First Two Programs: Hello World and a fahrenheit / celsius conversion table exercise solution codepad
245 14 Jun 2011 Big Numbers: Input And Output: A library for big integers: input and output with radix conversion exercise solution codepad
407 15 Jan 2013 Translate CSV To Html: Convert between tabular storage forms exercise solution codepad
250 01 Jul 2011 Feet And Inches: Convert decimal inches to carpenters’ fractions exercise solution codepad
106 29 Jan 2010 Straddling Checkerboard: An alternative to the Polybius square for ciphers that must convert letters to digits exercise solution codepad
172 01 Oct 2010 Oban Numbers: Numbers that omit the letter “o” when spelled, and a function to convert numbers to words exercise solution codepad
465 13 Aug 2013 Unix Paths: Convert relative Unix path to absolute, by Robert Fisher exercise solution codepad
223 28 Mar 2011 Look And Say, Revisited: Compute Conway’s constant exercise solution codepad
333 20 Apr 2012 John Horton Conway’s Game Of Life: The classic cellular automata exercise solution codepad
354 06 Jul 2012 Fractran: Write an interpreter for John Horton Conway’s language Fractran exercise solution codepad
219 15 Mar 2011 Look And Say: Calculate John Horton Conway’s "Look and Say" sequence exercise solution codepad
308 24 Jan 2012 A Dozen Lines Of Code: Do something cool in a small space exercise solution codepad
328 03 Apr 2012   Cornacchia’s Algorithm: Find solutions to quadratic diophantine equations exercise solution codepad
435 26 Apr 2013   Correct Horse Battery Staple, Improved: Fix a horrible bug in the original version exercise solution codepad
434 23 Apr 2013   Correct Horse Battery Staple: Randall Munro’s passphrase generator exercise solution codepad
275 27 Sep 2011 Statistics: Calculate the mean, standard deviation, linear regression and correlation exercise solution codepad
69 18 Sep 2009 Regular Expressions, Part 2: The corresponding matcher exercise solution codepad
92 08 Dec 2009 Word Count: An implementation of the unix wc program exercise solution codepad
206 28 Jan 2011 Population Count: Count the number of set bits (1-bits) in the binary representation of an integer exercise solution codepad
259 02 Aug 2011 The Nth Prime: The n prime, counting from p1 = 2 exercise solution codepad
200 07 Jan 2011 Counting Primes: The prime counting function and nth-prime function exercise solution codepad
257 26 Jul 2011 More Prime-Counting Functions: Prime counting functions by Meissel and Lehmer, based on Legendre’s sum exercise solution codepad
348 15 Jun 2012   Counting Ones: Count the number of 1-digits in the numbers less than n exercise solution codepad
200 07 Jan 2011   Counting Primes: The prime counting function and nth-prime function exercise solution codepad
256 22 Jul 2011   Counting Primes Using Legendre’s Formula: Recreate Legendre’s two-century old calculation of the number of primes less than a million exercise solution codepad
72 29 Sep 2009 Green Eyes: A counting problem from high-school math exercise solution codepad
85 13 Nov 2009 Two linear sorts: Count sort and radix sort exploit the structure of integer keys exercise solution codepad
402 25 Dec 2012 The Twelve Days of Christmas: Count the gifts of Christmas exercise solution codepad
348 15 Jun 2012 Counting Ones: Count the number of 1-digits in the numbers less than n exercise solution codepad
307 20 Jan 2012 Knights On A Keypad: Count the number of knight paths on a keypad exercise solution codepad
206 28 Jan 2011 Population Count: Count the number of set bits (1-bits) in the binary representation of an integer exercise solution codepad
331 13 Apr 2012 McNugget Numbers, Revisited: The classic coin problem in disguise, how to count the number of ways to make change exercise solution codepad
311 03 Feb 2012 Roman Numeral Puzzle: Count the Roman numerals with no repeated digits exercise solution codepad
441 17 May 2013 Coin Change, Part 1: Classic problem to count the ways to make change exercise solution codepad
415 15 Feb 2013 Facebook Hacker Cup 2013, Round 1, Problem 1: Count the ways to win a card game exercise solution codepad
285 04 Nov 2011   Craps: Simulate a popular game of gambling with dice exercise solution codepad
78 20 Oct 2009 Shuffle: Create random permutations of an array or linked list exercise solution codepad
437 03 May 2013 Pairing Students: Create sets of students, each paired to the other only once exercise solution codepad
12 03 Mar 2009   Creation: Cryptanalysis of a Vigenère cipher exercise solution codepad
226 08 Apr 2011   Credit Card Validation: Validate decimal numbers using the Luhn algorithm exercise solution codepad
461 30 Jul 2013 Who Buys The Croissants?: Simulate an important Friday-morning question exercise solution codepad
472 06 Sep 2013 Cartesian Product: Cross-product of the items in a variable-length list of variable-length lists exercise solution codepad
230 22 Apr 2011 Xref: Programmer’s cross-reference utility exercise solution codepad
101 12 Jan 2010 Calculating Sines: Calculate sines using Taylor series and the triple-angle formula, by Bill Cruise exercise solution codepad
12 03 Mar 2009 Creation: Cryptanalysis of a Vigenère cipher exercise solution codepad
50 14 Jul 2009 The Daily Cryptogram: Solve a monoalphabetic substitution cipher exercise solution codepad
60 18 Aug 2009 Blum Blum Shub: Stream cipher based on a cryptographically secure pseudo-random number generator exercise solution codepad
94 15 Dec 2009 Affine-Shift Cipher: A cryptographically weak but mathematically interesting cipher exercise solution codepad
165 07 Sep 2010 Data Encryption Standard: Part 3: Triple DES and cryptographic hashing exercise solution codepad
185 16 Nov 2010 RSA Cryptography: The original public-key cryptographic system, still in wide use exercise solution codepad
244 10 Jun 2011 Steganography: A hand-operable system that combines cryptography and steganography exercise solution codepad
203 18 Jan 2011 Solitaire Cipher: Bruce Schneier’s strong cryptography based on a deck of playing cards exercise solution codepad
185 16 Nov 2010 RSA Cryptography: The original public-key cryptographic system, still in wide use exercise solution codepad
246 17 Jun 2011 Adi Shamir’s Threshold Scheme: Use cryptography to share a secret, by Graham Enos exercise solution codepad
290 22 Nov 2011 Rabin’s Cryptosystem: Public-key cryptosystem, similar to RSA exercise solution codepad
290 22 Nov 2011 Rabin’s Cryptosystem: Public-key cryptosystem, similar to RSA exercise solution codepad
283 28 Oct 2011   Crypt: Simple encryption tool from Kernighan and Plauger exercise solution codepad
341 18 May 2012 Formatted Numeric Output: A minimal version of C’s printf function exercise solution codepad
407 15 Jan 2013 Translate CSV To Html: Convert between tabular storage forms exercise solution codepad
149 13 Jul 2010 Word Cube: A game to form words from a given set of letters exercise solution codepad
288 15 Nov 2011 Phil Harvey’s Puzle: partition {1,…,16} into two sets of equal size so each subset has the same sum, sum of squares and sum of cubes exercise solution codepad
207 01 Feb 2011   Cuckoo Hashing: A hashing system with guaranteed constant-time lookup and amortized constant-time insertion exercise solution codepad
415 15 Feb 2013 Facebook Hacker Cup 2013, Round 1, Problem 1: Count the ways to win a card game exercise solution codepad
145 29 Jun 2010 World Cup Prognostication: Simulate the knockout stage using elo ratings exercise solution codepad
417 22 Feb 2013 Floupia: Make change in a strange currency exercise solution codepad
286 08 Nov 2011 Improved Standard Continuation: An improved version of elliptic curve factorization, widely used in current practice exercise solution codepad
55 31 Jul 2009 Elliptic Curve Factorization: A very simple implementation of elliptic curve factorization exercise solution codepad
130 23 Apr 2010 Modern Elliptic Curve Factorization, Part 1: Elliptic arithmetic using Montgomery’s parameterization exercise solution codepad
131 27 Apr 2010 Modern Elliptic Curve Factorization, Part 2: Elliptic arithmetic using Montgomery’s parameterization exercise solution codepad
55 31 Jul 2009 Elliptic Curve Factorization: A very simple implementation of elliptic curve factorization exercise solution codepad
56 04 Aug 2009 Lenstra’s Algorithm: Hendrik Lenstra’s original algorithm for elliptic curve factorization exercise solution codepad
286 08 Nov 2011 Improved Standard Continuation: An improved version of elliptic curve factorization, widely used in current practice exercise solution codepad
132 30 Apr 2010 Integer Factorization: Combine trial division, Pollard’s rho and p−1 methods, and elliptic curves into a single factorization program exercise solution codepad
54 28 Jul 2009 Elliptic Curves: Library of basic functions on elliptic curves exercise solution codepad
54 28 Jul 2009 Elliptic Curves: Library of basic functions on elliptic curves exercise solution codepad
330 10 Apr 2012 Galton: Simulate a marble-drop that forms a bell-shaped curve exercise solution codepad
159 17 Aug 2010   Cut: Select fields or characters from input lines exercise solution codepad
5 19 Feb 2009 Flavius Josephus: Programming a cyclical list exercise solution codepad
430 09 Apr 2013   Cyclic Equality: Determine if two cyclic lists are equal exercise solution codepad
263 16 Aug 2011 Insert Into A Cyclic Sorted List: Insert a new element into a cyclic list, in order exercise solution codepad
430 09 Apr 2013 Cyclic Equality: Determine if two cyclic lists are equal exercise solution codepad
431 12 Apr 2013 Booth’s Algorithm: Determine of two cyclic lists are equal exercise solution codepad
263 16 Aug 2011 Insert Into A Cyclic Sorted List: Insert a new element into a cyclic list, in order exercise solution codepad
50 14 Jul 2009 The Daily Cryptogram: Solve a monoalphabetic substitution cipher exercise solution codepad
161 24 Aug 2010   Daniel Shanks’ Square Form Factorization Algorithm: A simple and very fast factorization algorithm for integers between 105 and 1020 exercise solution codepad
141 15 Jun 2010 Natural Join: The fundamental relational database operator exercise solution codepad
177 19 Oct 2010 Text File Databases: Part 1: Functions to read records with fields in various formats exercise solution codepad
178 22 Oct 2010 Text File Databases: Part 2: Various functions to process records with fields exercise solution codepad
179 26 Oct 2010 Benford’s Law: A useful mathematical oddity, and an example of text file databases exercise solution codepad
163 31 Aug 2010   Data Encryption Standard: Part 1: Basic block enciphering and deciphering using DES exercise solution codepad
164 03 Sep 2010   Data Encryption Standard: Part 2: ECB, CBC, CFB and OFB block modes for DES and other block ciphers exercise solution codepad
165 07 Sep 2010   Data Encryption Standard: Part 3: Triple DES and cryptographic hashing exercise solution codepad
166 10 Sep 2010   Data Encryption Standard: Part 4: DES driver program exercise solution codepad
189 30 Nov 2010 Form Letters: Merge a schema and a data file to write form letters exercise solution codepad
447 07 Jun 2013 Sets: A classic data structure and associated algorithms exercise solution codepad
73 02 Oct 2009 Red-Black Trees: A purely functional dictionary data structure based on approximately-balanced trees exercise solution codepad
124 02 Apr 2010 Disjoint Sets: A data structure for storing sets of items in disjoint partitions exercise solution codepad
321 09 Mar 2012 Sparse Sets: Clever data structure for storing sparse sets of small integers exercise solution codepad
45 26 Jun 2009 Treaps: A randomized dictionary data structure, provides in-order access to key exercise solution codepad
116 05 Mar 2010 Binary Search Tree: Classic data structure, providing insert, delete and lookup for ordered datatypes exercise solution codepad
171 28 Sep 2010 Maxiphobic Heaps: A priority-queue data structure, similar to leftist heaps, due to Chris Okasaki exercise solution codepad
369 28 Aug 2012 Random Access Lists: A clever data structure that provides O(log n) access to items in a sequential list, along with cons, head and tail exercise solution codepad
30 05 May 2009 Priority Queues: A simple library implementation of the priority queue data structure exercise solution codepad
489 29 Oct 2013 Queues: Implement a basic data structure exercise solution codepad
116 05 Mar 2010 Binary Search Tree: Classic data structure, providing insert, delete and lookup for ordered datatypes exercise solution codepad
384 23 Oct 2012 Universal Hash Function: Compute a hash for any native Scheme datatype exercise solution codepad
444 28 May 2013 Modular Multiplication Without Overflow: Perform modular multiplication without overflowing an integer datatype exercise solution codepad
432 16 Apr 2013   Date Formatting: Neatly write a date in a variety of formats exercise solution codepad
432 16 Apr 2013 Date Formatting: Neatly write a date in a variety of formats exercise solution codepad
10 24 Feb 2009 Mardi Gras: Compute the date of Easter exercise solution codepad
455 05 Jul 2013 Weekdays Between Two Dates: Number of days between two dates, excluding Saturday and Sunday exercise solution codepad
455 05 Jul 2013 Weekdays Between Two Dates: Number of days between two dates, excluding Saturday and Sunday exercise solution codepad
123 30 Mar 2010 Passover: Calculate the dates of the Jewish holidays Rosh Hashanah and Passover exercise solution codepad
40 09 Jun 2009 Longest Common Subsequence: A classic programming algorithm, with a solution that dates to folklore exercise solution codepad
174 08 Oct 2010 Zeller’s Congruence: Calculate the day of the week for a given date exercise solution codepad
221 22 Mar 2011 Two Kaprekar Exercises: Kaprekar chains and Kaprekar numbers, from the Indian mathematician Dattaraya Ramchandra Kaprekar exercise solution codepad
49 10 Jul 2009 The Golden Ratio: Evaluate a continued fraction, based on my daughter’s math homework exercise solution codepad
484 22 Oct 2013   David Gries’ Coffee Can Problem: Simulate the process of extracting beans from a coffee can exercise solution codepad
96 22 Dec 2009 Permuted Index: David Parnas’ classic deconstruction of the keyword-in-context index exercise solution codepad
88 24 Nov 2009 Sunrise, Sunset: Calculate the times of sunrise and sunset on any day anywhere in the world exercise solution codepad
174 08 Oct 2010 Zeller’s Congruence: Calculate the day of the week for a given date exercise solution codepad
248 24 Jun 2011 Thank God It’s Friday!: Three methods to calculate the day of the week exercise solution codepad
376 21 Sep 2012 Autumn Equinox: Calculate the length of the day; provides a time-handling library exercise solution codepad
455 05 Jul 2013 Weekdays Between Two Dates: Number of days between two dates, excluding Saturday and Sunday exercise solution codepad
402 25 Dec 2012 The Twelve Days of Christmas: Count the gifts of Christmas exercise solution codepad
104 22 Jan 2010 Phases Of The Moon: Calculate the number of days since the last new moon exercise solution codepad
454 02 Jul 2013 Decoding Text-Speak: Expnd txt wth only intl vwls and n dbld ltrs exercise solution codepad
53 24 Jul 2009 Let’s Make A Deal!: Simulate a tricky probability calculation exercise solution codepad
416 19 Feb 2013 NPR Sunday Puzzle: Find two words containing the letters a, b, c, d, e and f exercise solution codepad
250 01 Jul 2011 Feet And Inches: Convert decimal inches to carpenters’ fractions exercise solution codepad
226 08 Apr 2011 Credit Card Validation: Validate decimal numbers using the Luhn algorithm exercise solution codepad
406 08 Jan 2013 Floating Point Rounding: Round a floating point number to a given decimal place exercise solution codepad
163 31 Aug 2010 Data Encryption Standard: Part 1: Basic block enciphering and deciphering using DES exercise solution codepad
203 18 Jan 2011 Solitaire Cipher: Bruce Schneier’s strong cryptography based on a deck of playing cards exercise solution codepad
454 02 Jul 2013   Decoding Text-Speak: Expnd txt wth only intl vwls and n dbld ltrs exercise solution codepad
96 22 Dec 2009 Permuted Index: David Parnas’ classic deconstruction of the keyword-in-context index exercise solution codepad
86 17 Nov 2009 Master Mind, Part 1: Referee a two-player game of deductive logic exercise solution codepad
397 07 Dec 2012 Wirth Problem 15.12: Compute a sequence of numbers defined by Wirth exercise solution codepad
116 05 Mar 2010 Binary Search Tree: Classic data structure, providing insert, delete and lookup for ordered datatypes exercise solution codepad
319 02 Mar 2012 Balanced Delimiters: Determine if nested delimiters are properly balanced exercise solution codepad
319 02 Mar 2012 Balanced Delimiters: Determine if nested delimiters are properly balanced exercise solution codepad
375 18 Sep 2012 ABC Conjecture: Demonstrate a recently-proved conjecture of number theory exercise solution codepad
381 12 Oct 2012 Birthday Paradox: Use simulation to demonstrate the birthday paradox exercise solution codepad
279 11 Oct 2011 Tower Of Hanoi: Classic demonstration of recursion exercise solution codepad
363 07 Aug 2012 Make: The classic Unix utility for managing file dependencies exercise solution codepad
269 06 Sep 2011   Deques: Library implementation of double-ended queues exercise solution codepad
305 13 Jan 2012 Excel’s XIRR Function: Numerical calculation of a derivative exercise solution codepad
165 07 Sep 2010 Data Encryption Standard: Part 3: Triple DES and cryptographic hashing exercise solution codepad
164 03 Sep 2010 Data Encryption Standard: Part 2: ECB, CBC, CFB and OFB block modes for DES and other block ciphers exercise solution codepad
33 15 May 2009 Cellular Automata: Linear cellular automata as described by Stephen Wolfram in his book A New Kind of Science exercise solution codepad
166 10 Sep 2010 Data Encryption Standard: Part 4: DES driver program exercise solution codepad
475 20 Sep 2013 McCarthy’s 91 Function: A recursive function designed as a test case for formal verification exercise solution codepad
163 31 Aug 2010 Data Encryption Standard: Part 1: Basic block enciphering and deciphering using DES exercise solution codepad
234 06 May 2011 Entab And Detab: expand tabs into spaces, and replace spaces with tabs exercise solution codepad
405 02 Jan 2013 Four Points Determine A Square: Determine if four given points form a square exercise solution codepad
336 01 May 2012 Legendre’s Symbol: Determine if a number is a quadratic residue mod m exercise solution codepad
156 06 Aug 2010 Two Powering Predicates: Determine if a number is a square or a prime power exercise solution codepad
251 05 Jul 2011 Big Numbers: Examples: A library for big integers: display factorials to 50, determine if a number is prime, and compute its prime factors exercise solution codepad
405 02 Jan 2013 Four Points Determine A Square: Determine if four given points form a square exercise solution codepad
319 02 Mar 2012 Balanced Delimiters: Determine if nested delimiters are properly balanced exercise solution codepad
187 23 Nov 2010 String Subsets: Determine if one string is a subset of another exercise solution codepad
322 13 Mar 2012 Perfect Power Predicate: Given a positive integer n, determine if there exists a b and e for which be = n exercise solution codepad
408 18 Jan 2013 Triangle Trilemma: Determine if three points form a triangle, and classify it exercise solution codepad
430 09 Apr 2013 Cyclic Equality: Determine if two cyclic lists are equal exercise solution codepad
255 19 Jul 2011 Sum Of Two Integers: Determine if two integers in a list sum to a target exercise solution codepad
310 31 Jan 2012 String Rotation: Determine if two strings are rotations of each other exercise solution codepad
312 07 Feb 2012 Solar Compass: Determine North by sighting the Sun exercise solution codepad
431 12 Apr 2013 Booth’s Algorithm: Determine of two cyclic lists are equal exercise solution codepad
486 29 Oct 2013 The 16 Game: Determine the odds in a scratch-off game exercise solution codepad
297 16 Dec 2011 Majority Voting: Determine the results of an election exercise solution codepad
107 02 Feb 2010 Proving Primality: A deterministic, not probabilistic, method of checking primality exercise solution codepad
252 08 Jul 2011 Vedic Divisibility: Use a method of testing divisibility using the method of osculators developed in India exercise solution codepad
398 11 Dec 2012 Stepwise Program Development: A Heuristic Algorithm: A backtracking solution to a problem of Wirth exercise solution codepad
275 27 Sep 2011 Statistics: Calculate the mean, standard deviation, linear regression and correlation exercise solution codepad
285 04 Nov 2011 Craps: Simulate a popular game of gambling with dice exercise solution codepad
73 02 Oct 2009 Red-Black Trees: A purely functional dictionary data structure based on approximately-balanced trees exercise solution codepad
45 26 Jun 2009 Treaps: A randomized dictionary data structure, provides in-order access to key exercise solution codepad
334 24 Apr 2012 Rhyming Dictionary: Find rhyming words for poets exercise solution codepad
347 12 Jun 2012 Ordered Maps: A key/value dictionary that supports an ordering relationship exercise solution codepad
23 10 Apr 2009 Anagrams: Find anagrams in a dictionary exercise solution codepad
25 17 Apr 2009 Spell Checking: A spell-checker in a trie-based dictionary exercise solution codepad
380 09 Oct 2012 Two Word Games: Find words in a dictionary exercise solution codepad
332 17 Apr 2012 Twin Primes: A variant of the Sieve of Eratosthenes to find pairs of primes that differ by two exercise solution codepad
392 20 Nov 2012 List Difference: Another algorithm on linked lists exercise solution codepad
482 15 Oct 2013 Find The Minimum Difference: Find the minimum difference between any item from on list and any item from another list exercise solution codepad
482 15 Oct 2013 Find The Minimum Difference: Find the minimum difference between any item from on list and any item from another list exercise solution codepad
224 01 Apr 2011 Maximum Difference In An Array: Find maximum Xj &minus Xi, with ij exercise solution codepad
139 08 Jun 2010 Diff: Find the differences between two text files exercise solution codepad
139 08 Jun 2010   Diff: Find the differences between two text files exercise solution codepad
473 12 Sep 2013   Diffie Hellman Key Exchange: Manage secure exchanges on an insecure communications channel exercise solution codepad
429 05 Apr 2013 Last Non-Zero Digit Of A Factorial: Find the last non-zero digit of a factorial exercise solution codepad
429 05 Apr 2013 Last Non-Zero Digit Of A Factorial: Find the last non-zero digit of a factorial exercise solution codepad
229 19 Apr 2011 Same Five Digits: A math puzzle from New Scientist, solved by guest author Bob Miller exercise solution codepad
181 02 Nov 2010 Emirps: Prime numbers that are prime when their digits are reversed, but not palindromic exercise solution codepad
318 28 Feb 2012 Next Greater Permutation Of Digits: Find the smallest number larger than the input number using the same digits as the input number exercise solution codepad
318 28 Feb 2012 Next Greater Permutation Of Digits: Find the smallest number larger than the input number using the same digits as the input number exercise solution codepad
169 21 Sep 2010 Kaprekar Numbers: Square the number and add the digits in halves exercise solution codepad
349 19 Jun 2012 Digits Of E: Two algorithms that compute the digits of e, one bounded, the other unbounded exercise solution codepad
349 19 Jun 2012   Digits Of E: Two algorithms that compute the digits of e, one bounded, the other unbounded exercise solution codepad
449 14 Jun 2013 The Digits of Pi, Again: Chudnovsky’s algorithm for the digits of pi exercise solution codepad
8 20 Feb 2009 The Digits of Pi: A spigot algorithm to calculate the digits of pi exercise solution codepad
449 14 Jun 2013 The Digits of Pi, Again: Chudnovsky’s algorithm for the digits of pi exercise solution codepad
8 20 Feb 2009 The Digits of Pi: A spigot algorithm to calculate the digits of pi exercise solution codepad
413 08 Feb 2013 The Biggest Prime: Print all 17-million digits of the largest known prime number exercise solution codepad
457 16 Jul 2013 Vampire Numbers: Numbers x * y that consist of the digits of x and y exercise solution codepad
129 20 Apr 2010 145 Puzzle: Build and evaluate expressions using the digits one through nine and the simple arithmetic operators exercise solution codepad
152 23 Jul 2010 Happy Numbers: Iterating the sum of the squares of the digits terminates with one exercise solution codepad
476 24 Sep 2013 Finding Digit Strings In Powers Of Two: A simple exercise from one of the competitive programming sites exercise solution codepad
106 29 Jan 2010 Straddling Checkerboard: An alternative to the Polybius square for ciphers that must convert letters to digits exercise solution codepad
311 03 Feb 2012 Roman Numeral Puzzle: Count the Roman numerals with no repeated digits exercise solution codepad
386 30 Oct 2012 Pandigital Numbers: Find sums that include all ten digits exercise solution codepad
199 04 Jan 2011   Dijkstra’s Algorithm: Find the shortest path to all vertices of a graph from a single source, guest written by Graham Enos exercise solution codepad
117 09 Mar 2010 Lexicographic Permutations: Continually generate the next permutation using an algorithm by Dijkstra exercise solution codepad
267 30 Aug 2011 Hamming Numbers: List the numbers with no factors greater than 5, a classic problem popularized by Dijkstra exercise solution codepad
420 05 Mar 2013 Dutch National Flag: Classic ternary sort by Edsgar Dijkstra exercise solution codepad
99 05 Jan 2010 The Sum Of Two Squares: A math puzzle with a solution by Dijkstra exercise solution codepad
328 03 Apr 2012 Cornacchia’s Algorithm: Find solutions to quadratic diophantine equations exercise solution codepad
459 23 Jul 2013 Telephone Lookup: A directory-assistance program by Mike Lesk exercise solution codepad
331 13 Apr 2012 McNugget Numbers, Revisited: The classic coin problem in disguise, how to count the number of ways to make change exercise solution codepad
124 02 Apr 2010 Disjoint Sets: A data structure for storing sets of items in disjoint partitions exercise solution codepad
124 02 Apr 2010   Disjoint Sets: A data structure for storing sets of items in disjoint partitions exercise solution codepad
251 05 Jul 2011 Big Numbers: Examples: A library for big integers: display factorials to 50, determine if a number is prime, and compute its prime factors exercise solution codepad
294 06 Dec 2011 Pascal’s Triangle: Display the binomial coefficients exercise solution codepad
289 18 Nov 2011 Grade School Multiplication: Display the steps in the grade school multiplication algorithm exercise solution codepad
82 03 Nov 2009 Quick Sort: Tony Hoare’s divide-and-conquer sorting algorithm exercise solution codepad
128 16 Apr 2010 Expression Evaluation: Parse and evaluate an arithmetic expression with plus, minus, times, divide and parentheses exercise solution codepad
252 08 Jul 2011 Vedic Divisibility: Use a method of testing divisibility using the method of osculators developed in India exercise solution codepad
252 08 Jul 2011 Vedic Divisibility: Use a method of testing divisibility using the method of osculators developed in India exercise solution codepad
243 07 Jun 2011 Big Numbers: Division: A library for big integers: the grade-school algorithm for long division exercise solution codepad
102 15 Jan 2010 Three Binary Algorithms: Multiplication, division and greatest common divisor using binary arithmetic exercise solution codepad
48 07 Jul 2009 Modular Arithmetic: A function library for performing modular addition, subtraction, multiplication, division, and square root exercise solution codepad
132 30 Apr 2010 Integer Factorization: Combine trial division, Pollard’s rho and p−1 methods, and elliptic curves into a single factorization program exercise solution codepad
243 07 Jun 2011 Big Numbers: Division: A library for big integers: the grade-school algorithm for long division exercise solution codepad
273 20 Sep 2011 Project Euler Problem 3: Thorough explanation of integer factorization by trial division exercise solution codepad
31 08 May 2009 Wheel Factorization: Find the factors of a number by a variant of trial division exercise solution codepad
188 26 Nov 2010   Divisors And Totatives: The number-theoretic functions divisors, numdivs, sumdivs, totatives, and totient exercise solution codepad
314 14 Feb 2012   Divisors: Find divisors using a sieve exercise solution codepad
188 26 Nov 2010 Divisors And Totatives: The number-theoretic functions divisors, numdivs, sumdivs, totatives, and totient exercise solution codepad
314 14 Feb 2012 Divisors: Find divisors using a sieve exercise solution codepad
102 15 Jan 2010 Three Binary Algorithms: Multiplication, division and greatest common divisor using binary arithmetic exercise solution codepad
236 13 May 2011   Dixon’s Factorization Algorithm: A slow, but theoretically important, algorithm for integer factorization exercise solution codepad
157 10 Aug 2010 Literate Programming: Structured documentation in the style of Donald Knuth exercise solution codepad
17 20 Mar 2009   Dodgson's Doublets: A word game invented by the author of Alice in Wonderland exercise solution codepad
264 19 Aug 2011 First Non-Repeating Character: Find the first character in a string that doesn’t repeat later in the string exercise solution codepad
196 24 Dec 2010 Tracking Santa: How far does Santa travel on his annual journey? exercise solution codepad
135 25 May 2010 GB_FLIP: Donald Knuth’s portable, high-quality random-number generator from the Stanford Graphbase exercise solution codepad
157 10 Aug 2010 Literate Programming: Structured documentation in the style of Donald Knuth exercise solution codepad
308 24 Jan 2012 A Dozen Lines Of Code: Do something cool in a small space exercise solution codepad
28 28 Apr 2009 Morse Code: Translating the dots-and-dashes of Samuel Finley Breese Morse’s telegraph code exercise solution codepad
155 03 Aug 2010 Carl Hewitt’s Same-Fringe Problem: Do two trees have the same leaves, solved with streams (lazy lists) exercise solution codepad
477 27 Sep 2013   Double-Ended Priority Queues: Priority queues that permit access at both ends exercise solution codepad
269 06 Sep 2011 Deques: Library implementation of double-ended queues exercise solution codepad
37 29 May 2009   Double Transposition Cipher: A simple and effective cipher, easy to perform by hand exercise solution codepad
17 20 Mar 2009 Dodgson's Doublets: A word game invented by the author of Alice in Wonderland exercise solution codepad
113 23 Feb 2010 Engineering A Sort Function: A high-performance quicksort by Jon Bentley and Doug McIlroy exercise solution codepad
240 27 May 2011 Upside Up: Numbers that read the same upside down exercise solution codepad
308 24 Jan 2012 A Dozen Lines Of Code: Do something cool in a small space exercise solution codepad
299 23 Dec 2011 Koch’s Snowflake: Draw a fractal snowflake using PostScript exercise solution codepad
357 17 Jul 2012 Breshenham’s Line-Drawing Algorithm: Draw straight lines using raster graphics exercise solution codepad
198 31 Dec 2010 Arithmetic Drill: Repetitious drill for children learning basic arithmetic exercise solution codepad
198 31 Dec 2010 Arithmetic Drill: Repetitious drill for children learning basic arithmetic exercise solution codepad
166 10 Sep 2010 Data Encryption Standard: Part 4: DES driver program exercise solution codepad
171 28 Sep 2010 Maxiphobic Heaps: A priority-queue data structure, similar to leftist heaps, due to Chris Okasaki exercise solution codepad
176 15 Oct 2010 Find The Longest Palindrome In A String: A beautiful linear-time algorithm due to Johan Jeuring exercise solution codepad
190 03 Dec 2010 Maximum Sum Subsequence: A classic programming exercise due to Jon Bentley exercise solution codepad
445 31 May 2013 The Seven Bridges of Königsberg: A classic graph puzzle due to Leonhard Euler exercise solution codepad
268 02 Sep 2011 Two String Exercises: Remove duplicate characters, and squish adjacent blanks exercise solution codepad
193 14 Dec 2010 Longest Duplicated Substring: Use a sorted suffix list exercise solution codepad
274 23 Sep 2011 Array Duplicates: Find the duplicate integer in a large array exercise solution codepad
274 23 Sep 2011 Array Duplicates: Find the duplicate integer in a large array exercise solution codepad
420 05 Mar 2013   Dutch National Flag: Classic ternary sort by Edsgar Dijkstra exercise solution codepad
7 20 Feb 2009 Multiple Dwellings: A simple logic puzzle, solved with the amb non-deterministic operator exercise solution codepad
456 12 Jul 2013   Dynamic Hash Tables: Hash tables that grow and contract automatically to maintain a constant load factor exercise solution codepad
183 09 Nov 2010 Subset Sums: Third level of the Greplin Programming Challenge, using dynamic programming and memoization exercise solution codepad
326 27 Mar 2012 Subset Sum: Solve a classic NP problem using dynamic programming exercise solution codepad
90 01 Dec 2009 Wolves And Rabbits: Analyze population dynamics using the Lotka-Volterra equations exercise solution codepad
310 31 Jan 2012 String Rotation: Determine if two strings are rotations of each other exercise solution codepad
437 03 May 2013 Pairing Students: Create sets of students, each paired to the other only once exercise solution codepad
288 15 Nov 2011 Phil Harvey’s Puzle: partition {1,…,16} into two sets of equal size so each subset has the same sum, sum of squares and sum of cubes exercise solution codepad
416 19 Feb 2013 NPR Sunday Puzzle: Find two words containing the letters a, b, c, d, e and f exercise solution codepad
215 01 Mar 2011 An Early LISP Program: A program to flatten a list, from the March 1960 LISP I manual exercise solution codepad
158 13 Aug 2010   E: A simple simulation with a surprising ending exercise solution codepad
10 24 Feb 2009 Mardi Gras: Compute the date of Easter exercise solution codepad
18 23 Mar 2009 Binary Search: A simple task, easy to get wrong exercise solution codepad
37 29 May 2009 Double Transposition Cipher: A simple and effective cipher, easy to perform by hand exercise solution codepad
164 03 Sep 2010 Data Encryption Standard: Part 2: ECB, CBC, CFB and OFB block modes for DES and other block ciphers exercise solution codepad
382 16 Oct 2012 Version Control: Economically store multiple versions of text files exercise solution codepad
186 19 Nov 2010 Topological Sort: Order the edges of a graph by their precedence relationship exercise solution codepad
420 05 Mar 2013 Dutch National Flag: Classic ternary sort by Edsgar Dijkstra exercise solution codepad
37 29 May 2009 Double Transposition Cipher: A simple and effective cipher, easy to perform by hand exercise solution codepad
76 13 Oct 2009 Bifid: A simple but effective fractionating cipher, never used militarily exercise solution codepad
122 26 Mar 2010 The Next Prime: Efficiently find the next prime number larger than a given number exercise solution codepad
322 13 Mar 2012 Perfect Power Predicate: Given a positive integer n, determine if there exists a b and e for which be = n exercise solution codepad
446 04 Jun 2013   Egyptian Fractions: An ancient method of representing fractions exercise solution codepad
297 16 Dec 2011 Majority Voting: Determine the results of an election exercise solution codepad
460 26 Jul 2013 Find X[i] = i In An Array: Find an array element equal to its index exercise solution codepad
360 27 Jul 2012 Min Stack: Provide push and pop operations and find the minimum element in linear time exercise solution codepad
263 16 Aug 2011 Insert Into A Cyclic Sorted List: Insert a new element into a cyclic list, in order exercise solution codepad
266 26 Aug 2011 Reverse Every K Nodes Of A Linked List: Reverse the elements of a sub-list exercise solution codepad
304 10 Jan 2012 Thirteen Anagram: 12+1=11+2 and “twelve plus one equals eleven plus two” are both anagrams exercise solution codepad
130 23 Apr 2010 Modern Elliptic Curve Factorization, Part 1: Elliptic arithmetic using Montgomery’s parameterization exercise solution codepad
131 27 Apr 2010 Modern Elliptic Curve Factorization, Part 2: Elliptic arithmetic using Montgomery’s parameterization exercise solution codepad
55 31 Jul 2009   Elliptic Curve Factorization: A very simple implementation of elliptic curve factorization exercise solution codepad
130 23 Apr 2010 Modern Elliptic Curve Factorization, Part 1: Elliptic arithmetic using Montgomery’s parameterization exercise solution codepad
131 27 Apr 2010 Modern Elliptic Curve Factorization, Part 2: Elliptic arithmetic using Montgomery’s parameterization exercise solution codepad
55 31 Jul 2009 Elliptic Curve Factorization: A very simple implementation of elliptic curve factorization exercise solution codepad
56 04 Aug 2009 Lenstra’s Algorithm: Hendrik Lenstra’s original algorithm for elliptic curve factorization exercise solution codepad
286 08 Nov 2011 Improved Standard Continuation: An improved version of elliptic curve factorization, widely used in current practice exercise solution codepad
132 30 Apr 2010 Integer Factorization: Combine trial division, Pollard’s rho and p−1 methods, and elliptic curves into a single factorization program exercise solution codepad
54 28 Jul 2009   Elliptic Curves: Library of basic functions on elliptic curves exercise solution codepad
54 28 Jul 2009 Elliptic Curves: Library of basic functions on elliptic curves exercise solution codepad
145 29 Jun 2010 World Cup Prognostication: Simulate the knockout stage using elo ratings exercise solution codepad
410 25 Jan 2013 Imperative Heaps: The classing implementation of priority queues embedded in an array exercise solution codepad
42 16 Jun 2009 Who Owns The Zebra?: A logic puzzle, solved by embedding a Prolog-like logic system in Scheme exercise solution codepad
279 14 Oct 2011 The First N Primes: Embedding the Sieve of Eratosthenes in a priority queue instead of an array exercise solution codepad
121 23 Mar 2010 Texas Hold ‘Em: Find the best poker hand exercise solution codepad
181 02 Nov 2010   Emirps: Prime numbers that are prime when their digits are reversed, but not palindromic exercise solution codepad
138 04 Jun 2010 Williams’ P+1 Factorization Algorithm: A factorization algorithm, similar to Pollard’s p−1 algorithm exercise solution codepad
163 31 Aug 2010 Data Encryption Standard: Part 1: Basic block enciphering and deciphering using DES exercise solution codepad
114 26 Feb 2010 Run Length Encoding: A simple compression method for text files exercise solution codepad
163 31 Aug 2010 Data Encryption Standard: Part 1: Basic block enciphering and deciphering using DES exercise solution codepad
164 03 Sep 2010 Data Encryption Standard: Part 2: ECB, CBC, CFB and OFB block modes for DES and other block ciphers exercise solution codepad
165 07 Sep 2010 Data Encryption Standard: Part 3: Triple DES and cryptographic hashing exercise solution codepad
166 10 Sep 2010 Data Encryption Standard: Part 4: DES driver program exercise solution codepad
283 28 Oct 2011 Crypt: Simple encryption tool from Kernighan and Plauger exercise solution codepad
158 13 Aug 2010 E: A simple simulation with a surprising ending exercise solution codepad
452 25 Jun 2013 Swap List Nodes: Swap the kth node from the beginning of a list with the kth node from the end of a list exercise solution codepad
477 27 Sep 2013 Double-Ended Priority Queues: Priority queues that permit access at both ends exercise solution codepad
113 23 Feb 2010   Engineering A Sort Function: A high-performance quicksort by Jon Bentley and Doug McIlroy exercise solution codepad
209 08 Feb 2011 The First Computer Program: Ada Lovelace’s program to compute Bernoulli numbers for Charles Babbage’s Analytical Engine exercise solution codepad
199 04 Jan 2011 Dijkstra’s Algorithm: Find the shortest path to all vertices of a graph from a single source, guest written by Graham Enos exercise solution codepad
246 17 Jun 2011 Adi Shamir’s Threshold Scheme: Use cryptography to share a secret, by Graham Enos exercise solution codepad
234 06 May 2011   Entab And Detab: expand tabs into spaces, and replace spaces with tabs exercise solution codepad
46 30 Jun 2009 Steve Yegge’s Phone-Screen Coding Exercises: A simple set of programming exercises based on a blog entry by Steve Yegge exercise solution codepad
388 06 Nov 2012 Fix Something Annoying: Take control of your computing environment by fixing something that annoys you exercise solution codepad
349 19 Jun 2012 Digits Of E: Two algorithms that compute the digits of e, one bounded, the other unbounded exercise solution codepad
430 09 Apr 2013 Cyclic Equality: Determine if two cyclic lists are equal exercise solution codepad
304 10 Jan 2012 Thirteen Anagram: 12+1=11+2 and “twelve plus one equals eleven plus two” are both anagrams exercise solution codepad
288 15 Nov 2011 Phil Harvey’s Puzle: partition {1,…,16} into two sets of equal size so each subset has the same sum, sum of squares and sum of cubes exercise solution codepad
460 26 Jul 2013 Find X[i] = i In An Array: Find an array element equal to its index exercise solution codepad
430 09 Apr 2013 Cyclic Equality: Determine if two cyclic lists are equal exercise solution codepad
431 12 Apr 2013 Booth’s Algorithm: Determine of two cyclic lists are equal exercise solution codepad
151 20 Jul 2010 Solving Systems Of Linear Equations: Matrix operations LU-decomposition and LUP-decomposition exercise solution codepad
284 01 Nov 2011 RIP John McCarthy: Implementation of the “Maxwell’s equations of software” from the LISP 1.5 Programmer’s Manual exercise solution codepad
328 03 Apr 2012 Cornacchia’s Algorithm: Find solutions to quadratic diophantine equations exercise solution codepad
90 01 Dec 2009 Wolves And Rabbits: Analyze population dynamics using the Lotka-Volterra equations exercise solution codepad
376 21 Sep 2012 Autumn Equinox: Calculate the length of the day; provides a time-handling library exercise solution codepad
111 16 Feb 2010 Soundex: An algorithm to assign people’s last names to equivalence classes based on similar spelling exercise solution codepad
2 19 Feb 2009 Sieve of Eratosthenes: A Scheme implementation of an ancient algorithm exercise solution codepad
108 05 Feb 2010 Segmented Sieve Of Eratosthenes: Extend the Sieve of Eratosthenes to large ranges of integers exercise solution codepad
110 12 Feb 2010 Sieve of Atkin: A modern alternative to the Sieve of Eratosthenes for computing prime numbers exercise solution codepad
279 14 Oct 2011 The First N Primes: Embedding the Sieve of Eratosthenes in a priority queue instead of an array exercise solution codepad
332 17 Apr 2012 Twin Primes: A variant of the Sieve of Eratosthenes to find pairs of primes that differ by two exercise solution codepad
108 05 Feb 2010 Segmented Sieve Of Eratosthenes: Extend the Sieve of Eratosthenes to large ranges of integers exercise solution codepad
303 06 Jan 2012 Pritchard’s Wheel Sieve: An alternative to the Sieve of Eratosthenes with a faster asymptotic time complexity exercise solution codepad
342 22 May 2012 Hamming Codes: Send messages over a noisy channel without error exercise solution codepad
84 10 Nov 2009 Merge Sort: A fast, stable sorting algorithm, especially well-suited to linked lists exercise solution codepad
349 19 Jun 2012 Digits Of E: Two algorithms that compute the digits of e, one bounded, the other unbounded exercise solution codepad
212 18 Feb 2011 Two Factoring Games: Home primes and the Euclid-Mullin sequence exercise solution codepad
214 25 Feb 2011 Sieve Of Euler: An alternate, and slow, method of sieving for primes exercise solution codepad
273 20 Sep 2011 Project Euler Problem 3: Thorough explanation of integer factorization by trial division exercise solution codepad
95 18 Dec 2009 Calculating Logarithms: Use the methods of Newton and Euler to calculate square roots and logarithms exercise solution codepad
445 31 May 2013 The Seven Bridges of Königsberg: A classic graph puzzle due to Leonhard Euler exercise solution codepad
49 10 Jul 2009 The Golden Ratio: Evaluate a continued fraction, based on my daughter’s math homework exercise solution codepad
128 16 Apr 2010 Expression Evaluation: Parse and evaluate an arithmetic expression with plus, minus, times, divide and parentheses exercise solution codepad
358 20 Jul 2012 Infix Expression Evaluation: Write a parser to evaluate arithmetic expressions exercise solution codepad
129 20 Apr 2010 145 Puzzle: Build and evaluate expressions using the digits one through nine and the simple arithmetic operators exercise solution codepad
1 19 Feb 2009 RPN Calculator: Evaluate numeric expressions at the command line exercise solution codepad
404 01 Jan 2013 Happy New Year!: Find expressions that evaluate to 2013 exercise solution codepad
128 16 Apr 2010 Expression Evaluation: Parse and evaluate an arithmetic expression with plus, minus, times, divide and parentheses exercise solution codepad
358 20 Jul 2012 Infix Expression Evaluation: Write a parser to evaluate arithmetic expressions exercise solution codepad
337 04 May 2012 Even-Odd Partition: Partition an array so all even integers precede all odd integers exercise solution codepad
115 02 Mar 2010 Goldbach’s Conjecture: Every even number greater than two can be written as the sum of two primes exercise solution codepad
337 04 May 2012   Even-Odd Partition: Partition an array so all even integers precede all odd integers exercise solution codepad
4 19 Feb 2009 Sudoku: A backtracking solution to everybody’s favorite puzzle exercise solution codepad
115 02 Mar 2010 Goldbach’s Conjecture: Every even number greater than two can be written as the sum of two primes exercise solution codepad
266 26 Aug 2011 Reverse Every K Nodes Of A Linked List: Reverse the elements of a sub-list exercise solution codepad
356 13 Jul 2012 The Evolution Of Flibs: Use genetic programming to build a finite state machine exercise solution codepad
118 12 Mar 2010 Traveling Salesman: Brute Force: Examine all possible permutations to find the least-cost tour exercise solution codepad
315 17 Feb 2012 Hailstones: Examine the Collatz sequence exercise solution codepad
179 26 Oct 2010 Benford’s Law: A useful mathematical oddity, and an example of text file databases exercise solution codepad
251 05 Jul 2011 Big Numbers: Examples: A library for big integers: display factorials to 50, determine if a number is prime, and compute its prime factors exercise solution codepad
208 04 Feb 2011 Excel Columns: Numbers as in Excel column names, A=1, Z=26, IV=256 exercise solution codepad
208 04 Feb 2011   Excel Columns: Numbers as in Excel column names, A=1, Z=26, IV=256 exercise solution codepad
305 13 Jan 2012   Excel’s XIRR Function: Numerical calculation of a derivative exercise solution codepad
473 12 Sep 2013 Diffie Hellman Key Exchange: Manage secure exchanges on an insecure communications channel exercise solution codepad
473 12 Sep 2013 Diffie Hellman Key Exchange: Manage secure exchanges on an insecure communications channel exercise solution codepad
455 05 Jul 2013 Weekdays Between Two Dates: Number of days between two dates, excluding Saturday and Sunday exercise solution codepad
190 03 Dec 2010 Maximum Sum Subsequence: A classic programming exercise due to Jon Bentley exercise solution codepad
170 24 Sep 2010 Alien Numbers: An exercise from Google Code Jam exercise solution codepad
476 24 Sep 2013 Finding Digit Strings In Powers Of Two: A simple exercise from one of the competitive programming sites exercise solution codepad
195 21 Dec 2010 Interval Arithmetic: An exercise from SICP exercise solution codepad
364 10 Aug 2012 Minimum Scalar Product: A simple exercise from the practice round of Google Code Jam 2008 exercise solution codepad
296 13 Dec 2011 Validating Telephone Numbers: An exercise in input validation exercise solution codepad
137 01 Jun 2010 Unwrapping A Spiral: An exercise in recursion exercise solution codepad
144 25 Jun 2010 Learn A New Language: Solve the exercise of your choice in an unfamiliar language exercise solution codepad
316 21 Feb 2012 Learn A New Language: Solve the exercise of your choice in an unfamiliar language exercise solution codepad
46 30 Jun 2009 Steve Yegge’s Phone-Screen Coding Exercises: A simple set of programming exercises based on a blog entry by Steve Yegge exercise solution codepad
46 30 Jun 2009 Steve Yegge’s Phone-Screen Coding Exercises: A simple set of programming exercises based on a blog entry by Steve Yegge exercise solution codepad
146 02 Jul 2010 Contents: Chronological Listing Of Exercises: Blog management exercise solution codepad
51 17 Jul 2009 International Mathematical Olympiad: Three exercises from 1960s math competitions exercise solution codepad
439 10 May 2013 MindCipher: Three exercises from the MindCipher puzzle website exercise solution codepad
366 17 Aug 2012 Two Random Exercises: Two exercises involving random numbers exercise solution codepad
221 22 Mar 2011 Two Kaprekar Exercises: Kaprekar chains and Kaprekar numbers, from the Indian mathematician Dattaraya Ramchandra Kaprekar exercise solution codepad
175 12 Oct 2010 Rotate An Array: A simple but tricky exercise solved by an algorithm from the folklore of computing exercise solution codepad
438 07 May 2013 Three List Exercises: Three simple exercises on lists, for beginning programmers exercise solution codepad
268 02 Sep 2011 Two String Exercises: Remove duplicate characters, and squish adjacent blanks exercise solution codepad
438 07 May 2013 Three List Exercises: Three simple exercises on lists, for beginning programmers exercise solution codepad
211 15 Feb 2011 Google Code Jam Qualification Round Africa 2010: Three simple exercises exercise solution codepad
367 21 Aug 2012 Two More Random Exercises: Two bad random number generators, the middle-square method and RANDU exercise solution codepad
366 17 Aug 2012 Two Random Exercises: Two exercises involving random numbers exercise solution codepad
38 02 Jun 2009 Pig Latin: A simple exercise to solve a children’s game exercise solution codepad
140 11 Jun 2010 N-Queens: Our version of a classic algorithmic exercise exercise solution codepad
280 18 Oct 2011 The Wall: Ray Panko’s spreadsheet exercise exercise solution codepad
400 18 Dec 2012 Petals Around The Rose: A game to celebrate our 400th exercise exercise solution codepad
58 11 Aug 2009 Uncle Bob’s Bowling Game Kata: Use pattern-matching on lists to solve a classic object-oriented programming exercise exercise solution codepad
426 26 Mar 2013 Google Code Jam Qualification Round Africa 2010, Revisited: Four solutions to a Google programming exercise, with various time complexities exercise solution codepad
322 13 Mar 2012 Perfect Power Predicate: Given a positive integer n, determine if there exists a b and e for which be = n exercise solution codepad
44 23 Jun 2009 The Mod Out System: Expand a series of ranges exercise solution codepad
234 06 May 2011 Entab And Detab: expand tabs into spaces, and replace spaces with tabs exercise solution codepad
422 12 Mar 2013 An Array Of Two Symbols: A learning experience for binary search exercise solution codepad
273 20 Sep 2011 Project Euler Problem 3: Thorough explanation of integer factorization by trial division exercise solution codepad
324 20 Mar 2012 Factoring Multiple RSA Keys: Exploit a key-generation weakness to factor RSA keys exercise solution codepad
85 13 Nov 2009 Two linear sorts: Count sort and radix sort exploit the structure of integer keys exercise solution codepad
335 27 Apr 2012 Trabb Pardo Knuth Algorithm: Trivial algorithm, used to explore an unfamiliar language exercise solution codepad
454 02 Jul 2013 Decoding Text-Speak: Expnd txt wth only intl vwls and n dbld ltrs exercise solution codepad
201 11 Jan 2011 Two Integrals: The exponential and logarithmic integral, and an approximation for prime-pi exercise solution codepad
154 30 Jul 2010 Fibonacci Numbers: Three algorithms taking exponential time, linear time, and logarithmic time exercise solution codepad
418 26 Feb 2013 An Odd Way To Square: Square a number without using multiplication or exponentiation exercise solution codepad
74 06 Oct 2009 MapReduce: Google’s famous system for parallelizing computations expressed as a programming idiom exercise solution codepad
128 16 Apr 2010   Expression Evaluation: Parse and evaluate an arithmetic expression with plus, minus, times, divide and parentheses exercise solution codepad
358 20 Jul 2012 Infix Expression Evaluation: Write a parser to evaluate arithmetic expressions exercise solution codepad
1 19 Feb 2009 RPN Calculator: Evaluate numeric expressions at the command line exercise solution codepad
68 15 Sep 2009 Regular Expressions, Part 1: A parser for regular expressions exercise solution codepad
69 18 Sep 2009 Regular Expressions, Part 2: The corresponding matcher exercise solution codepad
70 22 Sep 2009 Regular Expressions, Part 3: A regular expression test suite exercise solution codepad
404 01 Jan 2013 Happy New Year!: Find expressions that evaluate to 2013 exercise solution codepad
358 20 Jul 2012 Infix Expression Evaluation: Write a parser to evaluate arithmetic expressions exercise solution codepad
68 15 Sep 2009 Regular Expressions, Part 1: A parser for regular expressions exercise solution codepad
129 20 Apr 2010 145 Puzzle: Build and evaluate expressions using the digits one through nine and the simple arithmetic operators exercise solution codepad
70 22 Sep 2009 Regular Expressions, Part 3: A regular expression test suite exercise solution codepad
128 16 Apr 2010 Expression Evaluation: Parse and evaluate an arithmetic expression with plus, minus, times, divide and parentheses exercise solution codepad
292 29 Nov 2011 AVL Trees, Extended: Add additional functionality to AVL trees exercise solution codepad
120 19 Mar 2010   Extending Pollard’s P−1 Factorization Algorithm: Add a second stage to allow larger factorizations exercise solution codepad
108 05 Feb 2010 Segmented Sieve Of Eratosthenes: Extend the Sieve of Eratosthenes to large ranges of integers exercise solution codepad
484 22 Oct 2013 David Gries’ Coffee Can Problem: Simulate the process of extracting beans from a coffee can exercise solution codepad
72 29 Sep 2009 Green Eyes: A counting problem from high-school math exercise solution codepad
167 14 Sep 2010 The Factorization Of F7: Part 1: Our fortieth anniversary celebration of Morrison and Brillhart’s method of integer factorization by continued fractions exercise solution codepad
168 17 Sep 2010 The Factorization Of F7: Part 2: Our fortieth anniversary celebration of Morrison and Brillhart’s method of integer factorization by continued fractions exercise solution codepad
415 15 Feb 2013   Facebook Hacker Cup 2013, Round 1, Problem 1: Count the ways to win a card game exercise solution codepad
377 28 Sep 2012 Pocklington’s N−1 Primality Prover: Prove n prime if n−1 can be partially factored exercise solution codepad
429 05 Apr 2013 Last Non-Zero Digit Of A Factorial: Find the last non-zero digit of a factorial exercise solution codepad
251 05 Jul 2011 Big Numbers: Examples: A library for big integers: display factorials to 50, determine if a number is prime, and compute its prime factors exercise solution codepad
429 05 Apr 2013 Last Non-Zero Digit Of A Factorial: Find the last non-zero digit of a factorial exercise solution codepad
424 19 Mar 2013 Quadratic Sieve: Basic version of a powerful factoring algorithm exercise solution codepad
212 18 Feb 2011 Two Factoring Games: Home primes and the Euclid-Mullin sequence exercise solution codepad
324 20 Mar 2012   Factoring Multiple RSA Keys: Exploit a key-generation weakness to factor RSA keys exercise solution codepad
120 19 Mar 2010 Extending Pollard’s P−1 Factorization Algorithm: Add a second stage to allow larger factorizations exercise solution codepad
138 04 Jun 2010 Williams’ P+1 Factorization Algorithm: A factorization algorithm, similar to Pollard’s p−1 algorithm exercise solution codepad
161 24 Aug 2010 Daniel Shanks’ Square Form Factorization Algorithm: A simple and very fast factorization algorithm for integers between 105 and 1020 exercise solution codepad
52 21 Jul 2009 Pollard’s P−1 Factorization Algorithm: A simple factorization algorithm by John Pollard exercise solution codepad
236 13 May 2011 Dixon’s Factorization Algorithm: A slow, but theoretically important, algorithm for integer factorization exercise solution codepad
52 21 Jul 2009 Pollard’s P−1 Factorization Algorithm: A simple factorization algorithm by John Pollard exercise solution codepad
161 24 Aug 2010 Daniel Shanks’ Square Form Factorization Algorithm: A simple and very fast factorization algorithm for integers between 105 and 1020 exercise solution codepad
272 16 Sep 2011 Pollard’s P−1 Factorization Algoritihm, Revisited: An improved second stage that is much faster than the original exercise solution codepad
138 04 Jun 2010 Williams’ P+1 Factorization Algorithm: A factorization algorithm, similar to Pollard’s p−1 algorithm exercise solution codepad
55 31 Jul 2009 Elliptic Curve Factorization: A very simple implementation of elliptic curve factorization exercise solution codepad
167 14 Sep 2010 The Factorization Of F7: Part 1: Our fortieth anniversary celebration of Morrison and Brillhart’s method of integer factorization by continued fractions exercise solution codepad
168 17 Sep 2010 The Factorization Of F7: Part 2: Our fortieth anniversary celebration of Morrison and Brillhart’s method of integer factorization by continued fractions exercise solution codepad
34 19 May 2009 Fermat’s Method: Integer factorization by Fermat’s algorithm exercise solution codepad
273 20 Sep 2011 Project Euler Problem 3: Thorough explanation of integer factorization by trial division exercise solution codepad
132 30 Apr 2010 Integer Factorization: Combine trial division, Pollard’s rho and p−1 methods, and elliptic curves into a single factorization program exercise solution codepad
31 08 May 2009 Wheel Factorization: Find the factors of a number by a variant of trial division exercise solution codepad
43 19 Jun 2009 Monte Carlo Factorization: Integer factorization via Pollard’s rho algorithm exercise solution codepad
167 14 Sep 2010 The Factorization Of F7: Part 1: Our fortieth anniversary celebration of Morrison and Brillhart’s method of integer factorization by continued fractions exercise solution codepad
168 17 Sep 2010 The Factorization Of F7: Part 2: Our fortieth anniversary celebration of Morrison and Brillhart’s method of integer factorization by continued fractions exercise solution codepad
130 23 Apr 2010 Modern Elliptic Curve Factorization, Part 1: Elliptic arithmetic using Montgomery’s parameterization exercise solution codepad
131 27 Apr 2010 Modern Elliptic Curve Factorization, Part 2: Elliptic arithmetic using Montgomery’s parameterization exercise solution codepad
132 30 Apr 2010 Integer Factorization: Combine trial division, Pollard’s rho and p−1 methods, and elliptic curves into a single factorization program exercise solution codepad
120 19 Mar 2010 Extending Pollard’s P−1 Factorization Algorithm: Add a second stage to allow larger factorizations exercise solution codepad
204 21 Jan 0 Pollard Rho, Revisited: Richard Brent’s variant of John Pollard’s rho algorithm for integer factorization exercise solution codepad
236 13 May 2011 Dixon’s Factorization Algorithm: A slow, but theoretically important, algorithm for integer factorization exercise solution codepad
55 31 Jul 2009 Elliptic Curve Factorization: A very simple implementation of elliptic curve factorization exercise solution codepad
56 04 Aug 2009 Lenstra’s Algorithm: Hendrik Lenstra’s original algorithm for elliptic curve factorization exercise solution codepad
43 19 Jun 2009 Monte Carlo Factorization: Integer factorization via Pollard’s rho algorithm exercise solution codepad
286 08 Nov 2011 Improved Standard Continuation: An improved version of elliptic curve factorization, widely used in current practice exercise solution codepad
127 13 Apr 2010 Traveling Salesman: Minimum Spanning Tree: Heuristic guarantees solution within factor of two of optimal tour exercise solution codepad
324 20 Mar 2012 Factoring Multiple RSA Keys: Exploit a key-generation weakness to factor RSA keys exercise solution codepad
267 30 Aug 2011 Hamming Numbers: List the numbers with no factors greater than 5, a classic problem popularized by Dijkstra exercise solution codepad
31 08 May 2009 Wheel Factorization: Find the factors of a number by a variant of trial division exercise solution codepad
338 08 May 2012 Factor Tables: Table of factors of integers exercise solution codepad
251 05 Jul 2011 Big Numbers: Examples: A library for big integers: display factorials to 50, determine if a number is prime, and compute its prime factors exercise solution codepad
474 17 Sep 2013 Smallest Consecutive Four-Factor Composites: Find consecutive numbers with four factors exercise solution codepad
338 08 May 2012   Factor Tables: Table of factors of integers exercise solution codepad
456 12 Jul 2013 Dynamic Hash Tables: Hash tables that grow and contract automatically to maintain a constant load factor exercise solution codepad
372 07 Sep 2012 The First Two Programs: Hello World and a fahrenheit / celsius conversion table exercise solution codepad
74 06 Oct 2009 MapReduce: Google’s famous system for parallelizing computations expressed as a programming idiom exercise solution codepad
196 24 Dec 2010 Tracking Santa: How far does Santa travel on his annual journey? exercise solution codepad
63 28 Aug 2009 String Search: Boyer-Moore: Search for a pattern in a text using a fast and simple algorithm exercise solution codepad
303 06 Jan 2012 Pritchard’s Wheel Sieve: An alternative to the Sieve of Eratosthenes with a faster asymptotic time complexity exercise solution codepad
272 16 Sep 2011 Pollard’s P−1 Factorization Algoritihm, Revisited: An improved second stage that is much faster than the original exercise solution codepad
112 19 Feb 2010 Sieve Of Atkin, Improved: A faster version of the Sieve of Atkin exercise solution codepad
161 24 Aug 2010 Daniel Shanks’ Square Form Factorization Algorithm: A simple and very fast factorization algorithm for integers between 105 and 1020 exercise solution codepad
343 25 May 2012 Ackermann’s Function: A fast-growing function that tests recursion exercise solution codepad
478 01 Oct 2013 Lucas Sequences: Fast methods for calculating Lucas sequences, similar to Fibonacci sequences exercise solution codepad
396 04 Dec 2012 Median Of Five: A very fast method to compute the median of five items exercise solution codepad
84 10 Nov 2009 Merge Sort: A fast, stable sorting algorithm, especially well-suited to linked lists exercise solution codepad
4 19 Feb 2009 Sudoku: A backtracking solution to everybody’s favorite puzzle exercise solution codepad
250 01 Jul 2011   Feet And Inches: Convert decimal inches to carpenters’ fractions exercise solution codepad
34 19 May 2009 Fermat’s Method: Integer factorization by Fermat’s algorithm exercise solution codepad
34 19 May 2009   Fermat’s Method: Integer factorization by Fermat’s algorithm exercise solution codepad
238 20 May 0 ISBN Validation: Validate ISBN book numbers, and fetch author and title from the internet exercise solution codepad
182 05 Nov 2010 Weather Forecast: Fetch the weather forecast from the internet exercise solution codepad
41 12 Jun 2009   Feynman’s Puzzle: A simple logic puzzle exercise solution codepad
453 28 Jun 2013 A Programming Puzzle: Write a function f so that f(f(n)) = -n for all integers n. exercise solution codepad
180 29 Oct 2010 Fibonacci Primes: Find primes among the fibonacci numbers; includes the Park-Miller random number generator and Miller-Rabin primality checker exercise solution codepad
359 24 Jul 2012 Zeckendorf Representation: Find the fibonacci numbers that sum to a given number exercise solution codepad
154 30 Jul 2010   Fibonacci Numbers: Three algorithms taking exponential time, linear time, and logarithmic time exercise solution codepad
374 14 Sep 2012 Tribonacci Numbers: A variant of fibonacci numbers exercise solution codepad
180 29 Oct 2010   Fibonacci Primes: Find primes among the fibonacci numbers; includes the Park-Miller random number generator and Miller-Rabin primality checker exercise solution codepad
478 01 Oct 2013 Lucas Sequences: Fast methods for calculating Lucas sequences, similar to Fibonacci sequences exercise solution codepad
57 07 Aug 2009 ADFGX: A classic German military field cipher from the First World War exercise solution codepad
47 03 Jul 2009 The Playfair Cipher: A classic military field cipher exercise solution codepad
177 19 Oct 2010 Text File Databases: Part 1: Functions to read records with fields in various formats exercise solution codepad
159 17 Aug 2010 Cut: Select fields or characters from input lines exercise solution codepad
178 22 Oct 2010 Text File Databases: Part 2: Various functions to process records with fields exercise solution codepad
411 01 Feb 2013 Hofstadter’s Sequence: An infinite figure-figure sequence exercise solution codepad
222 25 Mar 2011 Sum: The standard Unix V7 file-checksum command exercise solution codepad
177 19 Oct 2010 Text File Databases: Part 1: Functions to read records with fields in various formats exercise solution codepad
178 22 Oct 2010 Text File Databases: Part 2: Various functions to process records with fields exercise solution codepad
179 26 Oct 2010 Benford’s Law: A useful mathematical oddity, and an example of text file databases exercise solution codepad
363 07 Aug 2012 Make: The classic Unix utility for managing file dependencies exercise solution codepad
387 02 Nov 2012 Gasoline Mileage Log: Read a file of gasoline purchases to compute miles per gallon exercise solution codepad
479 04 Oct 2013 Calculating Statistics: Read a file of integers and calculate mean, median and mode exercise solution codepad
136 28 May 2010 Printing Files: A simple program to list files, similar to the unix pr program exercise solution codepad
371 04 Sep 2012 Fountain Codes: Transmit files over a lossy channel exercise solution codepad
136 28 May 2010 Printing Files: A simple program to list files, similar to the unix pr program exercise solution codepad
114 26 Feb 2010 Run Length Encoding: A simple compression method for text files exercise solution codepad
139 08 Jun 2010 Diff: Find the differences between two text files exercise solution codepad
235 10 May 2011 Comm: select or reject lines common to two sorted files exercise solution codepad
382 16 Oct 2012 Version Control: Economically store multiple versions of text files exercise solution codepad
189 30 Nov 2010 Form Letters: Merge a schema and a data file to write form letters exercise solution codepad
225 05 Apr 2011 Fortune: Print a random aphorism from a file exercise solution codepad
16 17 Mar 2009 Comma-Separated Values: Retrieve records from a comma-separated values file using a finite-state machine exercise solution codepad
265 23 Aug 2011 Knapsack: Fill a knapsack to maximize the value of its contents exercise solution codepad
26 21 Apr 2009 Probabilistic Spell Checking: A probabilistic spell-checker based on a Bloom filter exercise solution codepad
64 01 Sep 2009 String Search: Rabin-Karp: Our final classic string-search algorithm exercise solution codepad
23 10 Apr 2009 Anagrams: Find anagrams in a dictionary exercise solution codepad
460 26 Jul 2013 Find X[i] = i In An Array: Find an array element equal to its index exercise solution codepad
313 10 Feb 2012 Search In An Ascending Matrix: Find a number in a matrix where both rows and columns are sorted in ascending order exercise solution codepad
474 17 Sep 2013 Smallest Consecutive Four-Factor Composites: Find consecutive numbers with four factors exercise solution codepad
314 14 Feb 2012 Divisors: Find divisors using a sieve exercise solution codepad
404 01 Jan 2013 Happy New Year!: Find expressions that evaluate to 2013 exercise solution codepad
340 15 May 2012 Streaming Knapsack: Find first possible combination from a stream that sums to a given integer exercise solution codepad
365 14 Aug 2012 4SUM: Find four numbers in an array that sum to zero exercise solution codepad
476 24 Sep 2013   Finding Digit Strings In Powers Of Two: A simple exercise from one of the competitive programming sites exercise solution codepad
224 01 Apr 2011 Maximum Difference In An Array: Find maximum Xj &minus Xi, with ij exercise solution codepad
370 31 Aug 2012 Once In A Blue Moon: Find months with two full moons exercise solution codepad
332 17 Apr 2012 Twin Primes: A variant of the Sieve of Eratosthenes to find pairs of primes that differ by two exercise solution codepad
180 29 Oct 2010 Fibonacci Primes: Find primes among the fibonacci numbers; includes the Park-Miller random number generator and Miller-Rabin primality checker exercise solution codepad
334 24 Apr 2012 Rhyming Dictionary: Find rhyming words for poets exercise solution codepad
328 03 Apr 2012 Cornacchia’s Algorithm: Find solutions to quadratic diophantine equations exercise solution codepad
386 30 Oct 2012 Pandigital Numbers: Find sums that include all ten digits exercise solution codepad
271 13 Sep 2011 Tetrahedral Numbers: Find the base of the tetrahedron that contains 169179692512835000 balls exercise solution codepad
121 23 Mar 2010 Texas Hold ‘Em: Find the best poker hand exercise solution codepad
139 08 Jun 2010 Diff: Find the differences between two text files exercise solution codepad
274 23 Sep 2011 Array Duplicates: Find the duplicate integer in a large array exercise solution codepad
31 08 May 2009 Wheel Factorization: Find the factors of a number by a variant of trial division exercise solution codepad
359 24 Jul 2012 Zeckendorf Representation: Find the fibonacci numbers that sum to a given number exercise solution codepad
264 19 Aug 2011 First Non-Repeating Character: Find the first character in a string that doesn’t repeat later in the string exercise solution codepad
436 30 Apr 2013 First Unrepeated Character In A String: Find the first character that appears only once in a string exercise solution codepad
394 27 Nov 2012 Amazon Interview Question: Find the hundred points of a million closest to the origin exercise solution codepad
93 11 Dec 2009 Selection: Find the kth-largest item in a list exercise solution codepad
429 05 Apr 2013 Last Non-Zero Digit Of A Factorial: Find the last non-zero digit of a factorial exercise solution codepad
118 12 Mar 2010 Traveling Salesman: Brute Force: Examine all possible permutations to find the least-cost tour exercise solution codepad
176 15 Oct 2010   Find The Longest Palindrome In A String: A beautiful linear-time algorithm due to Johan Jeuring exercise solution codepad
218 11 Mar 2011 Lowest Common Ancestor: Find the lowest node in a binary search tree that is a common ancestor to two given nodes exercise solution codepad
352 29 Jun 2012 Sliding Median: Find the median of the most recent k items in a stream exercise solution codepad
344 00 May 2012 Streaming Median: Find the medians of a set of numbers as they arrive in a stream exercise solution codepad
125 06 Apr 2010 Minimum Spanning Tree: Kruskal’s Algorithm: Find the minimum-cost tree that includes all the nodes in a graph exercise solution codepad
126 09 Apr 2010 Minimum Spanning Tree: Prim’s Algorithm: Find the minimum-cost tree that includes all the nodes in a graph exercise solution codepad
482 15 Oct 2013 Find The Minimum Difference: Find the minimum difference between any item from on list and any item from another list exercise solution codepad
482 15 Oct 2013   Find The Minimum Difference: Find the minimum difference between any item from on list and any item from another list exercise solution codepad
360 27 Jul 2012 Min Stack: Provide push and pop operations and find the minimum element in linear time exercise solution codepad
35 22 May 2009 The Next Palindrome: Find the next palindromic number greater than the input number exercise solution codepad
122 26 Mar 2010 The Next Prime: Efficiently find the next prime number larger than a given number exercise solution codepad
414 12 Feb 2013 Binary Search Tree: In-Order Predecessor And Successor: Find the previous and next items in a tree exercise solution codepad
403 28 Dec 2012 Three Wise Men: Find the prices of their gifts exercise solution codepad
199 04 Jan 2011 Dijkstra’s Algorithm: Find the shortest path to all vertices of a graph from a single source, guest written by Graham Enos exercise solution codepad
318 28 Feb 2012 Next Greater Permutation Of Digits: Find the smallest number larger than the input number using the same digits as the input number exercise solution codepad
355 10 Jul 2012 Sieve For Totients: Find the totients of a large range of integers using a sieve exercise solution codepad
450 18 Jun 2013 3SUM: A classic of computer science: find three numbers in an array that sum to zero exercise solution codepad
416 19 Feb 2013 NPR Sunday Puzzle: Find two words containing the letters a, b, c, d, e and f exercise solution codepad
380 09 Oct 2012 Two Word Games: Find words in a dictionary exercise solution codepad
460 26 Jul 2013   Find X[i] = i In An Array: Find an array element equal to its index exercise solution codepad
16 17 Mar 2009 Comma-Separated Values: Retrieve records from a comma-separated values file using a finite-state machine exercise solution codepad
356 13 Jul 2012 The Evolution Of Flibs: Use genetic programming to build a finite state machine exercise solution codepad
28 28 Apr 2009 Morse Code: Translating the dots-and-dashes of Samuel Finley Breese Morse’s telegraph code exercise solution codepad
373 11 Sep 2012 The Sum Of The First Billion Primes: Write a prime generator, and use it exercise solution codepad
264 19 Aug 2011 First Non-Repeating Character: Find the first character in a string that doesn’t repeat later in the string exercise solution codepad
436 30 Apr 2013 First Unrepeated Character In A String: Find the first character that appears only once in a string exercise solution codepad
209 08 Feb 2011 The First Computer Program: Ada Lovelace’s program to compute Bernoulli numbers for Charles Babbage’s Analytical Engine exercise solution codepad
147 06 Jul 2010 Chaocipher: First look at a ninety-two year old autokey-type cipher exercise solution codepad
264 19 Aug 2011   First Non-Repeating Character: Find the first character in a string that doesn’t repeat later in the string exercise solution codepad
279 14 Oct 2011 The First N Primes: Embedding the Sieve of Eratosthenes in a priority queue instead of an array exercise solution codepad
350 22 Jun 2012 Billboard Challenge, Part 1: First part of a Google recruiting challenge exercise solution codepad
340 15 May 2012 Streaming Knapsack: Find first possible combination from a stream that sums to a given integer exercise solution codepad
372 07 Sep 2012 The First Two Programs: Hello World and a fahrenheit / celsius conversion table exercise solution codepad
436 30 Apr 2013   First Unrepeated Character In A String: Find the first character that appears only once in a string exercise solution codepad
57 07 Aug 2009 ADFGX: A classic German military field cipher from the First World War exercise solution codepad
465 13 Aug 2013 Unix Paths: Convert relative Unix path to absolute, by Robert Fisher exercise solution codepad
396 04 Dec 2012 Median Of Five: A very fast method to compute the median of five items exercise solution codepad
229 19 Apr 2011 Same Five Digits: A math puzzle from New Scientist, solved by guest author Bob Miller exercise solution codepad
396 04 Dec 2012 Median Of Five: A very fast method to compute the median of five items exercise solution codepad
87 20 Nov 2009 Master Mind, Part 2: Solve a Master Mind puzzle in five probes or less exercise solution codepad
435 26 Apr 2013 Correct Horse Battery Staple, Improved: Fix a horrible bug in the original version exercise solution codepad
388 06 Nov 2012 Fix Something Annoying: Take control of your computing environment by fixing something that annoys you exercise solution codepad
388 06 Nov 2012   Fix Something Annoying: Take control of your computing environment by fixing something that annoys you exercise solution codepad
231 26 Apr 2011 Miscellanea: FizzBuzz, Prime Words, and Split A List exercise solution codepad
420 05 Mar 2013 Dutch National Flag: Classic ternary sort by Edsgar Dijkstra exercise solution codepad
215 01 Mar 2011 An Early LISP Program: A program to flatten a list, from the March 1960 LISP I manual exercise solution codepad
5 19 Feb 2009   Flavius Josephus: Programming a cyclical list exercise solution codepad
356 13 Jul 2012 The Evolution Of Flibs: Use genetic programming to build a finite state machine exercise solution codepad
103 19 Jan 2010   Flight Planning: Computing the navigation triangle, by Jos Koot exercise solution codepad
22 07 Apr 2009   Flipping Pancakes: A sorting method analyzed by Bill Gates exercise solution codepad
406 08 Jan 2013 Floating Point Rounding: Round a floating point number to a given decimal place exercise solution codepad
406 08 Jan 2013   Floating Point Rounding: Round a floating point number to a given decimal place exercise solution codepad
417 22 Feb 2013   Floupia: Make change in a strange currency exercise solution codepad
175 12 Oct 2010 Rotate An Array: A simple but tricky exercise solved by an algorithm from the folklore of computing exercise solution codepad
40 09 Jun 2009 Longest Common Subsequence: A classic programming algorithm, with a solution that dates to folklore exercise solution codepad
118 12 Mar 2010 Traveling Salesman: Brute Force: Examine all possible permutations to find the least-cost tour exercise solution codepad
61 21 Aug 2009 String Search: Brute Force: Search for a pattern in a text by comparing the pattern to the text at all possible positions exercise solution codepad
320 06 Mar 2012 Union Route Cipher: Military cipher used successfully by Union forces in the American Civil War exercise solution codepad
182 05 Nov 2010 Weather Forecast: Fetch the weather forecast from the internet exercise solution codepad
182 05 Nov 2010 Weather Forecast: Fetch the weather forecast from the internet exercise solution codepad
458 19 Jul 2013 J K Rowling: Identify an author using forensic linguistics exercise solution codepad
242 03 Jun 2011 Mersenne Primes: The Lucas-Lehmer test for identifying primes of the form 2n−1 exercise solution codepad
353 03 Jul 2012 Chopping Words: Form a chain of words by removing letters one at a time exercise solution codepad
475 20 Sep 2013 McCarthy’s 91 Function: A recursive function designed as a test case for formal verification exercise solution codepad
405 02 Jan 2013 Four Points Determine A Square: Determine if four given points form a square exercise solution codepad
408 18 Jan 2013 Triangle Trilemma: Determine if three points form a triangle, and classify it exercise solution codepad
177 19 Oct 2010 Text File Databases: Part 1: Functions to read records with fields in various formats exercise solution codepad
432 16 Apr 2013 Date Formatting: Neatly write a date in a variety of formats exercise solution codepad
341 18 May 2012   Formatted Numeric Output: A minimal version of C’s printf function exercise solution codepad
432 16 Apr 2013 Date Formatting: Neatly write a date in a variety of formats exercise solution codepad
161 24 Aug 2010 Daniel Shanks’ Square Form Factorization Algorithm: A simple and very fast factorization algorithm for integers between 105 and 1020 exercise solution codepad
189 30 Nov 2010   Form Letters: Merge a schema and a data file to write form letters exercise solution codepad
189 30 Nov 2010 Form Letters: Merge a schema and a data file to write form letters exercise solution codepad
330 10 Apr 2012 Galton: Simulate a marble-drop that forms a bell-shaped curve exercise solution codepad
91 04 Dec 2009 Autokey: A cipher in which the input text forms part of the key exercise solution codepad
407 15 Jan 2013 Translate CSV To Html: Convert between tabular storage forms exercise solution codepad
101 12 Jan 2010 Calculating Sines: Calculate sines using Taylor series and the triple-angle formula, by Bill Cruise exercise solution codepad
256 22 Jul 2011 Counting Primes Using Legendre’s Formula: Recreate Legendre’s two-century old calculation of the number of primes less than a million exercise solution codepad
149 13 Jul 2010 Word Cube: A game to form words from a given set of letters exercise solution codepad
167 14 Sep 2010 The Factorization Of F7: Part 1: Our fortieth anniversary celebration of Morrison and Brillhart’s method of integer factorization by continued fractions exercise solution codepad
168 17 Sep 2010 The Factorization Of F7: Part 2: Our fortieth anniversary celebration of Morrison and Brillhart’s method of integer factorization by continued fractions exercise solution codepad
225 05 Apr 2011   Fortune: Print a random aphorism from a file exercise solution codepad
192 10 Dec 2010 Two Random Selections: Use random number to select fortunes and lotto winners exercise solution codepad
371 04 Sep 2012   Fountain Codes: Transmit files over a lossy channel exercise solution codepad
474 17 Sep 2013 Smallest Consecutive Four-Factor Composites: Find consecutive numbers with four factors exercise solution codepad
474 17 Sep 2013 Smallest Consecutive Four-Factor Composites: Find consecutive numbers with four factors exercise solution codepad
405 02 Jan 2013 Four Points Determine A Square: Determine if four given points form a square exercise solution codepad
344 01 Jun 2012 Square Roots: Four methods to compute square roots, including one from antiquity exercise solution codepad
365 14 Aug 2012 4SUM: Find four numbers in an array that sum to zero exercise solution codepad
405 02 Jan 2013   Four Points Determine A Square: Determine if four given points form a square exercise solution codepad
426 26 Mar 2013 Google Code Jam Qualification Round Africa 2010, Revisited: Four solutions to a Google programming exercise, with various time complexities exercise solution codepad
299 23 Dec 2011 Koch’s Snowflake: Draw a fractal snowflake using PostScript exercise solution codepad
76 13 Oct 2009 Bifid: A simple but effective fractionating cipher, never used militarily exercise solution codepad
49 10 Jul 2009 The Golden Ratio: Evaluate a continued fraction, based on my daughter’s math homework exercise solution codepad
446 04 Jun 2013 Egyptian Fractions: An ancient method of representing fractions exercise solution codepad
167 14 Sep 2010 The Factorization Of F7: Part 1: Our fortieth anniversary celebration of Morrison and Brillhart’s method of integer factorization by continued fractions exercise solution codepad
168 17 Sep 2010 The Factorization Of F7: Part 2: Our fortieth anniversary celebration of Morrison and Brillhart’s method of integer factorization by continued fractions exercise solution codepad
205 25 Jan 2011 Rational Numbers: A library of basic arithmetic and comparison of fractions exercise solution codepad
250 01 Jul 2011 Feet And Inches: Convert decimal inches to carpenters’ fractions exercise solution codepad
446 04 Jun 2013 Egyptian Fractions: An ancient method of representing fractions exercise solution codepad
354 06 Jul 2012 Fractran: Write an interpreter for John Horton Conway’s language Fractran exercise solution codepad
354 06 Jul 2012   Fractran: Write an interpreter for John Horton Conway’s language Fractran exercise solution codepad
27 24 Apr 2009 Word Hy-phen-a-tion By Com-pu-ter: Frank Liang’s hyphenation algorithm, used in TeX exercise solution codepad
14 10 Mar 2009 Word Frequencies: Our interpretation of a problem solved by a classic unix pipeline exercise solution codepad
461 30 Jul 2013 Who Buys The Croissants?: Simulate an important Friday-morning question exercise solution codepad
15 13 Mar 2009   Friday, the Thirteenth: A small calendar library, and a simple use of it exercise solution codepad
248 24 Jun 2011 Thank God It’s Friday!: Three methods to calculate the day of the week exercise solution codepad
390 13 Nov 2012   Frobenius Primality Test: A pseudoprimality test, stronger than Miller-Rabin exercise solution codepad
453 28 Jun 2013 A Programming Puzzle: Write a function f so that f(f(n)) = -n for all integers n. exercise solution codepad
416 19 Feb 2013 NPR Sunday Puzzle: Find two words containing the letters a, b, c, d, e and f exercise solution codepad
370 31 Aug 2012 Once In A Blue Moon: Find months with two full moons exercise solution codepad
343 25 May 2012 Ackermann’s Function: A fast-growing function that tests recursion exercise solution codepad
113 23 Feb 2010 Engineering A Sort Function: A high-performance quicksort by Jon Bentley and Doug McIlroy exercise solution codepad
73 02 Oct 2009 Red-Black Trees: A purely functional dictionary data structure based on approximately-balanced trees exercise solution codepad
292 29 Nov 2011 AVL Trees, Extended: Add additional functionality to AVL trees exercise solution codepad
480 08 Oct 2013   Functional-Style Linked Lists: A library of functions on functional-style lists made from immutable pairs exercise solution codepad
480 08 Oct 2013 Functional-Style Linked Lists: A library of functions on functional-style lists made from immutable pairs exercise solution codepad
200 07 Jan 2011 Counting Primes: The prime counting function and nth-prime function exercise solution codepad
475 20 Sep 2013 McCarthy’s 91 Function: A recursive function designed as a test case for formal verification exercise solution codepad
184 12 Nov 2010 Rowland’s Prime-Generating Function: A sequence of ones and primes exercise solution codepad
384 23 Oct 2012 Universal Hash Function: Compute a hash for any native Scheme datatype exercise solution codepad
475 20 Sep 2013 McCarthy’s 91 Function: A recursive function designed as a test case for formal verification exercise solution codepad
453 28 Jun 2013 A Programming Puzzle: Write a function f so that f(f(n)) = -n for all integers n. exercise solution codepad
39 05 Jun 2009 Ternary Search Tries: Build a function library for handling ternary search tries exercise solution codepad
48 07 Jul 2009 Modular Arithmetic: A function library for performing modular addition, subtraction, multiplication, division, and square root exercise solution codepad
305 13 Jan 2012 Excel’s XIRR Function: Numerical calculation of a derivative exercise solution codepad
249 28 Jun 2011 Big Numbers: Functions: A library for big integers: gcd, powering, square root, random numbers exercise solution codepad
257 26 Jul 2011 More Prime-Counting Functions: Prime counting functions by Meissel and Lehmer, based on Legendre’s sum exercise solution codepad
188 26 Nov 2010 Divisors And Totatives: The number-theoretic functions divisors, numdivs, sumdivs, totatives, and totient exercise solution codepad
54 28 Jul 2009 Elliptic Curves: Library of basic functions on elliptic curves exercise solution codepad
480 08 Oct 2013 Functional-Style Linked Lists: A library of functions on functional-style lists made from immutable pairs exercise solution codepad
481 11 Oct 2013 Imperative-Style Linked Lists: A library of functions on imperative-style lists made from mutable pairs exercise solution codepad
257 26 Jul 2011 More Prime-Counting Functions: Prime counting functions by Meissel and Lehmer, based on Legendre’s sum exercise solution codepad
287 11 Nov 2011 Generators: Write functions that yield a value, but can then be re-entered exercise solution codepad
178 22 Oct 2010 Text File Databases: Part 2: Various functions to process records with fields exercise solution codepad
177 19 Oct 2010 Text File Databases: Part 1: Functions to read records with fields in various formats exercise solution codepad
239 24 May 2011 Big Numbers: Getting Started: A library for big integers: representation, comparison, simple functions exercise solution codepad
378 02 Oct 2012 AKS Primality Prover, Part 1: Two functions used by the AKS primality prover exercise solution codepad
343 25 May 2012 Ackermann’s Function: A fast-growing function that tests recursion exercise solution codepad
172 01 Oct 2010 Oban Numbers: Numbers that omit the letter “o” when spelled, and a function to convert numbers to words exercise solution codepad
142 18 Jun 0 Parsing Command-Line Arguments: An old-style getopt function exercise solution codepad
200 07 Jan 2011 Counting Primes: The prime counting function and nth-prime function exercise solution codepad
258 29 Jul 2011 Approximating Pi: Approximating pi with the logarithmic integral and Riemann’s R function exercise solution codepad
341 18 May 2012 Formatted Numeric Output: A minimal version of C’s printf function exercise solution codepad
141 15 Jun 2010 Natural Join: The fundamental relational database operator exercise solution codepad
387 02 Nov 2012 Gasoline Mileage Log: Read a file of gasoline purchases to compute miles per gallon exercise solution codepad
330 10 Apr 2012   Galton: Simulate a marble-drop that forms a bell-shaped curve exercise solution codepad
285 04 Nov 2011 Craps: Simulate a popular game of gambling with dice exercise solution codepad
216 04 Mar 2011 Chutes And Ladders: Simulate a child’s game, and compute its statistics exercise solution codepad
486 29 Oct 2013 The 16 Game: Determine the odds in a scratch-off game exercise solution codepad
306 17 Jan 2012 Guess The Number: Number-guessing game for children learning arithmetic exercise solution codepad
298 20 Dec 2011 Hangman: Classic Unix V7 game for guessing words exercise solution codepad
17 20 Mar 2009 Dodgson's Doublets: A word game invented by the author of Alice in Wonderland exercise solution codepad
58 11 Aug 2009 Uncle Bob’s Bowling Game Kata: Use pattern-matching on lists to solve a classic object-oriented programming exercise exercise solution codepad
86 17 Nov 2009 Master Mind, Part 1: Referee a two-player game of deductive logic exercise solution codepad
285 04 Nov 2011 Craps: Simulate a popular game of gambling with dice exercise solution codepad
333 20 Apr 2012 John Horton Conway’s Game Of Life: The classic cellular automata exercise solution codepad
100 08 Jan 2010 Nim: A two-player game of mathematical logic exercise solution codepad
233 03 May 2011 Squaring The Bishop: Charles Babbage’s game of word squares exercise solution codepad
380 09 Oct 2012 Two Word Games: Find words in a dictionary exercise solution codepad
212 18 Feb 2011 Two Factoring Games: Home primes and the Euclid-Mullin sequence exercise solution codepad
400 18 Dec 2012 Petals Around The Rose: A game to celebrate our 400th exercise exercise solution codepad
149 13 Jul 2010 Word Cube: A game to form words from a given set of letters exercise solution codepad
38 02 Jun 2009 Pig Latin: A simple exercise to solve a children’s game exercise solution codepad
415 15 Feb 2013 Facebook Hacker Cup 2013, Round 1, Problem 1: Count the ways to win a card game exercise solution codepad
486 29 Oct 2013 The 16 Game: Determine the odds in a scratch-off game exercise solution codepad
29 01 May 2009 Primality Checking: A probabilistic primality checker by Gary Miller and Michael Rabin exercise solution codepad
387 02 Nov 2012   Gasoline Mileage Log: Read a file of gasoline purchases to compute miles per gallon exercise solution codepad
387 02 Nov 2012 Gasoline Mileage Log: Read a file of gasoline purchases to compute miles per gallon exercise solution codepad
22 07 Apr 2009 Flipping Pancakes: A sorting method analyzed by Bill Gates exercise solution codepad
135 25 May 2010   GB_FLIP: Donald Knuth’s portable, high-quality random-number generator from the Stanford Graphbase exercise solution codepad
249 28 Jun 2011 Big Numbers: Functions: A library for big integers: gcd, powering, square root, random numbers exercise solution codepad
11 27 Feb 2009 Mark V. Shaney: Generate parodies of a text using a Markov chain exercise solution codepad
385 26 Oct 2012 Pythatorean Triples: Generate primitive pythagorean triples by an ancient algorithm exercise solution codepad
117 09 Mar 2010 Lexicographic Permutations: Continually generate the next permutation using an algorithm by Dijkstra exercise solution codepad
180 29 Oct 2010 Fibonacci Primes: Find primes among the fibonacci numbers; includes the Park-Miller random number generator and Miller-Rabin primality checker exercise solution codepad
373 11 Sep 2012 The Sum Of The First Billion Primes: Write a prime generator, and use it exercise solution codepad
232 29 Apr 2011 Rule 30 RNG: The random number generator from Mathematica, based on Stephen Wolfram’s Rule 30 cellular automata exercise solution codepad
135 25 May 2010 GB_FLIP: Donald Knuth’s portable, high-quality random-number generator from the Stanford Graphbase exercise solution codepad
173 05 Oct 2010 George Marsaglia’s Random Number Generators: Nine high-quality RNGs in nineteen lines of code exercise solution codepad
367 21 Aug 2012 Two More Random Exercises: Two bad random number generators, the middle-square method and RANDU exercise solution codepad
287 11 Nov 2011   Generators: Write functions that yield a value, but can then be re-entered exercise solution codepad
434 23 Apr 2013 Correct Horse Battery Staple: Randall Munro’s passphrase generator exercise solution codepad
60 18 Aug 2009 Blum Blum Shub: Stream cipher based on a cryptographically secure pseudo-random number generator exercise solution codepad
270 09 Sep 2011 Mersenne Twister: Random number generator with very long period, useful for simulations exercise solution codepad
356 13 Jul 2012 The Evolution Of Flibs: Use genetic programming to build a finite state machine exercise solution codepad
173 05 Oct 2010   George Marsaglia’s Random Number Generators: Nine high-quality RNGs in nineteen lines of code exercise solution codepad
463 06 Aug 2013 Sophie Germain Primes: Primes p such that 2p+1 is also prime exercise solution codepad
57 07 Aug 2009 ADFGX: A classic German military field cipher from the First World War exercise solution codepad
142 18 Jun 0 Parsing Command-Line Arguments: An old-style getopt function exercise solution codepad
239 24 May 2011 Big Numbers: Getting Started: A library for big integers: representation, comparison, simple functions exercise solution codepad
18 23 Mar 2009 Binary Search: A simple task, easy to get wrong exercise solution codepad
402 25 Dec 2012 The Twelve Days of Christmas: Count the gifts of Christmas exercise solution codepad
403 28 Dec 2012 Three Wise Men: Find the prices of their gifts exercise solution codepad
309 27 Jan 2012 Anagram Phrases: “Gin grammar prop six” is an anagram for “Programming Praxis” exercise solution codepad
322 13 Mar 2012 Perfect Power Predicate: Given a positive integer n, determine if there exists a b and e for which be = n exercise solution codepad
174 08 Oct 2010 Zeller’s Congruence: Calculate the day of the week for a given date exercise solution codepad
406 08 Jan 2013 Floating Point Rounding: Round a floating point number to a given decimal place exercise solution codepad
339 11 May 2012 partitions: Sets of integers that sum to a given integer exercise solution codepad
340 15 May 2012 Streaming Knapsack: Find first possible combination from a stream that sums to a given integer exercise solution codepad
218 11 Mar 2011 Lowest Common Ancestor: Find the lowest node in a binary search tree that is a common ancestor to two given nodes exercise solution codepad
122 26 Mar 2010 The Next Prime: Efficiently find the next prime number larger than a given number exercise solution codepad
359 24 Jul 2012 Zeckendorf Representation: Find the fibonacci numbers that sum to a given number exercise solution codepad
405 02 Jan 2013 Four Points Determine A Square: Determine if four given points form a square exercise solution codepad
149 13 Jul 2010 Word Cube: A game to form words from a given set of letters exercise solution codepad
248 24 Jun 2011 Thank God It’s Friday!: Three methods to calculate the day of the week exercise solution codepad
115 02 Mar 2010   Goldbach’s Conjecture: Every even number greater than two can be written as the sum of two primes exercise solution codepad
49 10 Jul 2009 The Golden Ratio: Evaluate a continued fraction, based on my daughter’s math homework exercise solution codepad
364 10 Aug 2012 Minimum Scalar Product: A simple exercise from the practice round of Google Code Jam 2008 exercise solution codepad
426 26 Mar 2013   Google Code Jam Qualification Round Africa 2010, Revisited: Four solutions to a Google programming exercise, with various time complexities exercise solution codepad
211 15 Feb 2011   Google Code Jam Qualification Round Africa 2010: Three simple exercises exercise solution codepad
170 24 Sep 2010 Alien Numbers: An exercise from Google Code Jam exercise solution codepad
426 26 Mar 2013 Google Code Jam Qualification Round Africa 2010, Revisited: Four solutions to a Google programming exercise, with various time complexities exercise solution codepad
350 22 Jun 2012 Billboard Challenge, Part 1: First part of a Google recruiting challenge exercise solution codepad
351 26 Jun 2012 Billboard Challenge, Part 2: Second part of a Google recruiting challenge exercise solution codepad
74 06 Oct 2009 MapReduce: Google’s famous system for parallelizing computations expressed as a programming idiom exercise solution codepad
97 29 Dec 2009 A Statisticle Speling Korrecter: Peter Norvig’s version of the Google spelling suggester exercise solution codepad
24 14 Apr 2009   Google Treasure Hunt 2008 Puzzle 4: A prime-number puzzle exercise solution codepad
243 07 Jun 2011 Big Numbers: Division: A library for big integers: the grade-school algorithm for long division exercise solution codepad
241 31 May 2011 Big Numbers: Addition, Subtraction And Multiplication: A library for big integers: grade-school algorithms for addition, subtraction, and multiplication exercise solution codepad
289 18 Nov 2011 Grade School Multiplication: Display the steps in the grade school multiplication algorithm exercise solution codepad
289 18 Nov 2011   Grade School Multiplication: Display the steps in the grade school multiplication algorithm exercise solution codepad
199 04 Jan 2011 Dijkstra’s Algorithm: Find the shortest path to all vertices of a graph from a single source, guest written by Graham Enos exercise solution codepad
246 17 Jun 2011 Adi Shamir’s Threshold Scheme: Use cryptography to share a secret, by Graham Enos exercise solution codepad
153 27 Jul 2010 HAMURABI.BAS: Manage grain and land in ancient Sumeria exercise solution codepad
309 27 Jan 2012 Anagram Phrases: “Gin grammar prop six” is an anagram for “Programming Praxis” exercise solution codepad
135 25 May 2010 GB_FLIP: Donald Knuth’s portable, high-quality random-number generator from the Stanford Graphbase exercise solution codepad
186 19 Nov 2010 Topological Sort: Order the edges of a graph by their precedence relationship exercise solution codepad
199 04 Jan 2011 Dijkstra’s Algorithm: Find the shortest path to all vertices of a graph from a single source, guest written by Graham Enos exercise solution codepad
302 03 Jan 2012 Turtle Graphics: A minimal library of turtle graphics, as in the Logo language, implemented in PostScript exercise solution codepad
302 03 Jan 2012 Turtle Graphics: A minimal library of turtle graphics, as in the Logo language, implemented in PostScript exercise solution codepad
357 17 Jul 2012 Breshenham’s Line-Drawing Algorithm: Draw straight lines using raster graphics exercise solution codepad
445 31 May 2013 The Seven Bridges of Königsberg: A classic graph puzzle due to Leonhard Euler exercise solution codepad
125 06 Apr 2010 Minimum Spanning Tree: Kruskal’s Algorithm: Find the minimum-cost tree that includes all the nodes in a graph exercise solution codepad
126 09 Apr 2010 Minimum Spanning Tree: Prim’s Algorithm: Find the minimum-cost tree that includes all the nodes in a graph exercise solution codepad
10 24 Feb 2009 Mardi Gras: Compute the date of Easter exercise solution codepad
318 28 Feb 2012 Next Greater Permutation Of Digits: Find the smallest number larger than the input number using the same digits as the input number exercise solution codepad
267 30 Aug 2011 Hamming Numbers: List the numbers with no factors greater than 5, a classic problem popularized by Dijkstra exercise solution codepad
35 22 May 2009 The Next Palindrome: Find the next palindromic number greater than the input number exercise solution codepad
115 02 Mar 2010 Goldbach’s Conjecture: Every even number greater than two can be written as the sum of two primes exercise solution codepad
102 15 Jan 2010 Three Binary Algorithms: Multiplication, division and greatest common divisor using binary arithmetic exercise solution codepad
451 21 Jun 2013 Multiple Polynomial Quadratic Sieve: A greatly improved version of the basic quadratic sieve exercise solution codepad
119 16 Mar 2010 Traveling Salesman: Nearest Neighbor: A greedy heuristic that builds a path by always choosing the nearest unvisited point exercise solution codepad
72 29 Sep 2009   Green Eyes: A counting problem from high-school math exercise solution codepad
183 09 Nov 2010 Subset Sums: Third level of the Greplin Programming Challenge, using dynamic programming and memoization exercise solution codepad
71 25 Sep 2009   Grep: Simple version of the classic unix regular-expression matching utility exercise solution codepad
466 16 Aug 2013 Monkey Grid Puzzle: How many points can the monkey access? exercise solution codepad
484 22 Oct 2013 David Gries’ Coffee Can Problem: Simulate the process of extracting beans from a coffee can exercise solution codepad
77 16 Oct 2009   Growable Arrays: Arrays that grow and shrink at run-time, with O(log n) complexity per operation exercise solution codepad
456 12 Jul 2013 Dynamic Hash Tables: Hash tables that grow and contract automatically to maintain a constant load factor exercise solution codepad
77 16 Oct 2009 Growable Arrays: Arrays that grow and shrink at run-time, with O(log n) complexity per operation exercise solution codepad
228 15 Apr 2011 Partition Numbers: Calculate the partition numbers, using memoization via growing arrays exercise solution codepad
207 01 Feb 2011 Cuckoo Hashing: A hashing system with guaranteed constant-time lookup and amortized constant-time insertion exercise solution codepad
395 30 Nov 2012 Selection, Revisited: A guaranteed linear-time algorithm for selection exercise solution codepad
83 06 Nov 2009 Heap Sort: A guaranteed O(log n) sorting method based on priority queues exercise solution codepad
127 13 Apr 2010 Traveling Salesman: Minimum Spanning Tree: Heuristic guarantees solution within factor of two of optimal tour exercise solution codepad
298 20 Dec 2011 Hangman: Classic Unix V7 game for guessing words exercise solution codepad
306 17 Jan 2012   Guess The Number: Number-guessing game for children learning arithmetic exercise solution codepad
229 19 Apr 2011 Same Five Digits: A math puzzle from New Scientist, solved by guest author Bob Miller exercise solution codepad
199 04 Jan 2011 Dijkstra’s Algorithm: Find the shortest path to all vertices of a graph from a single source, guest written by Graham Enos exercise solution codepad
415 15 Feb 2013 Facebook Hacker Cup 2013, Round 1, Problem 1: Count the ways to win a card game exercise solution codepad
464 09 Aug 2013 Bit Hacks: A time-honored tradition, and useful exercise solution codepad
467 20 Aug 2013 More Bit Hacks: A time-honored tradition, and useful exercise solution codepad
471 03 Sep 2013 Yet More Bit Hacks: A time-honored tradition, and useful exercise solution codepad
315 17 Feb 2012   Hailstones: Examine the Collatz sequence exercise solution codepad
169 21 Sep 2010 Kaprekar Numbers: Square the number and add the digits in halves exercise solution codepad
301 30 Dec 2011 Split: Split a list in two halves using the tortoise-and-hare algorithm exercise solution codepad
342 22 May 2012   Hamming Codes: Send messages over a noisy channel without error exercise solution codepad
267 30 Aug 2011   Hamming Numbers: List the numbers with no factors greater than 5, a classic problem popularized by Dijkstra exercise solution codepad
153 27 Jul 2010   HAMURABI.BAS: Manage grain and land in ancient Sumeria exercise solution codepad
39 05 Jun 2009 Ternary Search Tries: Build a function library for handling ternary search tries exercise solution codepad
244 10 Jun 2011 Steganography: A hand-operable system that combines cryptography and steganography exercise solution codepad
121 23 Mar 2010 Texas Hold ‘Em: Find the best poker hand exercise solution codepad
37 29 May 2009 Double Transposition Cipher: A simple and effective cipher, easy to perform by hand exercise solution codepad
300 27 Dec 2011 Cheating Hangman: A version of Hangman that nearly always wins exercise solution codepad
298 20 Dec 2011   Hangman: Classic Unix V7 game for guessing words exercise solution codepad
300 27 Dec 2011 Cheating Hangman: A version of Hangman that nearly always wins exercise solution codepad
279 11 Oct 2011 Tower Of Hanoi: Classic demonstration of recursion exercise solution codepad
404 01 Jan 2013   Happy New Year!: Find expressions that evaluate to 2013 exercise solution codepad
152 23 Jul 2010   Happy Numbers: Iterating the sum of the squares of the digits terminates with one exercise solution codepad
288 15 Nov 2011 Phil Harvey’s Puzle: partition {1,…,16} into two sets of equal size so each subset has the same sum, sum of squares and sum of cubes exercise solution codepad
123 30 Mar 2010 Passover: Calculate the dates of the Jewish holidays Rosh Hashanah and Passover exercise solution codepad
384 23 Oct 2012 Universal Hash Function: Compute a hash for any native Scheme datatype exercise solution codepad
384 23 Oct 2012 Universal Hash Function: Compute a hash for any native Scheme datatype exercise solution codepad
207 01 Feb 2011 Cuckoo Hashing: A hashing system with guaranteed constant-time lookup and amortized constant-time insertion exercise solution codepad
207 01 Feb 2011 Cuckoo Hashing: A hashing system with guaranteed constant-time lookup and amortized constant-time insertion exercise solution codepad
165 07 Sep 2010 Data Encryption Standard: Part 3: Triple DES and cryptographic hashing exercise solution codepad
456 12 Jul 2013 Dynamic Hash Tables: Hash tables that grow and contract automatically to maintain a constant load factor exercise solution codepad
462 02 Aug 2013 Ordered Hash Tables: Knuth’s improvement to simple hash tables exercise solution codepad
456 12 Jul 2013 Dynamic Hash Tables: Hash tables that grow and contract automatically to maintain a constant load factor exercise solution codepad
462 02 Aug 2013 Ordered Hash Tables: Knuth’s improvement to simple hash tables exercise solution codepad
368 24 Aug 2012 Hash Tables With Open Addressing: An alternative to hash tables with chaining for collision resolution exercise solution codepad
368 24 Aug 2012   Hash Tables With Open Addressing: An alternative to hash tables with chaining for collision resolution exercise solution codepad
288 15 Nov 2011 Phil Harvey’s Puzle: partition {1,…,16} into two sets of equal size so each subset has the same sum, sum of squares and sum of cubes exercise solution codepad
155 03 Aug 2010 Carl Hewitt’s Same-Fringe Problem: Do two trees have the same leaves, solved with streams (lazy lists) exercise solution codepad
369 28 Aug 2012 Random Access Lists: A clever data structure that provides O(log n) access to items in a sequential list, along with cons, head and tail exercise solution codepad
345 05 Jun 2012 Binomial Heaps: Another algorithm for maintaining priority queues exercise solution codepad
171 28 Sep 2010 Maxiphobic Heaps: A priority-queue data structure, similar to leftist heaps, due to Chris Okasaki exercise solution codepad
59 14 Aug 2009 Pairing Heaps: A standard algorithm for maintaining priority queues exercise solution codepad
171 28 Sep 2010 Maxiphobic Heaps: A priority-queue data structure, similar to leftist heaps, due to Chris Okasaki exercise solution codepad
83 06 Nov 2009   Heap Sort: A guaranteed O(log n) sorting method based on priority queues exercise solution codepad
410 25 Jan 2013 Imperative Heaps: The classing implementation of priority queues embedded in an array exercise solution codepad
409 22 Jan 2013 Splay Heaps: Yet another implementation of priority queues exercise solution codepad
473 12 Sep 2013 Diffie Hellman Key Exchange: Manage secure exchanges on an insecure communications channel exercise solution codepad
372 07 Sep 2012 The First Two Programs: Hello World and a fahrenheit / celsius conversion table exercise solution codepad
56 04 Aug 2009 Lenstra’s Algorithm: Hendrik Lenstra’s original algorithm for elliptic curve factorization exercise solution codepad
261 09 Aug 2011   Hett’s Problem 1.28: Sorting a list of lists according to length of sublists exercise solution codepad
398 11 Dec 2012 Stepwise Program Development: A Heuristic Algorithm: A backtracking solution to a problem of Wirth exercise solution codepad
127 13 Apr 2010 Traveling Salesman: Minimum Spanning Tree: Heuristic guarantees solution within factor of two of optimal tour exercise solution codepad
119 16 Mar 2010 Traveling Salesman: Nearest Neighbor: A greedy heuristic that builds a path by always choosing the nearest unvisited point exercise solution codepad
155 03 Aug 2010 Carl Hewitt’s Same-Fringe Problem: Do two trees have the same leaves, solved with streams (lazy lists) exercise solution codepad
433 19 Apr 2013 Integer Roots: Calculate square roots and higher roots in integer arithmetic exercise solution codepad
113 23 Feb 2010 Engineering A Sort Function: A high-performance quicksort by Jon Bentley and Doug McIlroy exercise solution codepad
135 25 May 2010 GB_FLIP: Donald Knuth’s portable, high-quality random-number generator from the Stanford Graphbase exercise solution codepad
173 05 Oct 2010 George Marsaglia’s Random Number Generators: Nine high-quality RNGs in nineteen lines of code exercise solution codepad
72 29 Sep 2009 Green Eyes: A counting problem from high-school math exercise solution codepad
362 03 Aug 2012 SEND + MORE = MONEY, Part 2: Two hill-climbing solutions to a classic problem of recreational mathematics exercise solution codepad
427 29 Mar 2013 One Million Hits: Celebrating our one-millionth hit! exercise solution codepad
427 29 Mar 2013 One Million Hits: Celebrating our one-millionth hit! exercise solution codepad
82 03 Nov 2009 Quick Sort: Tony Hoare’s divide-and-conquer sorting algorithm exercise solution codepad
411 01 Feb 2013   Hofstadter’s Sequence: An infinite figure-figure sequence exercise solution codepad
121 23 Mar 2010 Texas Hold ‘Em: Find the best poker hand exercise solution codepad
123 30 Mar 2010 Passover: Calculate the dates of the Jewish holidays Rosh Hashanah and Passover exercise solution codepad
212 18 Feb 2011 Two Factoring Games: Home primes and the Euclid-Mullin sequence exercise solution codepad
49 10 Jul 2009 The Golden Ratio: Evaluate a continued fraction, based on my daughter’s math homework exercise solution codepad
435 26 Apr 2013 Correct Horse Battery Staple, Improved: Fix a horrible bug in the original version exercise solution codepad
435 26 Apr 2013 Correct Horse Battery Staple, Improved: Fix a horrible bug in the original version exercise solution codepad
434 23 Apr 2013 Correct Horse Battery Staple: Randall Munro’s passphrase generator exercise solution codepad
333 20 Apr 2012 John Horton Conway’s Game Of Life: The classic cellular automata exercise solution codepad
354 06 Jul 2012 Fractran: Write an interpreter for John Horton Conway’s language Fractran exercise solution codepad
219 15 Mar 2011 Look And Say: Calculate John Horton Conway’s "Look and Say" sequence exercise solution codepad
227 12 Apr 2011   House Of Representatives: Apportion representatives by the Huntington-Hill method exercise solution codepad
196 24 Dec 2010 Tracking Santa: How far does Santa travel on his annual journey? exercise solution codepad
466 16 Aug 2013 Monkey Grid Puzzle: How many points can the monkey access? exercise solution codepad
331 13 Apr 2012 McNugget Numbers, Revisited: The classic coin problem in disguise, how to count the number of ways to make change exercise solution codepad
407 15 Jan 2013 Translate CSV To Html: Convert between tabular storage forms exercise solution codepad
394 27 Nov 2012 Amazon Interview Question: Find the hundred points of a million closest to the origin exercise solution codepad
24 14 Apr 2009 Google Treasure Hunt 2008 Puzzle 4: A prime-number puzzle exercise solution codepad
227 12 Apr 2011 House Of Representatives: Apportion representatives by the Huntington-Hill method exercise solution codepad
191 07 Dec 2010 Ullman’s Puzzle: It never hurts to sort exercise solution codepad
27 24 Apr 2009 Word Hy-phen-a-tion By Com-pu-ter: Frank Liang’s hyphenation algorithm, used in TeX exercise solution codepad
27 24 Apr 2009 Word Hy-phen-a-tion By Com-pu-ter: Frank Liang’s hyphenation algorithm, used in TeX exercise solution codepad
458 19 Jul 2013 J K Rowling: Identify an author using forensic linguistics exercise solution codepad
242 03 Jun 2011 Mersenne Primes: The Lucas-Lehmer test for identifying primes of the form 2n−1 exercise solution codepad
74 06 Oct 2009 MapReduce: Google’s famous system for parallelizing computations expressed as a programming idiom exercise solution codepad
197 28 Dec 2010 Carmichael Numbers: Composite numbers such that an-1 ≡ 1 (mod n) if a is prime to n exercise solution codepad
336 01 May 2012 Legendre’s Symbol: Determine if a number is a quadratic residue mod m exercise solution codepad
156 06 Aug 2010 Two Powering Predicates: Determine if a number is a square or a prime power exercise solution codepad
251 05 Jul 2011 Big Numbers: Examples: A library for big integers: display factorials to 50, determine if a number is prime, and compute its prime factors exercise solution codepad
405 02 Jan 2013 Four Points Determine A Square: Determine if four given points form a square exercise solution codepad
377 28 Sep 2012 Pocklington’s N−1 Primality Prover: Prove n prime if n−1 can be partially factored exercise solution codepad
319 02 Mar 2012 Balanced Delimiters: Determine if nested delimiters are properly balanced exercise solution codepad
187 23 Nov 2010 String Subsets: Determine if one string is a subset of another exercise solution codepad
322 13 Mar 2012 Perfect Power Predicate: Given a positive integer n, determine if there exists a b and e for which be = n exercise solution codepad
408 18 Jan 2013 Triangle Trilemma: Determine if three points form a triangle, and classify it exercise solution codepad
430 09 Apr 2013 Cyclic Equality: Determine if two cyclic lists are equal exercise solution codepad
255 19 Jul 2011 Sum Of Two Integers: Determine if two integers in a list sum to a target exercise solution codepad
310 31 Jan 2012 String Rotation: Determine if two strings are rotations of each other exercise solution codepad
460 26 Jul 2013 Find X[i] = i In An Array: Find an array element equal to its index exercise solution codepad
460 26 Jul 2013 Find X[i] = i In An Array: Find an array element equal to its index exercise solution codepad
224 01 Apr 2011 Maximum Difference In An Array: Find maximum Xj &minus Xi, with ij exercise solution codepad
215 01 Mar 2011 An Early LISP Program: A program to flatten a list, from the March 1960 LISP I manual exercise solution codepad
480 08 Oct 2013 Functional-Style Linked Lists: A library of functions on functional-style lists made from immutable pairs exercise solution codepad
410 25 Jan 2013   Imperative Heaps: The classing implementation of priority queues embedded in an array exercise solution codepad
481 11 Oct 2013   Imperative-Style Linked Lists: A library of functions on imperative-style lists made from mutable pairs exercise solution codepad
481 11 Oct 2013 Imperative-Style Linked Lists: A library of functions on imperative-style lists made from mutable pairs exercise solution codepad
489 29 Oct 2013 Queues: Implement a basic data structure exercise solution codepad
491 08 Nov 2013 Two Stacks Make A Queue: Implement a queue using two stacks exercise solution codepad
490 05 Nov 2013 Two Queues Make A Stack: Implement a stack using two queues exercise solution codepad
2 19 Feb 2009 Sieve of Eratosthenes: A Scheme implementation of an ancient algorithm exercise solution codepad
36 26 May 2009 Word Search Solver: A computerized implementation of a popular time-waster exercise solution codepad
269 06 Sep 2011 Deques: Library implementation of double-ended queues exercise solution codepad
55 31 Jul 2009 Elliptic Curve Factorization: A very simple implementation of elliptic curve factorization exercise solution codepad
410 25 Jan 2013 Imperative Heaps: The classing implementation of priority queues embedded in an array exercise solution codepad
409 22 Jan 2013 Splay Heaps: Yet another implementation of priority queues exercise solution codepad
284 01 Nov 2011 RIP John McCarthy: Implementation of the “Maxwell’s equations of software” from the LISP 1.5 Programmer’s Manual exercise solution codepad
291 25 Nov 2011 AVL Trees: Basic implementation of the original balanced-tree algorithm exercise solution codepad
30 05 May 2009 Priority Queues: A simple library implementation of the priority queue data structure exercise solution codepad
92 08 Dec 2009 Word Count: An implementation of the unix wc program exercise solution codepad
302 03 Jan 2012 Turtle Graphics: A minimal library of turtle graphics, as in the Logo language, implemented in PostScript exercise solution codepad
236 13 May 2011 Dixon’s Factorization Algorithm: A slow, but theoretically important, algorithm for integer factorization exercise solution codepad
461 30 Jul 2013 Who Buys The Croissants?: Simulate an important Friday-morning question exercise solution codepad
440 14 May 2013 Optimal Alphabetical Order: Redefine the alphabet to improve alphabetical ordering exercise solution codepad
112 19 Feb 2010 Sieve Of Atkin, Improved: A faster version of the Sieve of Atkin exercise solution codepad
134 07 May 2010 Integer Logarithms: An improved algorithm is O(log n) instead of O(n) exercise solution codepad
435 26 Apr 2013 Correct Horse Battery Staple, Improved: Fix a horrible bug in the original version exercise solution codepad
272 16 Sep 2011 Pollard’s P−1 Factorization Algoritihm, Revisited: An improved second stage that is much faster than the original exercise solution codepad
327 30 Mar 2012 Subset Sum, Meet In The Middle: An improved solution to the classic NP problem exercise solution codepad
286 08 Nov 2011   Improved Standard Continuation: An improved version of elliptic curve factorization, widely used in current practice exercise solution codepad
286 08 Nov 2011 Improved Standard Continuation: An improved version of elliptic curve factorization, widely used in current practice exercise solution codepad
428 02 Apr 2013 Quadratic Sieve With Large Primes: A (slightly) improved version of the basic quadratic sieve exercise solution codepad
451 21 Jun 2013 Multiple Polynomial Quadratic Sieve: A greatly improved version of the basic quadratic sieve exercise solution codepad
419 01 Mar 2013 Baillie-Wagstaff Pseudoprimality Tester: Primality test, an improvement over the Miller-Rabin test exercise solution codepad
462 02 Aug 2013 Ordered Hash Tables: Knuth’s improvement to simple hash tables exercise solution codepad
250 01 Jul 2011 Feet And Inches: Convert decimal inches to carpenters’ fractions exercise solution codepad
250 01 Jul 2011 Feet And Inches: Convert decimal inches to carpenters’ fractions exercise solution codepad
386 30 Oct 2012 Pandigital Numbers: Find sums that include all ten digits exercise solution codepad
125 06 Apr 2010 Minimum Spanning Tree: Kruskal’s Algorithm: Find the minimum-cost tree that includes all the nodes in a graph exercise solution codepad
126 09 Apr 2010 Minimum Spanning Tree: Prim’s Algorithm: Find the minimum-cost tree that includes all the nodes in a graph exercise solution codepad
180 29 Oct 2010 Fibonacci Primes: Find primes among the fibonacci numbers; includes the Park-Miller random number generator and Miller-Rabin primality checker exercise solution codepad
109 09 Feb 2010 Numerical Integration: Quadrature by the rectangular, trapezoidal and Simpson’s method, including adaptive quadrature exercise solution codepad
344 01 Jun 2012 Square Roots: Four methods to compute square roots, including one from antiquity exercise solution codepad
425 22 Mar 2013 Jumping Jack: Jump in increasing sizes along the number line exercise solution codepad
96 22 Dec 2009 Permuted Index: David Parnas’ classic deconstruction of the keyword-in-context index exercise solution codepad
460 26 Jul 2013 Find X[i] = i In An Array: Find an array element equal to its index exercise solution codepad
470 30 Aug 2013 BMI Calculator: Calculate a person’s body mass index exercise solution codepad
96 22 Dec 2009 Permuted Index: David Parnas’ classic deconstruction of the keyword-in-context index exercise solution codepad
221 22 Mar 2011 Two Kaprekar Exercises: Kaprekar chains and Kaprekar numbers, from the Indian mathematician Dattaraya Ramchandra Kaprekar exercise solution codepad
252 08 Jul 2011 Vedic Divisibility: Use a method of testing divisibility using the method of osculators developed in India exercise solution codepad
278 07 Oct 2011 Sieve of Sundaram: Sieving for prime numbers using a method from India exercise solution codepad
411 01 Feb 2013 Hofstadter’s Sequence: An infinite figure-figure sequence exercise solution codepad
358 20 Jul 2012   Infix Expression Evaluation: Write a parser to evaluate arithmetic expressions exercise solution codepad
45 26 Jun 2009 Treaps: A randomized dictionary data structure, provides in-order access to key exercise solution codepad
414 12 Feb 2013 Binary Search Tree: In-Order Predecessor And Successor: Find the previous and next items in a tree exercise solution codepad
245 14 Jun 2011 Big Numbers: Input And Output: A library for big integers: input and output with radix conversion exercise solution codepad
245 14 Jun 2011 Big Numbers: Input And Output: A library for big integers: input and output with radix conversion exercise solution codepad
159 17 Aug 2010 Cut: Select fields or characters from input lines exercise solution codepad
213 22 Feb 2011 Sliding Window Minimum: List of minimums sliding across an input list exercise solution codepad
318 28 Feb 2012 Next Greater Permutation Of Digits: Find the smallest number larger than the input number using the same digits as the input number exercise solution codepad
35 22 May 2009 The Next Palindrome: Find the next palindromic number greater than the input number exercise solution codepad
318 28 Feb 2012 Next Greater Permutation Of Digits: Find the smallest number larger than the input number using the same digits as the input number exercise solution codepad
253 12 Jul 2011 JSON: Parsing Input: Parse JSON input exercise solution codepad
217 08 Mar 2011 Reverse Words: Reverse the words in an input string exercise solution codepad
91 04 Dec 2009 Autokey: A cipher in which the input text forms part of the key exercise solution codepad
253 12 Jul 2011 JSON: Parsing Input: Parse JSON input exercise solution codepad
296 13 Dec 2011 Validating Telephone Numbers: An exercise in input validation exercise solution codepad
473 12 Sep 2013 Diffie Hellman Key Exchange: Manage secure exchanges on an insecure communications channel exercise solution codepad
263 16 Aug 2011 Insert Into A Cyclic Sorted List: Insert a new element into a cyclic list, in order exercise solution codepad
116 05 Mar 2010 Binary Search Tree: Classic data structure, providing insert, delete and lookup for ordered datatypes exercise solution codepad
263 16 Aug 2011   Insert Into A Cyclic Sorted List: Insert a new element into a cyclic list, in order exercise solution codepad
80 27 Oct 2009 Three Quadratic Sorts: Bubble sort, selection sort and insertion sort exercise solution codepad
207 01 Feb 2011 Cuckoo Hashing: A hashing system with guaranteed constant-time lookup and amortized constant-time insertion exercise solution codepad
262 12 Aug 2011 Word Breaks: Insert spaces between words: applepie => apple pie exercise solution codepad
279 14 Oct 2011 The First N Primes: Embedding the Sieve of Eratosthenes in a priority queue instead of an array exercise solution codepad
134 07 May 2010 Integer Logarithms: An improved algorithm is O(log n) instead of O(n) exercise solution codepad
433 19 Apr 2013 Integer Roots: Calculate square roots and higher roots in integer arithmetic exercise solution codepad
444 28 May 2013 Modular Multiplication Without Overflow: Perform modular multiplication without overflowing an integer datatype exercise solution codepad
167 14 Sep 2010 The Factorization Of F7: Part 1: Our fortieth anniversary celebration of Morrison and Brillhart’s method of integer factorization by continued fractions exercise solution codepad
168 17 Sep 2010 The Factorization Of F7: Part 2: Our fortieth anniversary celebration of Morrison and Brillhart’s method of integer factorization by continued fractions exercise solution codepad
34 19 May 2009 Fermat’s Method: Integer factorization by Fermat’s algorithm exercise solution codepad
273 20 Sep 2011 Project Euler Problem 3: Thorough explanation of integer factorization by trial division exercise solution codepad
132 30 Apr 2010   Integer Factorization: Combine trial division, Pollard’s rho and p−1 methods, and elliptic curves into a single factorization program exercise solution codepad
204 21 Jan 0 Pollard Rho, Revisited: Richard Brent’s variant of John Pollard’s rho algorithm for integer factorization exercise solution codepad
236 13 May 2011 Dixon’s Factorization Algorithm: A slow, but theoretically important, algorithm for integer factorization exercise solution codepad
43 19 Jun 2009 Monte Carlo Factorization: Integer factorization via Pollard’s rho algorithm exercise solution codepad
274 23 Sep 2011 Array Duplicates: Find the duplicate integer in a large array exercise solution codepad
85 13 Nov 2009 Two linear sorts: Count sort and radix sort exploit the structure of integer keys exercise solution codepad
134 07 May 2010   Integer Logarithms: An improved algorithm is O(log n) instead of O(n) exercise solution codepad
322 13 Mar 2012 Perfect Power Predicate: Given a positive integer n, determine if there exists a b and e for which be = n exercise solution codepad
433 19 Apr 2013   Integer Roots: Calculate square roots and higher roots in integer arithmetic exercise solution codepad
479 04 Oct 2013 Calculating Statistics: Read a file of integers and calculate mean, median and mode exercise solution codepad
161 24 Aug 2010 Daniel Shanks’ Square Form Factorization Algorithm: A simple and very fast factorization algorithm for integers between 105 and 1020 exercise solution codepad
255 19 Jul 2011 Sum Of Two Integers: Determine if two integers in a list sum to a target exercise solution codepad
251 05 Jul 2011 Big Numbers: Examples: A library for big integers: display factorials to 50, determine if a number is prime, and compute its prime factors exercise solution codepad
249 28 Jun 2011 Big Numbers: Functions: A library for big integers: gcd, powering, square root, random numbers exercise solution codepad
241 31 May 2011 Big Numbers: Addition, Subtraction And Multiplication: A library for big integers: grade-school algorithms for addition, subtraction, and multiplication exercise solution codepad
255 19 Jul 2011 Sum Of Two Integers: Determine if two integers in a list sum to a target exercise solution codepad
245 14 Jun 2011 Big Numbers: Input And Output: A library for big integers: input and output with radix conversion exercise solution codepad
453 28 Jun 2013 A Programming Puzzle: Write a function f so that f(f(n)) = -n for all integers n. exercise solution codepad
337 04 May 2012 Even-Odd Partition: Partition an array so all even integers precede all odd integers exercise solution codepad
239 24 May 2011 Big Numbers: Getting Started: A library for big integers: representation, comparison, simple functions exercise solution codepad
325 23 Mar 2012 Base-26 Arithmetic: Perform arithmetic on integers represented as strings of letters exercise solution codepad
247 21 Jun 2011 Big Numbers: Testing: A library for big integers: testing exercise solution codepad
339 11 May 2012 partitions: Sets of integers that sum to a given integer exercise solution codepad
243 07 Jun 2011 Big Numbers: Division: A library for big integers: the grade-school algorithm for long division exercise solution codepad
108 05 Feb 2010 Segmented Sieve Of Eratosthenes: Extend the Sieve of Eratosthenes to large ranges of integers exercise solution codepad
194 17 Dec 2010 Polite Numbers: Write numbers as the sum of two or more consecutive integers exercise solution codepad
321 09 Mar 2012 Sparse Sets: Clever data structure for storing sparse sets of small integers exercise solution codepad
337 04 May 2012 Even-Odd Partition: Partition an array so all even integers precede all odd integers exercise solution codepad
338 08 May 2012 Factor Tables: Table of factors of integers exercise solution codepad
412 05 Feb 2013 The 147 Puzzle: Compute all the solutions to 1/a + 1/b + 1/c + 1/d + 1/e = 1 in integers exercise solution codepad
355 10 Jul 2012 Sieve For Totients: Find the totients of a large range of integers using a sieve exercise solution codepad
206 28 Jan 2011 Population Count: Count the number of set bits (1-bits) in the binary representation of an integer exercise solution codepad
339 11 May 2012 partitions: Sets of integers that sum to a given integer exercise solution codepad
340 15 May 2012 Streaming Knapsack: Find first possible combination from a stream that sums to a given integer exercise solution codepad
201 11 Jan 2011 Two Integrals: The exponential and logarithmic integral, and an approximation for prime-pi exercise solution codepad
258 29 Jul 2011 Approximating Pi: Approximating pi with the logarithmic integral and Riemann’s R function exercise solution codepad
201 11 Jan 2011 Two Integrals: The exponential and logarithmic integral, and an approximation for prime-pi exercise solution codepad
109 09 Feb 2010 Numerical Integration: Quadrature by the rectangular, trapezoidal and Simpson’s method, including adaptive quadrature exercise solution codepad
94 15 Dec 2009 Affine-Shift Cipher: A cryptographically weak but mathematically interesting cipher exercise solution codepad
389 09 Nov 2012 Taxicab Numbers: Confirm an interesting observation of Srinivasa Ramanujan exercise solution codepad
51 17 Jul 2009   International Mathematical Olympiad: Three exercises from 1960s math competitions exercise solution codepad
182 05 Nov 2010 Weather Forecast: Fetch the weather forecast from the internet exercise solution codepad
238 20 May 0 ISBN Validation: Validate ISBN book numbers, and fetch author and title from the internet exercise solution codepad
14 10 Mar 2009 Word Frequencies: Our interpretation of a problem solved by a classic unix pipeline exercise solution codepad
19 27 Mar 2009 A Turing Machine Simulator: An interpreter for a single-tape, multi-symbol turing machine exercise solution codepad
277 04 Oct 2011 Brainfuck: Interpreter for a Turing-line language exercise solution codepad
354 06 Jul 2012 Fractran: Write an interpreter for John Horton Conway’s language Fractran exercise solution codepad
391 16 Nov 2012 List Intersection And Union: Two algorithms on linked lists, with multiple solutions exercise solution codepad
195 21 Dec 2010   Interval Arithmetic: An exercise from SICP exercise solution codepad
394 27 Nov 2012 Amazon Interview Question: Find the hundred points of a million closest to the origin exercise solution codepad
468 23 Aug 2013 Three Interview Questions: Three interview questions exercise solution codepad
468 23 Aug 2013 Three Interview Questions: Three interview questions exercise solution codepad
454 02 Jul 2013 Decoding Text-Speak: Expnd txt wth only intl vwls and n dbld ltrs exercise solution codepad
263 16 Aug 2011 Insert Into A Cyclic Sorted List: Insert a new element into a cyclic list, in order exercise solution codepad
263 16 Aug 2011 Insert Into A Cyclic Sorted List: Insert a new element into a cyclic list, in order exercise solution codepad
132 30 Apr 2010 Integer Factorization: Combine trial division, Pollard’s rho and p−1 methods, and elliptic curves into a single factorization program exercise solution codepad
234 06 May 2011 Entab And Detab: expand tabs into spaces, and replace spaces with tabs exercise solution codepad
288 15 Nov 2011 Phil Harvey’s Puzle: partition {1,…,16} into two sets of equal size so each subset has the same sum, sum of squares and sum of cubes exercise solution codepad
17 20 Mar 2009 Dodgson's Doublets: A word game invented by the author of Alice in Wonderland exercise solution codepad
162 27 Aug 2010 Chinese Remainders: An ancient application of modular inverses exercise solution codepad
366 17 Aug 2012 Two Random Exercises: Two exercises involving random numbers exercise solution codepad
218 11 Mar 2011 Lowest Common Ancestor: Find the lowest node in a binary search tree that is a common ancestor to two given nodes exercise solution codepad
463 06 Aug 2013 Sophie Germain Primes: Primes p such that 2p+1 is also prime exercise solution codepad
309 27 Jan 2012 Anagram Phrases: “Gin grammar prop six” is an anagram for “Programming Praxis” exercise solution codepad
336 01 May 2012 Legendre’s Symbol: Determine if a number is a quadratic residue mod m exercise solution codepad
156 06 Aug 2010 Two Powering Predicates: Determine if a number is a square or a prime power exercise solution codepad
187 23 Nov 2010 String Subsets: Determine if one string is a subset of another exercise solution codepad
238 20 May 0 ISBN Validation: Validate ISBN book numbers, and fetch author and title from the internet exercise solution codepad
238 20 May 0   ISBN Validation: Validate ISBN book numbers, and fetch author and title from the internet exercise solution codepad
272 16 Sep 2011 Pollard’s P−1 Factorization Algoritihm, Revisited: An improved second stage that is much faster than the original exercise solution codepad
134 07 May 2010 Integer Logarithms: An improved algorithm is O(log n) instead of O(n) exercise solution codepad
251 05 Jul 2011 Big Numbers: Examples: A library for big integers: display factorials to 50, determine if a number is prime, and compute its prime factors exercise solution codepad
197 28 Dec 2010 Carmichael Numbers: Composite numbers such that an-1 ≡ 1 (mod n) if a is prime to n exercise solution codepad
482 15 Oct 2013 Find The Minimum Difference: Find the minimum difference between any item from on list and any item from another list exercise solution codepad
482 15 Oct 2013 Find The Minimum Difference: Find the minimum difference between any item from on list and any item from another list exercise solution codepad
93 11 Dec 2009 Selection: Find the kth-largest item in a list exercise solution codepad
369 28 Aug 2012 Random Access Lists: A clever data structure that provides O(log n) access to items in a sequential list, along with cons, head and tail exercise solution codepad
352 29 Jun 2012 Sliding Median: Find the median of the most recent k items in a stream exercise solution codepad
414 12 Feb 2013 Binary Search Tree: In-Order Predecessor And Successor: Find the previous and next items in a tree exercise solution codepad
472 06 Sep 2013 Cartesian Product: Cross-product of the items in a variable-length list of variable-length lists exercise solution codepad
124 02 Apr 2010 Disjoint Sets: A data structure for storing sets of items in disjoint partitions exercise solution codepad
396 04 Dec 2012 Median Of Five: A very fast method to compute the median of five items exercise solution codepad
152 23 Jul 2010 Happy Numbers: Iterating the sum of the squares of the digits terminates with one exercise solution codepad
191 07 Dec 2010 Ullman’s Puzzle: It never hurts to sort exercise solution codepad
265 23 Aug 2011 Knapsack: Fill a knapsack to maximize the value of its contents exercise solution codepad
248 24 Jun 2011 Thank God It’s Friday!: Three methods to calculate the day of the week exercise solution codepad
460 26 Jul 2013 Find X[i] = i In An Array: Find an array element equal to its index exercise solution codepad
251 05 Jul 2011 Big Numbers: Examples: A library for big integers: display factorials to 50, determine if a number is prime, and compute its prime factors exercise solution codepad
216 04 Mar 2011 Chutes And Ladders: Simulate a child’s game, and compute its statistics exercise solution codepad
15 13 Mar 2009 Friday, the Thirteenth: A small calendar library, and a simple use of it exercise solution codepad
373 11 Sep 2012 The Sum Of The First Billion Primes: Write a prime generator, and use it exercise solution codepad
408 18 Jan 2013 Triangle Trilemma: Determine if three points form a triangle, and classify it exercise solution codepad
208 04 Feb 2011 Excel Columns: Numbers as in Excel column names, A=1, Z=26, IV=256 exercise solution codepad
425 22 Mar 2013 Jumping Jack: Jump in increasing sizes along the number line exercise solution codepad
133 04 May 2010 Spectacular Seven: Compute the odds at jai alai exercise solution codepad
364 10 Aug 2012 Minimum Scalar Product: A simple exercise from the practice round of Google Code Jam 2008 exercise solution codepad
426 26 Mar 2013 Google Code Jam Qualification Round Africa 2010, Revisited: Four solutions to a Google programming exercise, with various time complexities exercise solution codepad
211 15 Feb 2011 Google Code Jam Qualification Round Africa 2010: Three simple exercises exercise solution codepad
170 24 Sep 2010 Alien Numbers: An exercise from Google Code Jam exercise solution codepad
176 15 Oct 2010 Find The Longest Palindrome In A String: A beautiful linear-time algorithm due to Johan Jeuring exercise solution codepad
123 30 Mar 2010 Passover: Calculate the dates of the Jewish holidays Rosh Hashanah and Passover exercise solution codepad
458 19 Jul 2013   J K Rowling: Identify an author using forensic linguistics exercise solution codepad
176 15 Oct 2010 Find The Longest Palindrome In A String: A beautiful linear-time algorithm due to Johan Jeuring exercise solution codepad
333 20 Apr 2012   John Horton Conway’s Game Of Life: The classic cellular automata exercise solution codepad
354 06 Jul 2012 Fractran: Write an interpreter for John Horton Conway’s language Fractran exercise solution codepad
219 15 Mar 2011 Look And Say: Calculate John Horton Conway’s "Look and Say" sequence exercise solution codepad
284 01 Nov 2011 RIP John McCarthy: Implementation of the “Maxwell’s equations of software” from the LISP 1.5 Programmer’s Manual exercise solution codepad
79 23 Oct 2009 Mr. S. and Mr. P.: A logic puzzle popularized by John McCarthy exercise solution codepad
204 21 Jan 0 Pollard Rho, Revisited: Richard Brent’s variant of John Pollard’s rho algorithm for integer factorization exercise solution codepad
52 21 Jul 2009 Pollard’s P−1 Factorization Algorithm: A simple factorization algorithm by John Pollard exercise solution codepad
141 15 Jun 2010 Natural Join: The fundamental relational database operator exercise solution codepad
113 23 Feb 2010 Engineering A Sort Function: A high-performance quicksort by Jon Bentley and Doug McIlroy exercise solution codepad
190 03 Dec 2010 Maximum Sum Subsequence: A classic programming exercise due to Jon Bentley exercise solution codepad
5 19 Feb 2009 Flavius Josephus: Programming a cyclical list exercise solution codepad
103 19 Jan 2010 Flight Planning: Computing the navigation triangle, by Jos Koot exercise solution codepad
196 24 Dec 2010 Tracking Santa: How far does Santa travel on his annual journey? exercise solution codepad
254 15 Jul 2011 JSON: Writing Output: The other side of JSAON exercise solution codepad
253 12 Jul 2011 JSON: Parsing Input: Parse JSON input exercise solution codepad
253 12 Jul 2011   JSON: Parsing Input: Parse JSON input exercise solution codepad
254 15 Jul 2011   JSON: Writing Output: The other side of JSAON exercise solution codepad
224 01 Apr 2011 Maximum Difference In An Array: Find maximum Xj &minus Xi, with i j exercise solution codepad
224 01 Apr 2011 Maximum Difference In An Array: Find maximum Xj &minus Xi, with i j exercise solution codepad
425 22 Mar 2013   Jumping Jack: Jump in increasing sizes along the number line exercise solution codepad
425 22 Mar 2013 Jumping Jack: Jump in increasing sizes along the number line exercise solution codepad
221 22 Mar 2011 Two Kaprekar Exercises: Kaprekar chains and Kaprekar numbers, from the Indian mathematician Dattaraya Ramchandra Kaprekar exercise solution codepad
221 22 Mar 2011 Two Kaprekar Exercises: Kaprekar chains and Kaprekar numbers, from the Indian mathematician Dattaraya Ramchandra Kaprekar exercise solution codepad
221 22 Mar 2011 Two Kaprekar Exercises: Kaprekar chains and Kaprekar numbers, from the Indian mathematician Dattaraya Ramchandra Kaprekar exercise solution codepad
169 21 Sep 2010   Kaprekar Numbers: Square the number and add the digits in halves exercise solution codepad
221 22 Mar 2011 Two Kaprekar Exercises: Kaprekar chains and Kaprekar numbers, from the Indian mathematician Dattaraya Ramchandra Kaprekar exercise solution codepad
58 11 Aug 2009 Uncle Bob’s Bowling Game Kata: Use pattern-matching on lists to solve a classic object-oriented programming exercise exercise solution codepad
379 05 Oct 2012 AKS Primality Prover, Part 2: The primality prover of Agrawal, Kayal and Saxena exercise solution codepad
283 28 Oct 2011 Crypt: Simple encryption tool from Kernighan and Plauger exercise solution codepad
473 12 Sep 2013 Diffie Hellman Key Exchange: Manage secure exchanges on an insecure communications channel exercise solution codepad
324 20 Mar 2012 Factoring Multiple RSA Keys: Exploit a key-generation weakness to factor RSA keys exercise solution codepad
307 20 Jan 2012 Knights On A Keypad: Count the number of knight paths on a keypad exercise solution codepad
307 20 Jan 2012 Knights On A Keypad: Count the number of knight paths on a keypad exercise solution codepad
324 20 Mar 2012 Factoring Multiple RSA Keys: Exploit a key-generation weakness to factor RSA keys exercise solution codepad
324 20 Mar 2012 Factoring Multiple RSA Keys: Exploit a key-generation weakness to factor RSA keys exercise solution codepad
85 13 Nov 2009 Two linear sorts: Count sort and radix sort exploit the structure of integer keys exercise solution codepad
45 26 Jun 2009 Treaps: A randomized dictionary data structure, provides in-order access to key exercise solution codepad
91 04 Dec 2009 Autokey: A cipher in which the input text forms part of the key exercise solution codepad
347 12 Jun 2012 Ordered Maps: A key/value dictionary that supports an ordering relationship exercise solution codepad
96 22 Dec 2009 Permuted Index: David Parnas’ classic deconstruction of the keyword-in-context index exercise solution codepad
33 15 May 2009 Cellular Automata: Linear cellular automata as described by Stephen Wolfram in his book A New Kind of Science exercise solution codepad
352 29 Jun 2012 Sliding Median: Find the median of the most recent k items in a stream exercise solution codepad
265 23 Aug 2011   Knapsack: Fill a knapsack to maximize the value of its contents exercise solution codepad
340 15 May 2012 Streaming Knapsack: Find first possible combination from a stream that sums to a given integer exercise solution codepad
265 23 Aug 2011 Knapsack: Fill a knapsack to maximize the value of its contents exercise solution codepad
421 08 Mar 2013 Knight Moves: Move a knight around a chess board exercise solution codepad
421 08 Mar 2013   Knight Moves: Move a knight around a chess board exercise solution codepad
307 20 Jan 2012 Knights On A Keypad: Count the number of knight paths on a keypad exercise solution codepad
293 02 Dec 2011   Knight Rider: Classic problem of the knight’s tour exercise solution codepad
307 20 Jan 2012   Knights On A Keypad: Count the number of knight paths on a keypad exercise solution codepad
293 02 Dec 2011 Knight Rider: Classic problem of the knight’s tour exercise solution codepad
145 29 Jun 2010 World Cup Prognostication: Simulate the knockout stage using elo ratings exercise solution codepad
266 26 Aug 2011 Reverse Every K Nodes Of A Linked List: Reverse the elements of a sub-list exercise solution codepad
413 08 Feb 2013 The Biggest Prime: Print all 17-million digits of the largest known prime number exercise solution codepad
335 27 Apr 2012 Trabb Pardo Knuth Algorithm: Trivial algorithm, used to explore an unfamiliar language exercise solution codepad
62 25 Aug 2009 String Search: Knuth-Morris-Pratt: Search for a pattern in a text using an O(n) algorithm exercise solution codepad
462 02 Aug 2013 Ordered Hash Tables: Knuth’s improvement to simple hash tables exercise solution codepad
135 25 May 2010 GB_FLIP: Donald Knuth’s portable, high-quality random-number generator from the Stanford Graphbase exercise solution codepad
157 10 Aug 2010 Literate Programming: Structured documentation in the style of Donald Knuth exercise solution codepad
299 23 Dec 2011   Koch’s Snowflake: Draw a fractal snowflake using PostScript exercise solution codepad
445 31 May 2013 The Seven Bridges of Königsberg: A classic graph puzzle due to Leonhard Euler exercise solution codepad
103 19 Jan 2010 Flight Planning: Computing the navigation triangle, by Jos Koot exercise solution codepad
97 29 Dec 2009 A Statisticle Speling Korrecter: Peter Norvig’s version of the Google spelling suggester exercise solution codepad
458 19 Jul 2013 J K Rowling: Identify an author using forensic linguistics exercise solution codepad
125 06 Apr 2010 Minimum Spanning Tree: Kruskal’s Algorithm: Find the minimum-cost tree that includes all the nodes in a graph exercise solution codepad
93 11 Dec 2009 Selection: Find the kth-largest item in a list exercise solution codepad
452 25 Jun 2013 Swap List Nodes: Swap the kth node from the beginning of a list with the kth node from the end of a list exercise solution codepad
452 25 Jun 2013 Swap List Nodes: Swap the kth node from the beginning of a list with the kth node from the end of a list exercise solution codepad
216 04 Mar 2011 Chutes And Ladders: Simulate a child’s game, and compute its statistics exercise solution codepad
153 27 Jul 2010 HAMURABI.BAS: Manage grain and land in ancient Sumeria exercise solution codepad
354 06 Jul 2012 Fractran: Write an interpreter for John Horton Conway’s language Fractran exercise solution codepad
302 03 Jan 2012 Turtle Graphics: A minimal library of turtle graphics, as in the Logo language, implemented in PostScript exercise solution codepad
144 25 Jun 2010 Learn A New Language: Solve the exercise of your choice in an unfamiliar language exercise solution codepad
316 21 Feb 2012 Learn A New Language: Solve the exercise of your choice in an unfamiliar language exercise solution codepad
144 25 Jun 2010 Learn A New Language: Solve the exercise of your choice in an unfamiliar language exercise solution codepad
277 04 Oct 2011 Brainfuck: Interpreter for a Turing-line language exercise solution codepad
316 21 Feb 2012 Learn A New Language: Solve the exercise of your choice in an unfamiliar language exercise solution codepad
335 27 Apr 2012 Trabb Pardo Knuth Algorithm: Trivial algorithm, used to explore an unfamiliar language exercise solution codepad
274 23 Sep 2011 Array Duplicates: Find the duplicate integer in a large array exercise solution codepad
428 02 Apr 2013 Quadratic Sieve With Large Primes: A (slightly) improved version of the basic quadratic sieve exercise solution codepad
355 10 Jul 2012 Sieve For Totients: Find the totients of a large range of integers using a sieve exercise solution codepad
108 05 Feb 2010 Segmented Sieve Of Eratosthenes: Extend the Sieve of Eratosthenes to large ranges of integers exercise solution codepad
120 19 Mar 2010 Extending Pollard’s P−1 Factorization Algorithm: Add a second stage to allow larger factorizations exercise solution codepad
122 26 Mar 2010 The Next Prime: Efficiently find the next prime number larger than a given number exercise solution codepad
318 28 Feb 2012 Next Greater Permutation Of Digits: Find the smallest number larger than the input number using the same digits as the input number exercise solution codepad
413 08 Feb 2013 The Biggest Prime: Print all 17-million digits of the largest known prime number exercise solution codepad
323 16 Mar 2012 Sum Of Squares Of Two Largest Of Three Values: A simple problem from SICP with a variety of solutions exercise solution codepad
401 21 Dec 2012 Building Primes: Build the largest prime with all right-most subsequences also prime exercise solution codepad
111 16 Feb 2010 Soundex: An algorithm to assign people’s last names to equivalence classes based on similar spelling exercise solution codepad
104 22 Jan 2010 Phases Of The Moon: Calculate the number of days since the last new moon exercise solution codepad
429 05 Apr 2013   Last Non-Zero Digit Of A Factorial: Find the last non-zero digit of a factorial exercise solution codepad
429 05 Apr 2013 Last Non-Zero Digit Of A Factorial: Find the last non-zero digit of a factorial exercise solution codepad
264 19 Aug 2011 First Non-Repeating Character: Find the first character in a string that doesn’t repeat later in the string exercise solution codepad
38 02 Jun 2009 Pig Latin: A simple exercise to solve a children’s game exercise solution codepad
179 26 Oct 2010 Benford’s Law: A useful mathematical oddity, and an example of text file databases exercise solution codepad
155 03 Aug 2010 Carl Hewitt’s Same-Fringe Problem: Do two trees have the same leaves, solved with streams (lazy lists) exercise solution codepad
144 25 Jun 2010   Learn A New Language: Solve the exercise of your choice in an unfamiliar language exercise solution codepad
316 21 Feb 2012   Learn A New Language: Solve the exercise of your choice in an unfamiliar language exercise solution codepad
306 17 Jan 2012 Guess The Number: Number-guessing game for children learning arithmetic exercise solution codepad
198 31 Dec 2010 Arithmetic Drill: Repetitious drill for children learning basic arithmetic exercise solution codepad
422 12 Mar 2013 An Array Of Two Symbols: A learning experience for binary search exercise solution codepad
118 12 Mar 2010 Traveling Salesman: Brute Force: Examine all possible permutations to find the least-cost tour exercise solution codepad
155 03 Aug 2010 Carl Hewitt’s Same-Fringe Problem: Do two trees have the same leaves, solved with streams (lazy lists) exercise solution codepad
171 28 Sep 2010 Maxiphobic Heaps: A priority-queue data structure, similar to leftist heaps, due to Chris Okasaki exercise solution codepad
256 22 Jul 2011 Counting Primes Using Legendre’s Formula: Recreate Legendre’s two-century old calculation of the number of primes less than a million exercise solution codepad
257 26 Jul 2011 More Prime-Counting Functions: Prime counting functions by Meissel and Lehmer, based on Legendre’s sum exercise solution codepad
336 01 May 2012   Legendre’s Symbol: Determine if a number is a quadratic residue mod m exercise solution codepad
256 22 Jul 2011 Counting Primes Using Legendre’s Formula: Recreate Legendre’s two-century old calculation of the number of primes less than a million exercise solution codepad
257 26 Jul 2011 More Prime-Counting Functions: Prime counting functions by Meissel and Lehmer, based on Legendre’s sum exercise solution codepad
114 26 Feb 2010 Run Length Encoding: A simple compression method for text files exercise solution codepad
261 09 Aug 2011 Hett’s Problem 1.28: Sorting a list of lists according to length of sublists exercise solution codepad
376 21 Sep 2012 Autumn Equinox: Calculate the length of the day; provides a time-handling library exercise solution codepad
56 04 Aug 2009   Lenstra’s Algorithm: Hendrik Lenstra’s original algorithm for elliptic curve factorization exercise solution codepad
56 04 Aug 2009 Lenstra’s Algorithm: Hendrik Lenstra’s original algorithm for elliptic curve factorization exercise solution codepad
445 31 May 2013 The Seven Bridges of Königsberg: A classic graph puzzle due to Leonhard Euler exercise solution codepad
459 23 Jul 2013 Telephone Lookup: A directory-assistance program by Mike Lesk exercise solution codepad
256 22 Jul 2011 Counting Primes Using Legendre’s Formula: Recreate Legendre’s two-century old calculation of the number of primes less than a million exercise solution codepad
348 15 Jun 2012 Counting Ones: Count the number of 1-digits in the numbers less than n exercise solution codepad
87 20 Nov 2009 Master Mind, Part 2: Solve a Master Mind puzzle in five probes or less exercise solution codepad
53 24 Jul 2009   Let’s Make A Deal!: Simulate a tricky probability calculation exercise solution codepad
172 01 Oct 2010 Oban Numbers: Numbers that omit the letter “o” when spelled, and a function to convert numbers to words exercise solution codepad
416 19 Feb 2013 NPR Sunday Puzzle: Find two words containing the letters a, b, c, d, e and f exercise solution codepad
189 30 Nov 2010 Form Letters: Merge a schema and a data file to write form letters exercise solution codepad
353 03 Jul 2012 Chopping Words: Form a chain of words by removing letters one at a time exercise solution codepad
106 29 Jan 2010 Straddling Checkerboard: An alternative to the Polybius square for ciphers that must convert letters to digits exercise solution codepad
149 13 Jul 2010 Word Cube: A game to form words from a given set of letters exercise solution codepad
189 30 Nov 2010 Form Letters: Merge a schema and a data file to write form letters exercise solution codepad
325 23 Mar 2012 Base-26 Arithmetic: Perform arithmetic on integers represented as strings of letters exercise solution codepad
183 09 Nov 2010 Subset Sums: Third level of the Greplin Programming Challenge, using dynamic programming and memoization exercise solution codepad
117 09 Mar 2010   Lexicographic Permutations: Continually generate the next permutation using an algorithm by Dijkstra exercise solution codepad
27 24 Apr 2009 Word Hy-phen-a-tion By Com-pu-ter: Frank Liang’s hyphenation algorithm, used in TeX exercise solution codepad
15 13 Mar 2009 Friday, the Thirteenth: A small calendar library, and a simple use of it exercise solution codepad
251 05 Jul 2011 Big Numbers: Examples: A library for big integers: display factorials to 50, determine if a number is prime, and compute its prime factors exercise solution codepad
249 28 Jun 2011 Big Numbers: Functions: A library for big integers: gcd, powering, square root, random numbers exercise solution codepad
241 31 May 2011 Big Numbers: Addition, Subtraction And Multiplication: A library for big integers: grade-school algorithms for addition, subtraction, and multiplication exercise solution codepad
245 14 Jun 2011 Big Numbers: Input And Output: A library for big integers: input and output with radix conversion exercise solution codepad
239 24 May 2011 Big Numbers: Getting Started: A library for big integers: representation, comparison, simple functions exercise solution codepad
247 21 Jun 2011 Big Numbers: Testing: A library for big integers: testing exercise solution codepad
243 07 Jun 2011 Big Numbers: Division: A library for big integers: the grade-school algorithm for long division exercise solution codepad
39 05 Jun 2009 Ternary Search Tries: Build a function library for handling ternary search tries exercise solution codepad
48 07 Jul 2009 Modular Arithmetic: A function library for performing modular addition, subtraction, multiplication, division, and square root exercise solution codepad
269 06 Sep 2011 Deques: Library implementation of double-ended queues exercise solution codepad
30 05 May 2009 Priority Queues: A simple library implementation of the priority queue data structure exercise solution codepad
205 25 Jan 2011 Rational Numbers: A library of basic arithmetic and comparison of fractions exercise solution codepad
54 28 Jul 2009 Elliptic Curves: Library of basic functions on elliptic curves exercise solution codepad
480 08 Oct 2013 Functional-Style Linked Lists: A library of functions on functional-style lists made from immutable pairs exercise solution codepad
481 11 Oct 2013 Imperative-Style Linked Lists: A library of functions on imperative-style lists made from mutable pairs exercise solution codepad
302 03 Jan 2012 Turtle Graphics: A minimal library of turtle graphics, as in the Logo language, implemented in PostScript exercise solution codepad
13 06 Mar 2009 Roman Numerals: A library to read and write Roman numerals exercise solution codepad
376 21 Sep 2012 Autumn Equinox: Calculate the length of the day; provides a time-handling library exercise solution codepad
333 20 Apr 2012 John Horton Conway’s Game Of Life: The classic cellular automata exercise solution codepad
33 15 May 2009 Cellular Automata: Linear cellular automata as described by Stephen Wolfram in his book A New Kind of Science exercise solution codepad
151 20 Jul 2010 Solving Systems Of Linear Equations: Matrix operations LU-decomposition and LUP-decomposition exercise solution codepad
275 27 Sep 2011 Statistics: Calculate the mean, standard deviation, linear regression and correlation exercise solution codepad
85 13 Nov 2009 Two linear sorts: Count sort and radix sort exploit the structure of integer keys exercise solution codepad
176 15 Oct 2010 Find The Longest Palindrome In A String: A beautiful linear-time algorithm due to Johan Jeuring exercise solution codepad
395 30 Nov 2012 Selection, Revisited: A guaranteed linear-time algorithm for selection exercise solution codepad
154 30 Jul 2010 Fibonacci Numbers: Three algorithms taking exponential time, linear time, and logarithmic time exercise solution codepad
360 27 Jul 2012 Min Stack: Provide push and pop operations and find the minimum element in linear time exercise solution codepad
357 17 Jul 2012 Breshenham’s Line-Drawing Algorithm: Draw straight lines using raster graphics exercise solution codepad
235 10 May 2011 Comm: select or reject lines common to two sorted files exercise solution codepad
308 24 Jan 2012 A Dozen Lines Of Code: Do something cool in a small space exercise solution codepad
173 05 Oct 2010 George Marsaglia’s Random Number Generators: Nine high-quality RNGs in nineteen lines of code exercise solution codepad
159 17 Aug 2010 Cut: Select fields or characters from input lines exercise solution codepad
357 17 Jul 2012 Breshenham’s Line-Drawing Algorithm: Draw straight lines using raster graphics exercise solution codepad
1 19 Feb 2009 RPN Calculator: Evaluate numeric expressions at the command line exercise solution codepad
425 22 Mar 2013 Jumping Jack: Jump in increasing sizes along the number line exercise solution codepad
458 19 Jul 2013 J K Rowling: Identify an author using forensic linguistics exercise solution codepad
266 26 Aug 2011 Reverse Every K Nodes Of A Linked List: Reverse the elements of a sub-list exercise solution codepad
480 08 Oct 2013 Functional-Style Linked Lists: A library of functions on functional-style lists made from immutable pairs exercise solution codepad
481 11 Oct 2013 Imperative-Style Linked Lists: A library of functions on imperative-style lists made from mutable pairs exercise solution codepad
392 20 Nov 2012 List Difference: Another algorithm on linked lists exercise solution codepad
84 10 Nov 2009 Merge Sort: A fast, stable sorting algorithm, especially well-suited to linked lists exercise solution codepad
391 16 Nov 2012 List Intersection And Union: Two algorithms on linked lists, with multiple solutions exercise solution codepad
78 20 Oct 2009 Shuffle: Create random permutations of an array or linked list exercise solution codepad
284 01 Nov 2011 RIP John McCarthy: Implementation of the “Maxwell’s equations of software” from the LISP 1.5 Programmer’s Manual exercise solution codepad
215 01 Mar 2011 An Early LISP Program: A program to flatten a list, from the March 1960 LISP I manual exercise solution codepad
215 01 Mar 2011 An Early LISP Program: A program to flatten a list, from the March 1960 LISP I manual exercise solution codepad
369 28 Aug 2012 Random Access Lists: A clever data structure that provides O(log n) access to items in a sequential list, along with cons, head and tail exercise solution codepad
482 15 Oct 2013 Find The Minimum Difference: Find the minimum difference between any item from on list and any item from another list exercise solution codepad
392 20 Nov 2012   List Difference: Another algorithm on linked lists exercise solution codepad
438 07 May 2013 Three List Exercises: Three simple exercises on lists, for beginning programmers exercise solution codepad
136 28 May 2010 Printing Files: A simple program to list files, similar to the unix pr program exercise solution codepad
215 01 Mar 2011 An Early LISP Program: A program to flatten a list, from the March 1960 LISP I manual exercise solution codepad
146 02 Jul 2010 Contents: Chronological Listing Of Exercises: Blog management exercise solution codepad
263 16 Aug 2011 Insert Into A Cyclic Sorted List: Insert a new element into a cyclic list, in order exercise solution codepad
263 16 Aug 2011 Insert Into A Cyclic Sorted List: Insert a new element into a cyclic list, in order exercise solution codepad
391 16 Nov 2012   List Intersection And Union: Two algorithms on linked lists, with multiple solutions exercise solution codepad
301 30 Dec 2011 Split: Split a list in two halves using the tortoise-and-hare algorithm exercise solution codepad
452 25 Jun 2013 Swap List Nodes: Swap the kth node from the beginning of a list with the kth node from the end of a list exercise solution codepad
261 09 Aug 2011 Hett’s Problem 1.28: Sorting a list of lists according to length of sublists exercise solution codepad
213 22 Feb 2011 Sliding Window Minimum: List of minimums sliding across an input list exercise solution codepad
472 06 Sep 2013 Cartesian Product: Cross-product of the items in a variable-length list of variable-length lists exercise solution codepad
266 26 Aug 2011 Reverse Every K Nodes Of A Linked List: Reverse the elements of a sub-list exercise solution codepad
261 09 Aug 2011 Hett’s Problem 1.28: Sorting a list of lists according to length of sublists exercise solution codepad
369 28 Aug 2012 Random Access Lists: A clever data structure that provides O(log n) access to items in a sequential list, along with cons, head and tail exercise solution codepad
480 08 Oct 2013 Functional-Style Linked Lists: A library of functions on functional-style lists made from immutable pairs exercise solution codepad
481 11 Oct 2013 Imperative-Style Linked Lists: A library of functions on imperative-style lists made from mutable pairs exercise solution codepad
430 09 Apr 2013 Cyclic Equality: Determine if two cyclic lists are equal exercise solution codepad
431 12 Apr 2013 Booth’s Algorithm: Determine of two cyclic lists are equal exercise solution codepad
438 07 May 2013 Three List Exercises: Three simple exercises on lists, for beginning programmers exercise solution codepad
480 08 Oct 2013 Functional-Style Linked Lists: A library of functions on functional-style lists made from immutable pairs exercise solution codepad
481 11 Oct 2013 Imperative-Style Linked Lists: A library of functions on imperative-style lists made from mutable pairs exercise solution codepad
58 11 Aug 2009 Uncle Bob’s Bowling Game Kata: Use pattern-matching on lists to solve a classic object-oriented programming exercise exercise solution codepad
155 03 Aug 2010 Carl Hewitt’s Same-Fringe Problem: Do two trees have the same leaves, solved with streams (lazy lists) exercise solution codepad
392 20 Nov 2012 List Difference: Another algorithm on linked lists exercise solution codepad
472 06 Sep 2013 Cartesian Product: Cross-product of the items in a variable-length list of variable-length lists exercise solution codepad
84 10 Nov 2009 Merge Sort: A fast, stable sorting algorithm, especially well-suited to linked lists exercise solution codepad
255 19 Jul 2011 Sum Of Two Integers: Determine if two integers in a list sum to a target exercise solution codepad
391 16 Nov 2012 List Intersection And Union: Two algorithms on linked lists, with multiple solutions exercise solution codepad
267 30 Aug 2011 Hamming Numbers: List the numbers with no factors greater than 5, a classic problem popularized by Dijkstra exercise solution codepad
193 14 Dec 2010 Longest Duplicated Substring: Use a sorted suffix list exercise solution codepad
213 22 Feb 2011 Sliding Window Minimum: List of minimums sliding across an input list exercise solution codepad
231 26 Apr 2011 Miscellanea: FizzBuzz, Prime Words, and Split A List exercise solution codepad
452 25 Jun 2013 Swap List Nodes: Swap the kth node from the beginning of a list with the kth node from the end of a list exercise solution codepad
482 15 Oct 2013 Find The Minimum Difference: Find the minimum difference between any item from on list and any item from another list exercise solution codepad
5 19 Feb 2009 Flavius Josephus: Programming a cyclical list exercise solution codepad
78 20 Oct 2009 Shuffle: Create random permutations of an array or linked list exercise solution codepad
93 11 Dec 2009 Selection: Find the kth-largest item in a list exercise solution codepad
452 25 Jun 2013 Swap List Nodes: Swap the kth node from the beginning of a list with the kth node from the end of a list exercise solution codepad
157 10 Aug 2010   Literate Programming: Structured documentation in the style of Donald Knuth exercise solution codepad
456 12 Jul 2013 Dynamic Hash Tables: Hash tables that grow and contract automatically to maintain a constant load factor exercise solution codepad
32 12 May 2009   Loan Amortization: Calculate and print a simple loan amortization table exercise solution codepad
32 12 May 2009 Loan Amortization: Calculate and print a simple loan amortization table exercise solution codepad
201 11 Jan 2011 Two Integrals: The exponential and logarithmic integral, and an approximation for prime-pi exercise solution codepad
258 29 Jul 2011 Approximating Pi: Approximating pi with the logarithmic integral and Riemann’s R function exercise solution codepad
154 30 Jul 2010 Fibonacci Numbers: Three algorithms taking exponential time, linear time, and logarithmic time exercise solution codepad
276 30 Sep 2011 Logarithm Tables: Print old-fashioned tables of logarithms and anti-logarithms exercise solution codepad
134 07 May 2010 Integer Logarithms: An improved algorithm is O(log n) instead of O(n) exercise solution codepad
95 18 Dec 2009 Calculating Logarithms: Use the methods of Newton and Euler to calculate square roots and logarithms exercise solution codepad
95 18 Dec 2009 Calculating Logarithms: Use the methods of Newton and Euler to calculate square roots and logarithms exercise solution codepad
276 30 Sep 2011   Logarithm Tables: Print old-fashioned tables of logarithms and anti-logarithms exercise solution codepad
79 23 Oct 2009 Mr. S. and Mr. P.: A logic puzzle popularized by John McCarthy exercise solution codepad
42 16 Jun 2009 Who Owns The Zebra?: A logic puzzle, solved by embedding a Prolog-like logic system in Scheme exercise solution codepad
7 20 Feb 2009 Multiple Dwellings: A simple logic puzzle, solved with the amb non-deterministic operator exercise solution codepad
41 12 Jun 2009 Feynman’s Puzzle: A simple logic puzzle exercise solution codepad
42 16 Jun 2009 Who Owns The Zebra?: A logic puzzle, solved by embedding a Prolog-like logic system in Scheme exercise solution codepad
100 08 Jan 2010 Nim: A two-player game of mathematical logic exercise solution codepad
86 17 Nov 2009 Master Mind, Part 1: Referee a two-player game of deductive logic exercise solution codepad
302 03 Jan 2012 Turtle Graphics: A minimal library of turtle graphics, as in the Logo language, implemented in PostScript exercise solution codepad
387 02 Nov 2012 Gasoline Mileage Log: Read a file of gasoline purchases to compute miles per gallon exercise solution codepad
243 07 Jun 2011 Big Numbers: Division: A library for big integers: the grade-school algorithm for long division exercise solution codepad
40 09 Jun 2009   Longest Common Subsequence: A classic programming algorithm, with a solution that dates to folklore exercise solution codepad
193 14 Dec 2010   Longest Duplicated Substring: Use a sorted suffix list exercise solution codepad
176 15 Oct 2010 Find The Longest Palindrome In A String: A beautiful linear-time algorithm due to Johan Jeuring exercise solution codepad
448 11 Jun 2013 Longest Substring Of Two Unique Characters: Longest run of consecutive characters in a string that contains only two unique characters exercise solution codepad
448 11 Jun 2013   Longest Substring Of Two Unique Characters: Longest run of consecutive characters in a string that contains only two unique characters exercise solution codepad
270 09 Sep 2011 Mersenne Twister: Random number generator with very long period, useful for simulations exercise solution codepad
219 15 Mar 2011   Look And Say: Calculate John Horton Conway’s "Look and Say" sequence exercise solution codepad
223 28 Mar 2011   Look And Say, Revisited: Compute Conway’s constant exercise solution codepad
219 15 Mar 2011 Look And Say: Calculate John Horton Conway’s "Look and Say" sequence exercise solution codepad
147 06 Jul 2010 Chaocipher: First look at a ninety-two year old autokey-type cipher exercise solution codepad
459 23 Jul 2013 Telephone Lookup: A directory-assistance program by Mike Lesk exercise solution codepad
207 01 Feb 2011 Cuckoo Hashing: A hashing system with guaranteed constant-time lookup and amortized constant-time insertion exercise solution codepad
116 05 Mar 2010 Binary Search Tree: Classic data structure, providing insert, delete and lookup for ordered datatypes exercise solution codepad
220 18 Mar 2011 Loopy Loops: Print the numbers from 1 to 1000 without using loops or conditionals exercise solution codepad
220 18 Mar 2011 Loopy Loops: Print the numbers from 1 to 1000 without using loops or conditionals exercise solution codepad
220 18 Mar 2011   Loopy Loops: Print the numbers from 1 to 1000 without using loops or conditionals exercise solution codepad
371 04 Sep 2012 Fountain Codes: Transmit files over a lossy channel exercise solution codepad
90 01 Dec 2009 Wolves And Rabbits: Analyze population dynamics using the Lotka-Volterra equations exercise solution codepad
192 10 Dec 2010 Two Random Selections: Use random number to select fortunes and lotto winners exercise solution codepad
209 08 Feb 2011 The First Computer Program: Ada Lovelace’s program to compute Bernoulli numbers for Charles Babbage’s Analytical Engine exercise solution codepad
218 11 Mar 2011   Lowest Common Ancestor: Find the lowest node in a binary search tree that is a common ancestor to two given nodes exercise solution codepad
218 11 Mar 2011 Lowest Common Ancestor: Find the lowest node in a binary search tree that is a common ancestor to two given nodes exercise solution codepad
454 02 Jul 2013 Decoding Text-Speak: Expnd txt wth only intl vwls and n dbld ltrs exercise solution codepad
242 03 Jun 2011 Mersenne Primes: The Lucas-Lehmer test for identifying primes of the form 2n−1 exercise solution codepad
478 01 Oct 2013   Lucas Sequences: Fast methods for calculating Lucas sequences, similar to Fibonacci sequences exercise solution codepad
478 01 Oct 2013 Lucas Sequences: Fast methods for calculating Lucas sequences, similar to Fibonacci sequences exercise solution codepad
151 20 Jul 2010 Solving Systems Of Linear Equations: Matrix operations LU-decomposition and LUP-decomposition exercise solution codepad
226 08 Apr 2011 Credit Card Validation: Validate decimal numbers using the Luhn algorithm exercise solution codepad
151 20 Jul 2010 Solving Systems Of Linear Equations: Matrix operations LU-decomposition and LUP-decomposition exercise solution codepad
21 03 Apr 2009 Programming the Turing Machine: A turing-machine program to multiply two numbers exercise solution codepad
19 27 Mar 2009 A Turing Machine Simulator: An interpreter for a single-tape, multi-symbol turing machine exercise solution codepad
16 17 Mar 2009 Comma-Separated Values: Retrieve records from a comma-separated values file using a finite-state machine exercise solution codepad
19 27 Mar 2009 A Turing Machine Simulator: An interpreter for a single-tape, multi-symbol turing machine exercise solution codepad
202 14 Jan 2011 Slots: Simulate a slot machine exercise solution codepad
356 13 Jul 2012 The Evolution Of Flibs: Use genetic programming to build a finite state machine exercise solution codepad
480 08 Oct 2013 Functional-Style Linked Lists: A library of functions on functional-style lists made from immutable pairs exercise solution codepad
481 11 Oct 2013 Imperative-Style Linked Lists: A library of functions on imperative-style lists made from mutable pairs exercise solution codepad
456 12 Jul 2013 Dynamic Hash Tables: Hash tables that grow and contract automatically to maintain a constant load factor exercise solution codepad
345 05 Jun 2012 Binomial Heaps: Another algorithm for maintaining priority queues exercise solution codepad
59 14 Aug 2009 Pairing Heaps: A standard algorithm for maintaining priority queues exercise solution codepad
297 16 Dec 2011   Majority Voting: Determine the results of an election exercise solution codepad
53 24 Jul 2009 Let’s Make A Deal!: Simulate a tricky probability calculation exercise solution codepad
491 08 Nov 2013 Two Stacks Make A Queue: Implement a queue using two stacks exercise solution codepad
490 05 Nov 2013 Two Queues Make A Stack: Implement a stack using two queues exercise solution codepad
417 22 Feb 2013 Floupia: Make change in a strange currency exercise solution codepad
331 13 Apr 2012 McNugget Numbers, Revisited: The classic coin problem in disguise, how to count the number of ways to make change exercise solution codepad
441 17 May 2013 Coin Change, Part 1: Classic problem to count the ways to make change exercise solution codepad
363 07 Aug 2012   Make: The classic Unix utility for managing file dependencies exercise solution codepad
153 27 Jul 2010 HAMURABI.BAS: Manage grain and land in ancient Sumeria exercise solution codepad
146 02 Jul 2010 Contents: Chronological Listing Of Exercises: Blog management exercise solution codepad
148 09 Jul 2010 Contents: Permuted Table Of Contents: Blog management exercise solution codepad
150 16 Jul 2010 Contents: Themes: Blog Management exercise solution codepad
473 12 Sep 2013 Diffie Hellman Key Exchange: Manage secure exchanges on an insecure communications channel exercise solution codepad
363 07 Aug 2012 Make: The classic Unix utility for managing file dependencies exercise solution codepad
215 01 Mar 2011 An Early LISP Program: A program to flatten a list, from the March 1960 LISP I manual exercise solution codepad
284 01 Nov 2011 RIP John McCarthy: Implementation of the “Maxwell’s equations of software” from the LISP 1.5 Programmer’s Manual exercise solution codepad
466 16 Aug 2013 Monkey Grid Puzzle: How many points can the monkey access? exercise solution codepad
74 06 Oct 2009   MapReduce: Google’s famous system for parallelizing computations expressed as a programming idiom exercise solution codepad
347 12 Jun 2012 Ordered Maps: A key/value dictionary that supports an ordering relationship exercise solution codepad
330 10 Apr 2012 Galton: Simulate a marble-drop that forms a bell-shaped curve exercise solution codepad
215 01 Mar 2011 An Early LISP Program: A program to flatten a list, from the March 1960 LISP I manual exercise solution codepad
10 24 Feb 2009   Mardi Gras: Compute the date of Easter exercise solution codepad
11 27 Feb 2009 Mark V. Shaney: Generate parodies of a text using a Markov chain exercise solution codepad
11 27 Feb 2009   Mark V. Shaney: Generate parodies of a text using a Markov chain exercise solution codepad
160 20 Aug 0   Marriage Sort: A sub-quadratic sort similar to shell sort or comb sort exercise solution codepad
173 05 Oct 2010 George Marsaglia’s Random Number Generators: Nine high-quality RNGs in nineteen lines of code exercise solution codepad
66 08 Sep 2009 Porter Stemming: Martin Porter’s algorithm for removing suffices from word stems exercise solution codepad
470 30 Aug 2013 BMI Calculator: Calculate a person’s body mass index exercise solution codepad
86 17 Nov 2009   Master Mind, Part 1: Referee a two-player game of deductive logic exercise solution codepad
87 20 Nov 2009   Master Mind, Part 2: Solve a Master Mind puzzle in five probes or less exercise solution codepad
87 20 Nov 2009 Master Mind, Part 2: Solve a Master Mind puzzle in five probes or less exercise solution codepad
67 11 Sep 2009 Beautiful Code: A simple regular-expression matcher by Rob Pike exercise solution codepad
69 18 Sep 2009 Regular Expressions, Part 2: The corresponding matcher exercise solution codepad
71 25 Sep 2009 Grep: Simple version of the classic unix regular-expression matching utility exercise solution codepad
51 17 Jul 2009 International Mathematical Olympiad: Three exercises from 1960s math competitions exercise solution codepad
232 29 Apr 2011 Rule 30 RNG: The random number generator from Mathematica, based on Stephen Wolfram’s Rule 30 cellular automata exercise solution codepad
100 08 Jan 2010 Nim: A two-player game of mathematical logic exercise solution codepad
94 15 Dec 2009 Affine-Shift Cipher: A cryptographically weak but mathematically interesting cipher exercise solution codepad
179 26 Oct 2010 Benford’s Law: A useful mathematical oddity, and an example of text file databases exercise solution codepad
51 17 Jul 2009 International Mathematical Olympiad: Three exercises from 1960s math competitions exercise solution codepad
221 22 Mar 2011 Two Kaprekar Exercises: Kaprekar chains and Kaprekar numbers, from the Indian mathematician Dattaraya Ramchandra Kaprekar exercise solution codepad
361 31 Jul 2012 SEND + MORE = MONEY, Part 1: Two slow solutions to a classic problem of recreational mathematics exercise solution codepad
362 03 Aug 2012 SEND + MORE = MONEY, Part 2: Two hill-climbing solutions to a classic problem of recreational mathematics exercise solution codepad
49 10 Jul 2009 The Golden Ratio: Evaluate a continued fraction, based on my daughter’s math homework exercise solution codepad
89 27 Nov 2009 $7.11: A math puzzle: a+b+c+d = a×b×c×d = 7.11 exercise solution codepad
229 19 Apr 2011 Same Five Digits: A math puzzle from New Scientist, solved by guest author Bob Miller exercise solution codepad
99 05 Jan 2010 The Sum Of Two Squares: A math puzzle with a solution by Dijkstra exercise solution codepad
72 29 Sep 2009 Green Eyes: A counting problem from high-school math exercise solution codepad
143 22 Jun 2010 Matrix Operations: Matrix addition, scalar multiplication, multiplication and transposition exercise solution codepad
313 10 Feb 2012 Search In An Ascending Matrix: Find a number in a matrix where both rows and columns are sorted in ascending order exercise solution codepad
151 20 Jul 2010 Solving Systems Of Linear Equations: Matrix operations LU-decomposition and LUP-decomposition exercise solution codepad
143 22 Jun 2010   Matrix Operations: Matrix addition, scalar multiplication, multiplication and transposition exercise solution codepad
313 10 Feb 2012 Search In An Ascending Matrix: Find a number in a matrix where both rows and columns are sorted in ascending order exercise solution codepad
265 23 Aug 2011 Knapsack: Fill a knapsack to maximize the value of its contents exercise solution codepad
224 01 Apr 2011   Maximum Difference In An Array: Find maximum Xj &minus Xi, with ij exercise solution codepad
190 03 Dec 2010   Maximum Sum Subsequence: A classic programming exercise due to Jon Bentley exercise solution codepad
224 01 Apr 2011 Maximum Difference In An Array: Find maximum Xj &minus Xi, with ij exercise solution codepad
171 28 Sep 2010   Maxiphobic Heaps: A priority-queue data structure, similar to leftist heaps, due to Chris Okasaki exercise solution codepad
284 01 Nov 2011 RIP John McCarthy: Implementation of the “Maxwell’s equations of software” from the LISP 1.5 Programmer’s Manual exercise solution codepad
284 01 Nov 2011 RIP John McCarthy: Implementation of the “Maxwell’s equations of software” from the LISP 1.5 Programmer’s Manual exercise solution codepad
475 20 Sep 2013   McCarthy’s 91 Function: A recursive function designed as a test case for formal verification exercise solution codepad
79 23 Oct 2009 Mr. S. and Mr. P.: A logic puzzle popularized by John McCarthy exercise solution codepad
113 23 Feb 2010 Engineering A Sort Function: A high-performance quicksort by Jon Bentley and Doug McIlroy exercise solution codepad
295 09 Dec 2011   McNugget Numbers: A simple problem, worked out on a napkin exercise solution codepad
331 13 Apr 2012   McNugget Numbers, Revisited: The classic coin problem in disguise, how to count the number of ways to make change exercise solution codepad
479 04 Oct 2013 Calculating Statistics: Read a file of integers and calculate mean, median and mode exercise solution codepad
275 27 Sep 2011 Statistics: Calculate the mean, standard deviation, linear regression and correlation exercise solution codepad
479 04 Oct 2013 Calculating Statistics: Read a file of integers and calculate mean, median and mode exercise solution codepad
352 29 Jun 2012 Sliding Median: Find the median of the most recent k items in a stream exercise solution codepad
344 00 May 2012 Streaming Median: Find the medians of a set of numbers as they arrive in a stream exercise solution codepad
396 04 Dec 2012   Median Of Five: A very fast method to compute the median of five items exercise solution codepad
396 04 Dec 2012 Median Of Five: A very fast method to compute the median of five items exercise solution codepad
352 29 Jun 2012 Sliding Median: Find the median of the most recent k items in a stream exercise solution codepad
344 00 May 2012 Streaming Median: Find the medians of a set of numbers as they arrive in a stream exercise solution codepad
327 30 Mar 2012 Subset Sum, Meet In The Middle: An improved solution to the classic NP problem exercise solution codepad
257 26 Jul 2011 More Prime-Counting Functions: Prime counting functions by Meissel and Lehmer, based on Legendre’s sum exercise solution codepad
183 09 Nov 2010 Subset Sums: Third level of the Greplin Programming Challenge, using dynamic programming and memoization exercise solution codepad
228 15 Apr 2011 Partition Numbers: Calculate the partition numbers, using memoization via growing arrays exercise solution codepad
403 28 Dec 2012 Three Wise Men: Find the prices of their gifts exercise solution codepad
189 30 Nov 2010 Form Letters: Merge a schema and a data file to write form letters exercise solution codepad
84 10 Nov 2009   Merge Sort: A fast, stable sorting algorithm, especially well-suited to linked lists exercise solution codepad
242 03 Jun 2011   Mersenne Primes: The Lucas-Lehmer test for identifying primes of the form 2n−1 exercise solution codepad
270 09 Sep 2011   Mersenne Twister: Random number generator with very long period, useful for simulations exercise solution codepad
342 22 May 2012 Hamming Codes: Send messages over a noisy channel without error exercise solution codepad
22 07 Apr 2009 Flipping Pancakes: A sorting method analyzed by Bill Gates exercise solution codepad
367 21 Aug 2012 Two More Random Exercises: Two bad random number generators, the middle-square method and RANDU exercise solution codepad
83 06 Nov 2009 Heap Sort: A guaranteed O(log n) sorting method based on priority queues exercise solution codepad
114 26 Feb 2010 Run Length Encoding: A simple compression method for text files exercise solution codepad
278 07 Oct 2011 Sieve of Sundaram: Sieving for prime numbers using a method from India exercise solution codepad
109 09 Feb 2010 Numerical Integration: Quadrature by the rectangular, trapezoidal and Simpson’s method, including adaptive quadrature exercise solution codepad
34 19 May 2009 Fermat’s Method: Integer factorization by Fermat’s algorithm exercise solution codepad
107 02 Feb 2010 Proving Primality: A deterministic, not probabilistic, method of checking primality exercise solution codepad
167 14 Sep 2010 The Factorization Of F7: Part 1: Our fortieth anniversary celebration of Morrison and Brillhart’s method of integer factorization by continued fractions exercise solution codepad
168 17 Sep 2010 The Factorization Of F7: Part 2: Our fortieth anniversary celebration of Morrison and Brillhart’s method of integer factorization by continued fractions exercise solution codepad
252 08 Jul 2011 Vedic Divisibility: Use a method of testing divisibility using the method of osculators developed in India exercise solution codepad
446 04 Jun 2013 Egyptian Fractions: An ancient method of representing fractions exercise solution codepad
214 25 Feb 2011 Sieve Of Euler: An alternate, and slow, method of sieving for primes exercise solution codepad
252 08 Jul 2011 Vedic Divisibility: Use a method of testing divisibility using the method of osculators developed in India exercise solution codepad
75 09 Oct 2009 Calculating Pi: Calculate the value of π by monte-carlo methods and by an Archimedean method exercise solution codepad
132 30 Apr 2010 Integer Factorization: Combine trial division, Pollard’s rho and p−1 methods, and elliptic curves into a single factorization program exercise solution codepad
478 01 Oct 2013 Lucas Sequences: Fast methods for calculating Lucas sequences, similar to Fibonacci sequences exercise solution codepad
95 18 Dec 2009 Calculating Logarithms: Use the methods of Newton and Euler to calculate square roots and logarithms exercise solution codepad
248 24 Jun 2011 Thank God It’s Friday!: Three methods to calculate the day of the week exercise solution codepad
344 01 Jun 2012 Square Roots: Four methods to compute square roots, including one from antiquity exercise solution codepad
396 04 Dec 2012 Median Of Five: A very fast method to compute the median of five items exercise solution codepad
227 12 Apr 2011 House Of Representatives: Apportion representatives by the Huntington-Hill method exercise solution codepad
75 09 Oct 2009 Calculating Pi: Calculate the value of π by monte-carlo methods and by an Archimedean method exercise solution codepad
29 01 May 2009 Primality Checking: A probabilistic primality checker by Gary Miller and Michael Rabin exercise solution codepad
327 30 Mar 2012 Subset Sum, Meet In The Middle: An improved solution to the classic NP problem exercise solution codepad
367 21 Aug 2012 Two More Random Exercises: Two bad random number generators, the middle-square method and RANDU exercise solution codepad
329 06 Apr 2012 Voters: Watch voting blocks migrate on the screen exercise solution codepad
459 23 Jul 2013 Telephone Lookup: A directory-assistance program by Mike Lesk exercise solution codepad
387 02 Nov 2012 Gasoline Mileage Log: Read a file of gasoline purchases to compute miles per gallon exercise solution codepad
387 02 Nov 2012 Gasoline Mileage Log: Read a file of gasoline purchases to compute miles per gallon exercise solution codepad
76 13 Oct 2009 Bifid: A simple but effective fractionating cipher, never used militarily exercise solution codepad
320 06 Mar 2012 Union Route Cipher: Military cipher used successfully by Union forces in the American Civil War exercise solution codepad
57 07 Aug 2009 ADFGX: A classic German military field cipher from the First World War exercise solution codepad
47 03 Jul 2009 The Playfair Cipher: A classic military field cipher exercise solution codepad
29 01 May 2009 Primality Checking: A probabilistic primality checker by Gary Miller and Michael Rabin exercise solution codepad
180 29 Oct 2010 Fibonacci Primes: Find primes among the fibonacci numbers; includes the Park-Miller random number generator and Miller-Rabin primality checker exercise solution codepad
419 01 Mar 2013 Baillie-Wagstaff Pseudoprimality Tester: Primality test, an improvement over the Miller-Rabin test exercise solution codepad
390 13 Nov 2012 Frobenius Primality Test: A pseudoprimality test, stronger than Miller-Rabin exercise solution codepad
229 19 Apr 2011 Same Five Digits: A math puzzle from New Scientist, solved by guest author Bob Miller exercise solution codepad
394 27 Nov 2012 Amazon Interview Question: Find the hundred points of a million closest to the origin exercise solution codepad
427 29 Mar 2013 One Million Hits: Celebrating our one-millionth hit! exercise solution codepad
256 22 Jul 2011 Counting Primes Using Legendre’s Formula: Recreate Legendre’s two-century old calculation of the number of primes less than a million exercise solution codepad
439 10 May 2013 MindCipher: Three exercises from the MindCipher puzzle website exercise solution codepad
439 10 May 2013   MindCipher: Three exercises from the MindCipher puzzle website exercise solution codepad
86 17 Nov 2009 Master Mind, Part 1: Referee a two-player game of deductive logic exercise solution codepad
87 20 Nov 2009 Master Mind, Part 2: Solve a Master Mind puzzle in five probes or less exercise solution codepad
87 20 Nov 2009 Master Mind, Part 2: Solve a Master Mind puzzle in five probes or less exercise solution codepad
302 03 Jan 2012 Turtle Graphics: A minimal library of turtle graphics, as in the Logo language, implemented in PostScript exercise solution codepad
341 18 May 2012 Formatted Numeric Output: A minimal version of C’s printf function exercise solution codepad
125 06 Apr 2010 Minimum Spanning Tree: Kruskal’s Algorithm: Find the minimum-cost tree that includes all the nodes in a graph exercise solution codepad
126 09 Apr 2010 Minimum Spanning Tree: Prim’s Algorithm: Find the minimum-cost tree that includes all the nodes in a graph exercise solution codepad
482 15 Oct 2013 Find The Minimum Difference: Find the minimum difference between any item from on list and any item from another list exercise solution codepad
482 15 Oct 2013 Find The Minimum Difference: Find the minimum difference between any item from on list and any item from another list exercise solution codepad
360 27 Jul 2012 Min Stack: Provide push and pop operations and find the minimum element in linear time exercise solution codepad
213 22 Feb 2011 Sliding Window Minimum: List of minimums sliding across an input list exercise solution codepad
364 10 Aug 2012   Minimum Scalar Product: A simple exercise from the practice round of Google Code Jam 2008 exercise solution codepad
127 13 Apr 2010 Traveling Salesman: Minimum Spanning Tree: Heuristic guarantees solution within factor of two of optimal tour exercise solution codepad
125 06 Apr 2010   Minimum Spanning Tree: Kruskal’s Algorithm: Find the minimum-cost tree that includes all the nodes in a graph exercise solution codepad
126 09 Apr 2010   Minimum Spanning Tree: Prim’s Algorithm: Find the minimum-cost tree that includes all the nodes in a graph exercise solution codepad
213 22 Feb 2011 Sliding Window Minimum: List of minimums sliding across an input list exercise solution codepad
360 27 Jul 2012   Min Stack: Provide push and pop operations and find the minimum element in linear time exercise solution codepad
128 16 Apr 2010 Expression Evaluation: Parse and evaluate an arithmetic expression with plus, minus, times, divide and parentheses exercise solution codepad
231 26 Apr 2011   Miscellanea: FizzBuzz, Prime Words, and Split A List exercise solution codepad
110 12 Feb 2010 Sieve of Atkin: A modern alternative to the Sieve of Eratosthenes for computing prime numbers exercise solution codepad
130 23 Apr 2010   Modern Elliptic Curve Factorization, Part 1: Elliptic arithmetic using Montgomery’s parameterization exercise solution codepad
131 27 Apr 2010   Modern Elliptic Curve Factorization, Part 2: Elliptic arithmetic using Montgomery’s parameterization exercise solution codepad
164 03 Sep 2010 Data Encryption Standard: Part 2: ECB, CBC, CFB and OFB block modes for DES and other block ciphers exercise solution codepad
479 04 Oct 2013 Calculating Statistics: Read a file of integers and calculate mean, median and mode exercise solution codepad
336 01 May 2012 Legendre’s Symbol: Determine if a number is a quadratic residue mod m exercise solution codepad
197 28 Dec 2010 Carmichael Numbers: Composite numbers such that an-1 ≡ 1 (mod n) if a is prime to n exercise solution codepad
44 23 Jun 2009 The Mod Out System: Expand a series of ranges exercise solution codepad
48 07 Jul 2009 Modular Arithmetic: A function library for performing modular addition, subtraction, multiplication, division, and square root exercise solution codepad
48 07 Jul 2009   Modular Arithmetic: A function library for performing modular addition, subtraction, multiplication, division, and square root exercise solution codepad
162 27 Aug 2010 Chinese Remainders: An ancient application of modular inverses exercise solution codepad
444 28 May 2013 Modular Multiplication Without Overflow: Perform modular multiplication without overflowing an integer datatype exercise solution codepad
444 28 May 2013   Modular Multiplication Without Overflow: Perform modular multiplication without overflowing an integer datatype exercise solution codepad
393 23 Nov 2012 Tonelli-Shanks Algorithm: Compute modular square roots exercise solution codepad
361 31 Jul 2012 SEND + MORE = MONEY, Part 1: Two slow solutions to a classic problem of recreational mathematics exercise solution codepad
361 31 Jul 2012 SEND + MORE = MONEY, Part 1: Two slow solutions to a classic problem of recreational mathematics exercise solution codepad
362 03 Aug 2012 SEND + MORE = MONEY, Part 2: Two hill-climbing solutions to a classic problem of recreational mathematics exercise solution codepad
362 03 Aug 2012 SEND + MORE = MONEY, Part 2: Two hill-climbing solutions to a classic problem of recreational mathematics exercise solution codepad
466 16 Aug 2013 Monkey Grid Puzzle: How many points can the monkey access? exercise solution codepad
466 16 Aug 2013   Monkey Grid Puzzle: How many points can the monkey access? exercise solution codepad
50 14 Jul 2009 The Daily Cryptogram: Solve a monoalphabetic substitution cipher exercise solution codepad
43 19 Jun 2009   Monte Carlo Factorization: Integer factorization via Pollard’s rho algorithm exercise solution codepad
75 09 Oct 2009 Calculating Pi: Calculate the value of π by monte-carlo methods and by an Archimedean method exercise solution codepad
130 23 Apr 2010 Modern Elliptic Curve Factorization, Part 1: Elliptic arithmetic using Montgomery’s parameterization exercise solution codepad
131 27 Apr 2010 Modern Elliptic Curve Factorization, Part 2: Elliptic arithmetic using Montgomery’s parameterization exercise solution codepad
370 31 Aug 2012 Once In A Blue Moon: Find months with two full moons exercise solution codepad
104 22 Jan 2010 Phases Of The Moon: Calculate the number of days since the last new moon exercise solution codepad
370 31 Aug 2012 Once In A Blue Moon: Find months with two full moons exercise solution codepad
370 31 Aug 2012 Once In A Blue Moon: Find months with two full moons exercise solution codepad
104 22 Jan 2010 Phases Of The Moon: Calculate the number of days since the last new moon exercise solution codepad
467 20 Aug 2013   More Bit Hacks: A time-honored tradition, and useful exercise solution codepad
471 03 Sep 2013 Yet More Bit Hacks: A time-honored tradition, and useful exercise solution codepad
194 17 Dec 2010 Polite Numbers: Write numbers as the sum of two or more consecutive integers exercise solution codepad
361 31 Jul 2012 SEND + MORE = MONEY, Part 1: Two slow solutions to a classic problem of recreational mathematics exercise solution codepad
361 31 Jul 2012 SEND + MORE = MONEY, Part 1: Two slow solutions to a classic problem of recreational mathematics exercise solution codepad
362 03 Aug 2012 SEND + MORE = MONEY, Part 2: Two hill-climbing solutions to a classic problem of recreational mathematics exercise solution codepad
362 03 Aug 2012 SEND + MORE = MONEY, Part 2: Two hill-climbing solutions to a classic problem of recreational mathematics exercise solution codepad
257 26 Jul 2011   More Prime-Counting Functions: Prime counting functions by Meissel and Lehmer, based on Legendre’s sum exercise solution codepad
367 21 Aug 2012 Two More Random Exercises: Two bad random number generators, the middle-square method and RANDU exercise solution codepad
167 14 Sep 2010 The Factorization Of F7: Part 1: Our fortieth anniversary celebration of Morrison and Brillhart’s method of integer factorization by continued fractions exercise solution codepad
168 17 Sep 2010 The Factorization Of F7: Part 2: Our fortieth anniversary celebration of Morrison and Brillhart’s method of integer factorization by continued fractions exercise solution codepad
28 28 Apr 2009   Morse Code: Translating the dots-and-dashes of Samuel Finley Breese Morse’s telegraph code exercise solution codepad
28 28 Apr 2009 Morse Code: Translating the dots-and-dashes of Samuel Finley Breese Morse’s telegraph code exercise solution codepad
352 29 Jun 2012 Sliding Median: Find the median of the most recent k items in a stream exercise solution codepad
421 08 Mar 2013 Knight Moves: Move a knight around a chess board exercise solution codepad
421 08 Mar 2013 Knight Moves: Move a knight around a chess board exercise solution codepad
79 23 Oct 2009 Mr. S. and Mr. P.: A logic puzzle popularized by John McCarthy exercise solution codepad
79 23 Oct 2009   Mr. S. and Mr. P.: A logic puzzle popularized by John McCarthy exercise solution codepad
336 01 May 2012 Legendre’s Symbol: Determine if a number is a quadratic residue mod m exercise solution codepad
272 16 Sep 2011 Pollard’s P−1 Factorization Algoritihm, Revisited: An improved second stage that is much faster than the original exercise solution codepad
7 20 Feb 2009   Multiple Dwellings: A simple logic puzzle, solved with the amb non-deterministic operator exercise solution codepad
451 21 Jun 2013   Multiple Polynomial Quadratic Sieve: A greatly improved version of the basic quadratic sieve exercise solution codepad
324 20 Mar 2012 Factoring Multiple RSA Keys: Exploit a key-generation weakness to factor RSA keys exercise solution codepad
391 16 Nov 2012 List Intersection And Union: Two algorithms on linked lists, with multiple solutions exercise solution codepad
382 16 Oct 2012 Version Control: Economically store multiple versions of text files exercise solution codepad
289 18 Nov 2011 Grade School Multiplication: Display the steps in the grade school multiplication algorithm exercise solution codepad
241 31 May 2011 Big Numbers: Addition, Subtraction And Multiplication: A library for big integers: grade-school algorithms for addition, subtraction, and multiplication exercise solution codepad
143 22 Jun 2010 Matrix Operations: Matrix addition, scalar multiplication, multiplication and transposition exercise solution codepad
289 18 Nov 2011 Grade School Multiplication: Display the steps in the grade school multiplication algorithm exercise solution codepad
102 15 Jan 2010 Three Binary Algorithms: Multiplication, division and greatest common divisor using binary arithmetic exercise solution codepad
48 07 Jul 2009 Modular Arithmetic: A function library for performing modular addition, subtraction, multiplication, division, and square root exercise solution codepad
143 22 Jun 2010 Matrix Operations: Matrix addition, scalar multiplication, multiplication and transposition exercise solution codepad
418 26 Feb 2013 An Odd Way To Square: Square a number without using multiplication or exponentiation exercise solution codepad
241 31 May 2011 Big Numbers: Addition, Subtraction And Multiplication: A library for big integers: grade-school algorithms for addition, subtraction, and multiplication exercise solution codepad
444 28 May 2013 Modular Multiplication Without Overflow: Perform modular multiplication without overflowing an integer datatype exercise solution codepad
444 28 May 2013 Modular Multiplication Without Overflow: Perform modular multiplication without overflowing an integer datatype exercise solution codepad
485 25 Oct 2013 Pessimal Algorithms And Simplexity Analysis: The slowsort algorithm using the multiply and surrender algorithms exercise solution codepad
21 03 Apr 2009 Programming the Turing Machine: A turing-machine program to multiply two numbers exercise solution codepad
19 27 Mar 2009 A Turing Machine Simulator: An interpreter for a single-tape, multi-symbol turing machine exercise solution codepad
434 23 Apr 2013 Correct Horse Battery Staple: Randall Munro’s passphrase generator exercise solution codepad
106 29 Jan 2010 Straddling Checkerboard: An alternative to the Polybius square for ciphers that must convert letters to digits exercise solution codepad
481 11 Oct 2013 Imperative-Style Linked Lists: A library of functions on imperative-style lists made from mutable pairs exercise solution codepad
377 28 Sep 2012 Pocklington’s N−1 Primality Prover: Prove n prime if n−1 can be partially factored exercise solution codepad
377 28 Sep 2012 Pocklington’s N−1 Primality Prover: Prove n prime if n−1 can be partially factored exercise solution codepad
369 28 Aug 2012 Random Access Lists: A clever data structure that provides O(log n) access to items in a sequential list, along with cons, head and tail exercise solution codepad
208 04 Feb 2011 Excel Columns: Numbers as in Excel column names, A=1, Z=26, IV=256 exercise solution codepad
111 16 Feb 2010 Soundex: An algorithm to assign people’s last names to equivalence classes based on similar spelling exercise solution codepad
295 09 Dec 2011 McNugget Numbers: A simple problem, worked out on a napkin exercise solution codepad
399 14 Dec 2012 115132219018763992565095597973971522401: Calculate the sequence of narcissistic numbers exercise solution codepad
420 05 Mar 2013 Dutch National Flag: Classic ternary sort by Edsgar Dijkstra exercise solution codepad
384 23 Oct 2012 Universal Hash Function: Compute a hash for any native Scheme datatype exercise solution codepad
141 15 Jun 2010   Natural Join: The fundamental relational database operator exercise solution codepad
103 19 Jan 2010 Flight Planning: Computing the navigation triangle, by Jos Koot exercise solution codepad
77 16 Oct 2009 Growable Arrays: Arrays that grow and shrink at run-time, with O(log n) complexity per operation exercise solution codepad
454 02 Jul 2013 Decoding Text-Speak: Expnd txt wth only intl vwls and n dbld ltrs exercise solution codepad
322 13 Mar 2012 Perfect Power Predicate: Given a positive integer n, determine if there exists a b and e for which be = n exercise solution codepad
119 16 Mar 2010 Traveling Salesman: Nearest Neighbor: A greedy heuristic that builds a path by always choosing the nearest unvisited point exercise solution codepad
119 16 Mar 2010 Traveling Salesman: Nearest Neighbor: A greedy heuristic that builds a path by always choosing the nearest unvisited point exercise solution codepad
300 27 Dec 2011 Cheating Hangman: A version of Hangman that nearly always wins exercise solution codepad
432 16 Apr 2013 Date Formatting: Neatly write a date in a variety of formats exercise solution codepad
423 15 Mar 2013 Buffon’s Needle: Compute the value of π with a simulation exercise solution codepad
119 16 Mar 2010 Traveling Salesman: Nearest Neighbor: A greedy heuristic that builds a path by always choosing the nearest unvisited point exercise solution codepad
319 02 Mar 2012 Balanced Delimiters: Determine if nested delimiters are properly balanced exercise solution codepad
191 07 Dec 2010 Ullman’s Puzzle: It never hurts to sort exercise solution codepad
76 13 Oct 2009 Bifid: A simple but effective fractionating cipher, never used militarily exercise solution codepad
263 16 Aug 2011 Insert Into A Cyclic Sorted List: Insert a new element into a cyclic list, in order exercise solution codepad
33 15 May 2009 Cellular Automata: Linear cellular automata as described by Stephen Wolfram in his book A New Kind of Science exercise solution codepad
144 25 Jun 2010 Learn A New Language: Solve the exercise of your choice in an unfamiliar language exercise solution codepad
316 21 Feb 2012 Learn A New Language: Solve the exercise of your choice in an unfamiliar language exercise solution codepad
104 22 Jan 2010 Phases Of The Moon: Calculate the number of days since the last new moon exercise solution codepad
229 19 Apr 2011 Same Five Digits: A math puzzle from New Scientist, solved by guest author Bob Miller exercise solution codepad
95 18 Dec 2009 Calculating Logarithms: Use the methods of Newton and Euler to calculate square roots and logarithms exercise solution codepad
404 01 Jan 2013 Happy New Year!: Find expressions that evaluate to 2013 exercise solution codepad
318 28 Feb 2012   Next Greater Permutation Of Digits: Find the smallest number larger than the input number using the same digits as the input number exercise solution codepad
414 12 Feb 2013 Binary Search Tree: In-Order Predecessor And Successor: Find the previous and next items in a tree exercise solution codepad
35 22 May 2009 The Next Palindrome: Find the next palindromic number greater than the input number exercise solution codepad
35 22 May 2009 The Next Palindrome: Find the next palindromic number greater than the input number exercise solution codepad
117 09 Mar 2010 Lexicographic Permutations: Continually generate the next permutation using an algorithm by Dijkstra exercise solution codepad
122 26 Mar 2010 The Next Prime: Efficiently find the next prime number larger than a given number exercise solution codepad
122 26 Mar 2010 The Next Prime: Efficiently find the next prime number larger than a given number exercise solution codepad
453 28 Jun 2013 A Programming Puzzle: Write a function f so that f(f(n)) = -n for all integers n. exercise solution codepad
453 28 Jun 2013 A Programming Puzzle: Write a function f so that f(f(n)) = -n for all integers n. exercise solution codepad
197 28 Dec 2010 Carmichael Numbers: Composite numbers such that an-1 ≡ 1 (mod n) if a is prime to n exercise solution codepad
100 08 Jan 2010   Nim: A two-player game of mathematical logic exercise solution codepad
129 20 Apr 2010 145 Puzzle: Build and evaluate expressions using the digits one through nine and the simple arithmetic operators exercise solution codepad
173 05 Oct 2010 George Marsaglia’s Random Number Generators: Nine high-quality RNGs in nineteen lines of code exercise solution codepad
173 05 Oct 2010 George Marsaglia’s Random Number Generators: Nine high-quality RNGs in nineteen lines of code exercise solution codepad
260 05 Aug 2011   Ninety-Nine Bottles Of Beer: The popular song exercise solution codepad
147 06 Jul 2010 Chaocipher: First look at a ninety-two year old autokey-type cipher exercise solution codepad
134 07 May 2010 Integer Logarithms: An improved algorithm is O(log n) instead of O(n) exercise solution codepad
452 25 Jun 2013 Swap List Nodes: Swap the kth node from the beginning of a list with the kth node from the end of a list exercise solution codepad
452 25 Jun 2013 Swap List Nodes: Swap the kth node from the beginning of a list with the kth node from the end of a list exercise solution codepad
218 11 Mar 2011 Lowest Common Ancestor: Find the lowest node in a binary search tree that is a common ancestor to two given nodes exercise solution codepad
125 06 Apr 2010 Minimum Spanning Tree: Kruskal’s Algorithm: Find the minimum-cost tree that includes all the nodes in a graph exercise solution codepad
126 09 Apr 2010 Minimum Spanning Tree: Prim’s Algorithm: Find the minimum-cost tree that includes all the nodes in a graph exercise solution codepad
266 26 Aug 2011 Reverse Every K Nodes Of A Linked List: Reverse the elements of a sub-list exercise solution codepad
452 25 Jun 2013 Swap List Nodes: Swap the kth node from the beginning of a list with the kth node from the end of a list exercise solution codepad
218 11 Mar 2011 Lowest Common Ancestor: Find the lowest node in a binary search tree that is a common ancestor to two given nodes exercise solution codepad
267 30 Aug 2011 Hamming Numbers: List the numbers with no factors greater than 5, a classic problem popularized by Dijkstra exercise solution codepad
342 22 May 2012 Hamming Codes: Send messages over a noisy channel without error exercise solution codepad
7 20 Feb 2009 Multiple Dwellings: A simple logic puzzle, solved with the amb non-deterministic operator exercise solution codepad
264 19 Aug 2011 First Non-Repeating Character: Find the first character in a string that doesn’t repeat later in the string exercise solution codepad
429 05 Apr 2013 Last Non-Zero Digit Of A Factorial: Find the last non-zero digit of a factorial exercise solution codepad
429 05 Apr 2013 Last Non-Zero Digit Of A Factorial: Find the last non-zero digit of a factorial exercise solution codepad
311 03 Feb 2012 Roman Numeral Puzzle: Count the Roman numerals with no repeated digits exercise solution codepad
312 07 Feb 2012 Solar Compass: Determine North by sighting the Sun exercise solution codepad
97 29 Dec 2009 A Statisticle Speling Korrecter: Peter Norvig’s version of the Google spelling suggester exercise solution codepad
181 02 Nov 2010 Emirps: Prime numbers that are prime when their digits are reversed, but not palindromic exercise solution codepad
107 02 Feb 2010 Proving Primality: A deterministic, not probabilistic, method of checking primality exercise solution codepad
327 30 Mar 2012 Subset Sum, Meet In The Middle: An improved solution to the classic NP problem exercise solution codepad
326 27 Mar 2012 Subset Sum: Solve a classic NP problem using dynamic programming exercise solution codepad
377 28 Sep 2012 Pocklington’s N−1 Primality Prover: Prove n prime if n−1 can be partially factored exercise solution codepad
279 14 Oct 2011 The First N Primes: Embedding the Sieve of Eratosthenes in a priority queue instead of an array exercise solution codepad
416 19 Feb 2013   NPR Sunday Puzzle: Find two words containing the letters a, b, c, d, e and f exercise solution codepad
140 11 Jun 2010   N-Queens: Our version of a classic algorithmic exercise exercise solution codepad
83 06 Nov 2009 Heap Sort: A guaranteed O(log n) sorting method based on priority queues exercise solution codepad
259 02 Aug 2011 The Nth Prime: The n prime, counting from p1 = 2 exercise solution codepad
200 07 Jan 2011 Counting Primes: The prime counting function and nth-prime function exercise solution codepad
259 02 Aug 2011 The Nth Prime: The n prime, counting from p1 = 2 exercise solution codepad
197 28 Dec 2010 Carmichael Numbers: Composite numbers such that an-1 ≡ 1 (mod n) if a is prime to n exercise solution codepad
322 13 Mar 2012 Perfect Power Predicate: Given a positive integer n, determine if there exists a b and e for which be = n exercise solution codepad
322 13 Mar 2012 Perfect Power Predicate: Given a positive integer n, determine if there exists a b and e for which be = n exercise solution codepad
348 15 Jun 2012 Counting Ones: Count the number of 1-digits in the numbers less than n exercise solution codepad
453 28 Jun 2013 A Programming Puzzle: Write a function f so that f(f(n)) = -n for all integers n. exercise solution codepad
169 21 Sep 2010 Kaprekar Numbers: Square the number and add the digits in halves exercise solution codepad
31 08 May 2009 Wheel Factorization: Find the factors of a number by a variant of trial division exercise solution codepad
180 29 Oct 2010 Fibonacci Primes: Find primes among the fibonacci numbers; includes the Park-Miller random number generator and Miller-Rabin primality checker exercise solution codepad
232 29 Apr 2011 Rule 30 RNG: The random number generator from Mathematica, based on Stephen Wolfram’s Rule 30 cellular automata exercise solution codepad
173 05 Oct 2010 George Marsaglia’s Random Number Generators: Nine high-quality RNGs in nineteen lines of code exercise solution codepad
367 21 Aug 2012 Two More Random Exercises: Two bad random number generators, the middle-square method and RANDU exercise solution codepad
60 18 Aug 2009 Blum Blum Shub: Stream cipher based on a cryptographically secure pseudo-random number generator exercise solution codepad
270 09 Sep 2011 Mersenne Twister: Random number generator with very long period, useful for simulations exercise solution codepad
35 22 May 2009 The Next Palindrome: Find the next palindromic number greater than the input number exercise solution codepad
115 02 Mar 2010 Goldbach’s Conjecture: Every even number greater than two can be written as the sum of two primes exercise solution codepad
306 17 Jan 2012 Guess The Number: Number-guessing game for children learning arithmetic exercise solution codepad
313 10 Feb 2012 Search In An Ascending Matrix: Find a number in a matrix where both rows and columns are sorted in ascending order exercise solution codepad
336 01 May 2012 Legendre’s Symbol: Determine if a number is a quadratic residue mod m exercise solution codepad
156 06 Aug 2010 Two Powering Predicates: Determine if a number is a square or a prime power exercise solution codepad
251 05 Jul 2011 Big Numbers: Examples: A library for big integers: display factorials to 50, determine if a number is prime, and compute its prime factors exercise solution codepad
122 26 Mar 2010 The Next Prime: Efficiently find the next prime number larger than a given number exercise solution codepad
318 28 Feb 2012 Next Greater Permutation Of Digits: Find the smallest number larger than the input number using the same digits as the input number exercise solution codepad
425 22 Mar 2013 Jumping Jack: Jump in increasing sizes along the number line exercise solution codepad
306 17 Jan 2012 Guess The Number: Number-guessing game for children learning arithmetic exercise solution codepad
348 15 Jun 2012 Counting Ones: Count the number of 1-digits in the numbers less than n exercise solution codepad
455 05 Jul 2013 Weekdays Between Two Dates: Number of days between two dates, excluding Saturday and Sunday exercise solution codepad
104 22 Jan 2010 Phases Of The Moon: Calculate the number of days since the last new moon exercise solution codepad
307 20 Jan 2012 Knights On A Keypad: Count the number of knight paths on a keypad exercise solution codepad
256 22 Jul 2011 Counting Primes Using Legendre’s Formula: Recreate Legendre’s two-century old calculation of the number of primes less than a million exercise solution codepad
206 28 Jan 2011 Population Count: Count the number of set bits (1-bits) in the binary representation of an integer exercise solution codepad
331 13 Apr 2012 McNugget Numbers, Revisited: The classic coin problem in disguise, how to count the number of ways to make change exercise solution codepad
383 19 Oct 2012 Prime Partitions: Compute the number of ways to sum primes to a target exercise solution codepad
241 31 May 2011 Big Numbers: Addition, Subtraction And Multiplication: A library for big integers: grade-school algorithms for addition, subtraction, and multiplication exercise solution codepad
205 25 Jan 2011 Rational Numbers: A library of basic arithmetic and comparison of fractions exercise solution codepad
238 20 May 0 ISBN Validation: Validate ISBN book numbers, and fetch author and title from the internet exercise solution codepad
170 24 Sep 2010 Alien Numbers: An exercise from Google Code Jam exercise solution codepad
296 13 Dec 2011 Validating Telephone Numbers: An exercise in input validation exercise solution codepad
295 09 Dec 2011 McNugget Numbers: A simple problem, worked out on a napkin exercise solution codepad
208 04 Feb 2011 Excel Columns: Numbers as in Excel column names, A=1, Z=26, IV=256 exercise solution codepad
194 17 Dec 2010 Polite Numbers: Write numbers as the sum of two or more consecutive integers exercise solution codepad
344 00 May 2012 Streaming Median: Find the medians of a set of numbers as they arrive in a stream exercise solution codepad
374 14 Sep 2012 Tribonacci Numbers: A variant of fibonacci numbers exercise solution codepad
228 15 Apr 2011 Partition Numbers: Calculate the partition numbers, using memoization via growing arrays exercise solution codepad
197 28 Dec 2010 Carmichael Numbers: Composite numbers such that an-1 ≡ 1 (mod n) if a is prime to n exercise solution codepad
389 09 Nov 2012 Taxicab Numbers: Confirm an interesting observation of Srinivasa Ramanujan exercise solution codepad
397 07 Dec 2012 Wirth Problem 15.12: Compute a sequence of numbers defined by Wirth exercise solution codepad
243 07 Jun 2011 Big Numbers: Division: A library for big integers: the grade-school algorithm for long division exercise solution codepad
251 05 Jul 2011 Big Numbers: Examples: A library for big integers: display factorials to 50, determine if a number is prime, and compute its prime factors exercise solution codepad
386 30 Oct 2012 Pandigital Numbers: Find sums that include all ten digits exercise solution codepad
271 13 Sep 2011 Tetrahedral Numbers: Find the base of the tetrahedron that contains 169179692512835000 balls exercise solution codepad
209 08 Feb 2011 The First Computer Program: Ada Lovelace’s program to compute Bernoulli numbers for Charles Babbage’s Analytical Engine exercise solution codepad
220 18 Mar 2011 Loopy Loops: Print the numbers from 1 to 1000 without using loops or conditionals exercise solution codepad
221 22 Mar 2011 Two Kaprekar Exercises: Kaprekar chains and Kaprekar numbers, from the Indian mathematician Dattaraya Ramchandra Kaprekar exercise solution codepad
249 28 Jun 2011 Big Numbers: Functions: A library for big integers: gcd, powering, square root, random numbers exercise solution codepad
239 24 May 2011 Big Numbers: Getting Started: A library for big integers: representation, comparison, simple functions exercise solution codepad
365 14 Aug 2012 4SUM: Find four numbers in an array that sum to zero exercise solution codepad
450 18 Jun 2013 3SUM: A classic of computer science: find three numbers in an array that sum to zero exercise solution codepad
180 29 Oct 2010 Fibonacci Primes: Find primes among the fibonacci numbers; includes the Park-Miller random number generator and Miller-Rabin primality checker exercise solution codepad
245 14 Jun 2011 Big Numbers: Input And Output: A library for big integers: input and output with radix conversion exercise solution codepad
152 23 Jul 2010 Happy Numbers: Iterating the sum of the squares of the digits terminates with one exercise solution codepad
348 15 Jun 2012 Counting Ones: Count the number of 1-digits in the numbers less than n exercise solution codepad
267 30 Aug 2011 Hamming Numbers: List the numbers with no factors greater than 5, a classic problem popularized by Dijkstra exercise solution codepad
172 01 Oct 2010 Oban Numbers: Numbers that omit the letter “o” when spelled, and a function to convert numbers to words exercise solution codepad
457 16 Jul 2013 Vampire Numbers: Numbers x * y that consist of the digits of x and y exercise solution codepad
331 13 Apr 2012 McNugget Numbers, Revisited: The classic coin problem in disguise, how to count the number of ways to make change exercise solution codepad
169 21 Sep 2010 Kaprekar Numbers: Square the number and add the digits in halves exercise solution codepad
197 28 Dec 2010 Carmichael Numbers: Composite numbers such that an-1 ≡ 1 (mod n) if a is prime to n exercise solution codepad
247 21 Jun 2011 Big Numbers: Testing: A library for big integers: testing exercise solution codepad
181 02 Nov 2010 Emirps: Prime numbers that are prime when their digits are reversed, but not palindromic exercise solution codepad
172 01 Oct 2010 Oban Numbers: Numbers that omit the letter “o” when spelled, and a function to convert numbers to words exercise solution codepad
240 27 May 2011 Upside Up: Numbers that read the same upside down exercise solution codepad
359 24 Jul 2012 Zeckendorf Representation: Find the fibonacci numbers that sum to a given number exercise solution codepad
154 30 Jul 2010 Fibonacci Numbers: Three algorithms taking exponential time, linear time, and logarithmic time exercise solution codepad
210 11 Feb 2011 Sums Of Powers: Use Bernoulli numbers to quickly compute sums of powers exercise solution codepad
172 01 Oct 2010 Oban Numbers: Numbers that omit the letter “o” when spelled, and a function to convert numbers to words exercise solution codepad
110 12 Feb 2010 Sieve of Atkin: A modern alternative to the Sieve of Eratosthenes for computing prime numbers exercise solution codepad
21 03 Apr 2009 Programming the Turing Machine: A turing-machine program to multiply two numbers exercise solution codepad
249 28 Jun 2011 Big Numbers: Functions: A library for big integers: gcd, powering, square root, random numbers exercise solution codepad
366 17 Aug 2012 Two Random Exercises: Two exercises involving random numbers exercise solution codepad
374 14 Sep 2012 Tribonacci Numbers: A variant of fibonacci numbers exercise solution codepad
399 14 Dec 2012 115132219018763992565095597973971522401: Calculate the sequence of narcissistic numbers exercise solution codepad
278 07 Oct 2011 Sieve of Sundaram: Sieving for prime numbers using a method from India exercise solution codepad
228 15 Apr 2011 Partition Numbers: Calculate the partition numbers, using memoization via growing arrays exercise solution codepad
226 08 Apr 2011 Credit Card Validation: Validate decimal numbers using the Luhn algorithm exercise solution codepad
474 17 Sep 2013 Smallest Consecutive Four-Factor Composites: Find consecutive numbers with four factors exercise solution codepad
267 30 Aug 2011 Hamming Numbers: List the numbers with no factors greater than 5, a classic problem popularized by Dijkstra exercise solution codepad
194 17 Dec 2010 Polite Numbers: Write numbers as the sum of two or more consecutive integers exercise solution codepad
457 16 Jul 2013 Vampire Numbers: Numbers x * y that consist of the digits of x and y exercise solution codepad
188 26 Nov 2010 Divisors And Totatives: The number-theoretic functions divisors, numdivs, sumdivs, totatives, and totient exercise solution codepad
375 18 Sep 2012 ABC Conjecture: Demonstrate a recently-proved conjecture of number theory exercise solution codepad
406 08 Jan 2013 Floating Point Rounding: Round a floating point number to a given decimal place exercise solution codepad
192 10 Dec 2010 Two Random Selections: Use random number to select fortunes and lotto winners exercise solution codepad
122 26 Mar 2010 The Next Prime: Efficiently find the next prime number larger than a given number exercise solution codepad
318 28 Feb 2012 Next Greater Permutation Of Digits: Find the smallest number larger than the input number using the same digits as the input number exercise solution codepad
359 24 Jul 2012 Zeckendorf Representation: Find the fibonacci numbers that sum to a given number exercise solution codepad
35 22 May 2009 The Next Palindrome: Find the next palindromic number greater than the input number exercise solution codepad
413 08 Feb 2013 The Biggest Prime: Print all 17-million digits of the largest known prime number exercise solution codepad
318 28 Feb 2012 Next Greater Permutation Of Digits: Find the smallest number larger than the input number using the same digits as the input number exercise solution codepad
418 26 Feb 2013 An Odd Way To Square: Square a number without using multiplication or exponentiation exercise solution codepad
188 26 Nov 2010 Divisors And Totatives: The number-theoretic functions divisors, numdivs, sumdivs, totatives, and totient exercise solution codepad
311 03 Feb 2012 Roman Numeral Puzzle: Count the Roman numerals with no repeated digits exercise solution codepad
13 06 Mar 2009 Roman Numerals: A library to read and write Roman numerals exercise solution codepad
13 06 Mar 2009 Roman Numerals: A library to read and write Roman numerals exercise solution codepad
311 03 Feb 2012 Roman Numeral Puzzle: Count the Roman numerals with no repeated digits exercise solution codepad
305 13 Jan 2012 Excel’s XIRR Function: Numerical calculation of a derivative exercise solution codepad
109 09 Feb 2010   Numerical Integration: Quadrature by the rectangular, trapezoidal and Simpson’s method, including adaptive quadrature exercise solution codepad
1 19 Feb 2009 RPN Calculator: Evaluate numeric expressions at the command line exercise solution codepad
341 18 May 2012 Formatted Numeric Output: A minimal version of C’s printf function exercise solution codepad
172 01 Oct 2010   Oban Numbers: Numbers that omit the letter “o” when spelled, and a function to convert numbers to words exercise solution codepad
58 11 Aug 2009 Uncle Bob’s Bowling Game Kata: Use pattern-matching on lists to solve a classic object-oriented programming exercise exercise solution codepad
389 09 Nov 2012 Taxicab Numbers: Confirm an interesting observation of Srinivasa Ramanujan exercise solution codepad
337 04 May 2012 Even-Odd Partition: Partition an array so all even integers precede all odd integers exercise solution codepad
179 26 Oct 2010 Benford’s Law: A useful mathematical oddity, and an example of text file databases exercise solution codepad
133 04 May 2010 Spectacular Seven: Compute the odds at jai alai exercise solution codepad
486 29 Oct 2013 The 16 Game: Determine the odds in a scratch-off game exercise solution codepad
418 26 Feb 2013 An Odd Way To Square: Square a number without using multiplication or exponentiation exercise solution codepad
164 03 Sep 2010 Data Encryption Standard: Part 2: ECB, CBC, CFB and OFB block modes for DES and other block ciphers exercise solution codepad
171 28 Sep 2010 Maxiphobic Heaps: A priority-queue data structure, similar to leftist heaps, due to Chris Okasaki exercise solution codepad
147 06 Jul 2010 Chaocipher: First look at a ninety-two year old autokey-type cipher exercise solution codepad
256 22 Jul 2011 Counting Primes Using Legendre’s Formula: Recreate Legendre’s two-century old calculation of the number of primes less than a million exercise solution codepad
276 30 Sep 2011 Logarithm Tables: Print old-fashioned tables of logarithms and anti-logarithms exercise solution codepad
142 18 Jun 0 Parsing Command-Line Arguments: An old-style getopt function exercise solution codepad
369 28 Aug 2012 Random Access Lists: A clever data structure that provides O(log n) access to items in a sequential list, along with cons, head and tail exercise solution codepad
77 16 Oct 2009 Growable Arrays: Arrays that grow and shrink at run-time, with O(log n) complexity per operation exercise solution codepad
134 07 May 2010 Integer Logarithms: An improved algorithm is O(log n) instead of O(n) exercise solution codepad
83 06 Nov 2009 Heap Sort: A guaranteed O(log n) sorting method based on priority queues exercise solution codepad
51 17 Jul 2009 International Mathematical Olympiad: Three exercises from 1960s math competitions exercise solution codepad
172 01 Oct 2010 Oban Numbers: Numbers that omit the letter “o” when spelled, and a function to convert numbers to words exercise solution codepad
62 25 Aug 2009 String Search: Knuth-Morris-Pratt: Search for a pattern in a text using an O(n) algorithm exercise solution codepad
370 31 Aug 2012   Once In A Blue Moon: Find months with two full moons exercise solution codepad
436 30 Apr 2013 First Unrepeated Character In A String: Find the first character that appears only once in a string exercise solution codepad
437 03 May 2013 Pairing Students: Create sets of students, each paired to the other only once exercise solution codepad
353 03 Jul 2012 Chopping Words: Form a chain of words by removing letters one at a time exercise solution codepad
349 19 Jun 2012 Digits Of E: Two algorithms that compute the digits of e, one bounded, the other unbounded exercise solution codepad
304 10 Jan 2012 Thirteen Anagram: 12+1=11+2 and “twelve plus one equals eleven plus two” are both anagrams exercise solution codepad
344 01 Jun 2012 Square Roots: Four methods to compute square roots, including one from antiquity exercise solution codepad
427 29 Mar 2013   One Million Hits: Celebrating our one-millionth hit! exercise solution codepad
427 29 Mar 2013 One Million Hits: Celebrating our one-millionth hit! exercise solution codepad
476 24 Sep 2013 Finding Digit Strings In Powers Of Two: A simple exercise from one of the competitive programming sites exercise solution codepad
184 12 Nov 2010 Rowland’s Prime-Generating Function: A sequence of ones and primes exercise solution codepad
348 15 Jun 2012 Counting Ones: Count the number of 1-digits in the numbers less than n exercise solution codepad
317 24 Feb 2012 Remove Characters From A String: Remove from one string any character in a second string exercise solution codepad
187 23 Nov 2010 String Subsets: Determine if one string is a subset of another exercise solution codepad
129 20 Apr 2010 145 Puzzle: Build and evaluate expressions using the digits one through nine and the simple arithmetic operators exercise solution codepad
152 23 Jul 2010 Happy Numbers: Iterating the sum of the squares of the digits terminates with one exercise solution codepad
454 02 Jul 2013 Decoding Text-Speak: Expnd txt wth only intl vwls and n dbld ltrs exercise solution codepad
436 30 Apr 2013 First Unrepeated Character In A String: Find the first character that appears only once in a string exercise solution codepad
437 03 May 2013 Pairing Students: Create sets of students, each paired to the other only once exercise solution codepad
448 11 Jun 2013 Longest Substring Of Two Unique Characters: Longest run of consecutive characters in a string that contains only two unique characters exercise solution codepad
134 07 May 2010 Integer Logarithms: An improved algorithm is O(log n) instead of O(n) exercise solution codepad
368 24 Aug 2012 Hash Tables With Open Addressing: An alternative to hash tables with chaining for collision resolution exercise solution codepad
360 27 Jul 2012 Min Stack: Provide push and pop operations and find the minimum element in linear time exercise solution codepad
151 20 Jul 2010 Solving Systems Of Linear Equations: Matrix operations LU-decomposition and LUP-decomposition exercise solution codepad
143 22 Jun 2010 Matrix Operations: Matrix addition, scalar multiplication, multiplication and transposition exercise solution codepad
77 16 Oct 2009 Growable Arrays: Arrays that grow and shrink at run-time, with O(log n) complexity per operation exercise solution codepad
129 20 Apr 2010 145 Puzzle: Build and evaluate expressions using the digits one through nine and the simple arithmetic operators exercise solution codepad
141 15 Jun 2010 Natural Join: The fundamental relational database operator exercise solution codepad
7 20 Feb 2009 Multiple Dwellings: A simple logic puzzle, solved with the amb non-deterministic operator exercise solution codepad
440 14 May 2013   Optimal Alphabetical Order: Redefine the alphabet to improve alphabetical ordering exercise solution codepad
127 13 Apr 2010 Traveling Salesman: Minimum Spanning Tree: Heuristic guarantees solution within factor of two of optimal tour exercise solution codepad
116 05 Mar 2010 Binary Search Tree: Classic data structure, providing insert, delete and lookup for ordered datatypes exercise solution codepad
462 02 Aug 2013   Ordered Hash Tables: Knuth’s improvement to simple hash tables exercise solution codepad
347 12 Jun 2012   Ordered Maps: A key/value dictionary that supports an ordering relationship exercise solution codepad
347 12 Jun 2012 Ordered Maps: A key/value dictionary that supports an ordering relationship exercise solution codepad
440 14 May 2013 Optimal Alphabetical Order: Redefine the alphabet to improve alphabetical ordering exercise solution codepad
440 14 May 2013 Optimal Alphabetical Order: Redefine the alphabet to improve alphabetical ordering exercise solution codepad
186 19 Nov 2010 Topological Sort: Order the edges of a graph by their precedence relationship exercise solution codepad
263 16 Aug 2011 Insert Into A Cyclic Sorted List: Insert a new element into a cyclic list, in order exercise solution codepad
313 10 Feb 2012 Search In An Ascending Matrix: Find a number in a matrix where both rows and columns are sorted in ascending order exercise solution codepad
56 04 Aug 2009 Lenstra’s Algorithm: Hendrik Lenstra’s original algorithm for elliptic curve factorization exercise solution codepad
291 25 Nov 2011 AVL Trees: Basic implementation of the original balanced-tree algorithm exercise solution codepad
185 16 Nov 2010 RSA Cryptography: The original public-key cryptographic system, still in wide use exercise solution codepad
272 16 Sep 2011 Pollard’s P−1 Factorization Algoritihm, Revisited: An improved second stage that is much faster than the original exercise solution codepad
435 26 Apr 2013 Correct Horse Battery Staple, Improved: Fix a horrible bug in the original version exercise solution codepad
394 27 Nov 2012 Amazon Interview Question: Find the hundred points of a million closest to the origin exercise solution codepad
252 08 Jul 2011 Vedic Divisibility: Use a method of testing divisibility using the method of osculators developed in India exercise solution codepad
164 03 Sep 2010 Data Encryption Standard: Part 2: ECB, CBC, CFB and OFB block modes for DES and other block ciphers exercise solution codepad
437 03 May 2013 Pairing Students: Create sets of students, each paired to the other only once exercise solution codepad
254 15 Jul 2011 JSON: Writing Output: The other side of JSAON exercise solution codepad
310 31 Jan 2012 String Rotation: Determine if two strings are rotations of each other exercise solution codepad
349 19 Jun 2012 Digits Of E: Two algorithms that compute the digits of e, one bounded, the other unbounded exercise solution codepad
295 09 Dec 2011 McNugget Numbers: A simple problem, worked out on a napkin exercise solution codepad
245 14 Jun 2011 Big Numbers: Input And Output: A library for big integers: input and output with radix conversion exercise solution codepad
341 18 May 2012 Formatted Numeric Output: A minimal version of C’s printf function exercise solution codepad
254 15 Jul 2011 JSON: Writing Output: The other side of JSAON exercise solution codepad
245 14 Jun 2011 Big Numbers: Input And Output: A library for big integers: input and output with radix conversion exercise solution codepad
44 23 Jun 2009 The Mod Out System: Expand a series of ranges exercise solution codepad
371 04 Sep 2012 Fountain Codes: Transmit files over a lossy channel exercise solution codepad
342 22 May 2012 Hamming Codes: Send messages over a noisy channel without error exercise solution codepad
444 28 May 2013 Modular Multiplication Without Overflow: Perform modular multiplication without overflowing an integer datatype exercise solution codepad
444 28 May 2013 Modular Multiplication Without Overflow: Perform modular multiplication without overflowing an integer datatype exercise solution codepad
419 01 Mar 2013 Baillie-Wagstaff Pseudoprimality Tester: Primality test, an improvement over the Miller-Rabin test exercise solution codepad
172 01 Oct 2010 Oban Numbers: Numbers that omit the letter “o” when spelled, and a function to convert numbers to words exercise solution codepad
42 16 Jun 2009 Who Owns The Zebra?: A logic puzzle, solved by embedding a Prolog-like logic system in Scheme exercise solution codepad
259 02 Aug 2011 The Nth Prime: The n prime, counting from p1 = 2 exercise solution codepad
138 04 Jun 2010 Williams’ P+1 Factorization Algorithm: A factorization algorithm, similar to Pollard’s p−1 algorithm exercise solution codepad
120 19 Mar 2010 Extending Pollard’s P−1 Factorization Algorithm: Add a second stage to allow larger factorizations exercise solution codepad
52 21 Jul 2009 Pollard’s P−1 Factorization Algorithm: A simple factorization algorithm by John Pollard exercise solution codepad
272 16 Sep 2011 Pollard’s P−1 Factorization Algoritihm, Revisited: An improved second stage that is much faster than the original exercise solution codepad
132 30 Apr 2010 Integer Factorization: Combine trial division, Pollard’s rho and p−1 methods, and elliptic curves into a single factorization program exercise solution codepad
437 03 May 2013 Pairing Students: Create sets of students, each paired to the other only once exercise solution codepad
59 14 Aug 2009   Pairing Heaps: A standard algorithm for maintaining priority queues exercise solution codepad
437 03 May 2013   Pairing Students: Create sets of students, each paired to the other only once exercise solution codepad
332 17 Apr 2012 Twin Primes: A variant of the Sieve of Eratosthenes to find pairs of primes that differ by two exercise solution codepad
480 08 Oct 2013 Functional-Style Linked Lists: A library of functions on functional-style lists made from immutable pairs exercise solution codepad
481 11 Oct 2013 Imperative-Style Linked Lists: A library of functions on imperative-style lists made from mutable pairs exercise solution codepad
35 22 May 2009 The Next Palindrome: Find the next palindromic number greater than the input number exercise solution codepad
176 15 Oct 2010 Find The Longest Palindrome In A String: A beautiful linear-time algorithm due to Johan Jeuring exercise solution codepad
35 22 May 2009 The Next Palindrome: Find the next palindromic number greater than the input number exercise solution codepad
181 02 Nov 2010 Emirps: Prime numbers that are prime when their digits are reversed, but not palindromic exercise solution codepad
79 23 Oct 2009 Mr. S. and Mr. P.: A logic puzzle popularized by John McCarthy exercise solution codepad
22 07 Apr 2009 Flipping Pancakes: A sorting method analyzed by Bill Gates exercise solution codepad
386 30 Oct 2012   Pandigital Numbers: Find sums that include all ten digits exercise solution codepad
280 18 Oct 2011 The Wall: Ray Panko’s spreadsheet exercise exercise solution codepad
381 12 Oct 2012 Birthday Paradox: Use simulation to demonstrate the birthday paradox exercise solution codepad
381 12 Oct 2012 Birthday Paradox: Use simulation to demonstrate the birthday paradox exercise solution codepad
74 06 Oct 2009 MapReduce: Google’s famous system for parallelizing computations expressed as a programming idiom exercise solution codepad
130 23 Apr 2010 Modern Elliptic Curve Factorization, Part 1: Elliptic arithmetic using Montgomery’s parameterization exercise solution codepad
131 27 Apr 2010 Modern Elliptic Curve Factorization, Part 2: Elliptic arithmetic using Montgomery’s parameterization exercise solution codepad
335 27 Apr 2012 Trabb Pardo Knuth Algorithm: Trivial algorithm, used to explore an unfamiliar language exercise solution codepad
128 16 Apr 2010 Expression Evaluation: Parse and evaluate an arithmetic expression with plus, minus, times, divide and parentheses exercise solution codepad
180 29 Oct 2010 Fibonacci Primes: Find primes among the fibonacci numbers; includes the Park-Miller random number generator and Miller-Rabin primality checker exercise solution codepad
96 22 Dec 2009 Permuted Index: David Parnas’ classic deconstruction of the keyword-in-context index exercise solution codepad
11 27 Feb 2009 Mark V. Shaney: Generate parodies of a text using a Markov chain exercise solution codepad
128 16 Apr 2010 Expression Evaluation: Parse and evaluate an arithmetic expression with plus, minus, times, divide and parentheses exercise solution codepad
253 12 Jul 2011 JSON: Parsing Input: Parse JSON input exercise solution codepad
68 15 Sep 2009 Regular Expressions, Part 1: A parser for regular expressions exercise solution codepad
358 20 Jul 2012 Infix Expression Evaluation: Write a parser to evaluate arithmetic expressions exercise solution codepad
142 18 Jun 0   Parsing Command-Line Arguments: An old-style getopt function exercise solution codepad
253 12 Jul 2011 JSON: Parsing Input: Parse JSON input exercise solution codepad
68 15 Sep 2009 Regular Expressions, Part 1: A parser for regular expressions exercise solution codepad
163 31 Aug 2010 Data Encryption Standard: Part 1: Basic block enciphering and deciphering using DES exercise solution codepad
441 17 May 2013 Coin Change, Part 1: Classic problem to count the ways to make change exercise solution codepad
130 23 Apr 2010 Modern Elliptic Curve Factorization, Part 1: Elliptic arithmetic using Montgomery’s parameterization exercise solution codepad
350 22 Jun 2012 Billboard Challenge, Part 1: First part of a Google recruiting challenge exercise solution codepad
177 19 Oct 2010 Text File Databases: Part 1: Functions to read records with fields in various formats exercise solution codepad
167 14 Sep 2010 The Factorization Of F7: Part 1: Our fortieth anniversary celebration of Morrison and Brillhart’s method of integer factorization by continued fractions exercise solution codepad
86 17 Nov 2009 Master Mind, Part 1: Referee a two-player game of deductive logic exercise solution codepad
378 02 Oct 2012 AKS Primality Prover, Part 1: Two functions used by the AKS primality prover exercise solution codepad
361 31 Jul 2012 SEND + MORE = MONEY, Part 1: Two slow solutions to a classic problem of recreational mathematics exercise solution codepad
442 21 May 2013 Coin Change, Part 2: A variant on the classic coin change problem exercise solution codepad
164 03 Sep 2010 Data Encryption Standard: Part 2: ECB, CBC, CFB and OFB block modes for DES and other block ciphers exercise solution codepad
131 27 Apr 2010 Modern Elliptic Curve Factorization, Part 2: Elliptic arithmetic using Montgomery’s parameterization exercise solution codepad
168 17 Sep 2010 The Factorization Of F7: Part 2: Our fortieth anniversary celebration of Morrison and Brillhart’s method of integer factorization by continued fractions exercise solution codepad
351 26 Jun 2012 Billboard Challenge, Part 2: Second part of a Google recruiting challenge exercise solution codepad
87 20 Nov 2009 Master Mind, Part 2: Solve a Master Mind puzzle in five probes or less exercise solution codepad
69 18 Sep 2009 Regular Expressions, Part 2: The corresponding matcher exercise solution codepad
379 05 Oct 2012 AKS Primality Prover, Part 2: The primality prover of Agrawal, Kayal and Saxena exercise solution codepad
362 03 Aug 2012 SEND + MORE = MONEY, Part 2: Two hill-climbing solutions to a classic problem of recreational mathematics exercise solution codepad
178 22 Oct 2010 Text File Databases: Part 2: Various functions to process records with fields exercise solution codepad
443 24 May 2013 Coin Change, Part 3: Another variant on the classic coin change problem exercise solution codepad
70 22 Sep 2009 Regular Expressions, Part 3: A regular expression test suite exercise solution codepad
165 07 Sep 2010 Data Encryption Standard: Part 3: Triple DES and cryptographic hashing exercise solution codepad
166 10 Sep 2010 Data Encryption Standard: Part 4: DES driver program exercise solution codepad
377 28 Sep 2012 Pocklington’s N−1 Primality Prover: Prove n prime if n−1 can be partially factored exercise solution codepad
288 15 Nov 2011 Phil Harvey’s Puzle: partition {1,…,16} into two sets of equal size so each subset has the same sum, sum of squares and sum of cubes exercise solution codepad
337 04 May 2012 Even-Odd Partition: Partition an array so all even integers precede all odd integers exercise solution codepad
228 15 Apr 2011   Partition Numbers: Calculate the partition numbers, using memoization via growing arrays exercise solution codepad
228 15 Apr 2011 Partition Numbers: Calculate the partition numbers, using memoization via growing arrays exercise solution codepad
337 04 May 2012 Even-Odd Partition: Partition an array so all even integers precede all odd integers exercise solution codepad
383 19 Oct 2012 Prime Partitions: Compute the number of ways to sum primes to a target exercise solution codepad
339 11 May 2012   partitions: Sets of integers that sum to a given integer exercise solution codepad
124 02 Apr 2010 Disjoint Sets: A data structure for storing sets of items in disjoint partitions exercise solution codepad
350 22 Jun 2012 Billboard Challenge, Part 1: First part of a Google recruiting challenge exercise solution codepad
351 26 Jun 2012 Billboard Challenge, Part 2: Second part of a Google recruiting challenge exercise solution codepad
91 04 Dec 2009 Autokey: A cipher in which the input text forms part of the key exercise solution codepad
294 06 Dec 2011   Pascal’s Triangle: Display the binomial coefficients exercise solution codepad
123 30 Mar 2010   Passover: Calculate the dates of the Jewish holidays Rosh Hashanah and Passover exercise solution codepad
123 30 Mar 2010 Passover: Calculate the dates of the Jewish holidays Rosh Hashanah and Passover exercise solution codepad
434 23 Apr 2013 Correct Horse Battery Staple: Randall Munro’s passphrase generator exercise solution codepad
119 16 Mar 2010 Traveling Salesman: Nearest Neighbor: A greedy heuristic that builds a path by always choosing the nearest unvisited point exercise solution codepad
465 13 Aug 2013 Unix Paths: Convert relative Unix path to absolute, by Robert Fisher exercise solution codepad
307 20 Jan 2012 Knights On A Keypad: Count the number of knight paths on a keypad exercise solution codepad
465 13 Aug 2013 Unix Paths: Convert relative Unix path to absolute, by Robert Fisher exercise solution codepad
199 04 Jan 2011 Dijkstra’s Algorithm: Find the shortest path to all vertices of a graph from a single source, guest written by Graham Enos exercise solution codepad
61 21 Aug 2009 String Search: Brute Force: Search for a pattern in a text by comparing the pattern to the text at all possible positions exercise solution codepad
63 28 Aug 2009 String Search: Boyer-Moore: Search for a pattern in a text using a fast and simple algorithm exercise solution codepad
62 25 Aug 2009 String Search: Knuth-Morris-Pratt: Search for a pattern in a text using an O(n) algorithm exercise solution codepad
58 11 Aug 2009 Uncle Bob’s Bowling Game Kata: Use pattern-matching on lists to solve a classic object-oriented programming exercise exercise solution codepad
61 21 Aug 2009 String Search: Brute Force: Search for a pattern in a text by comparing the pattern to the text at all possible positions exercise solution codepad
111 16 Feb 2010 Soundex: An algorithm to assign people’s last names to equivalence classes based on similar spelling exercise solution codepad
322 13 Mar 2012   Perfect Power Predicate: Given a positive integer n, determine if there exists a b and e for which be = n exercise solution codepad
325 23 Mar 2012 Base-26 Arithmetic: Perform arithmetic on integers represented as strings of letters exercise solution codepad
37 29 May 2009 Double Transposition Cipher: A simple and effective cipher, easy to perform by hand exercise solution codepad
48 07 Jul 2009 Modular Arithmetic: A function library for performing modular addition, subtraction, multiplication, division, and square root exercise solution codepad
444 28 May 2013 Modular Multiplication Without Overflow: Perform modular multiplication without overflowing an integer datatype exercise solution codepad
270 09 Sep 2011 Mersenne Twister: Random number generator with very long period, useful for simulations exercise solution codepad
477 27 Sep 2013 Double-Ended Priority Queues: Priority queues that permit access at both ends exercise solution codepad
318 28 Feb 2012 Next Greater Permutation Of Digits: Find the smallest number larger than the input number using the same digits as the input number exercise solution codepad
117 09 Mar 2010 Lexicographic Permutations: Continually generate the next permutation using an algorithm by Dijkstra exercise solution codepad
78 20 Oct 2009 Shuffle: Create random permutations of an array or linked list exercise solution codepad
118 12 Mar 2010 Traveling Salesman: Brute Force: Examine all possible permutations to find the least-cost tour exercise solution codepad
117 09 Mar 2010 Lexicographic Permutations: Continually generate the next permutation using an algorithm by Dijkstra exercise solution codepad
96 22 Dec 2009   Permuted Index: David Parnas’ classic deconstruction of the keyword-in-context index exercise solution codepad
148 09 Jul 2010 Contents: Permuted Table Of Contents: Blog management exercise solution codepad
470 30 Aug 2013 BMI Calculator: Calculate a person’s body mass index exercise solution codepad
485 25 Oct 2013   Pessimal Algorithms And Simplexity Analysis: The slowsort algorithm using the multiply and surrender algorithms exercise solution codepad
400 18 Dec 2012   Petals Around The Rose: A game to celebrate our 400th exercise exercise solution codepad
97 29 Dec 2009 A Statisticle Speling Korrecter: Peter Norvig’s version of the Google spelling suggester exercise solution codepad
104 22 Jan 2010   Phases Of The Moon: Calculate the number of days since the last new moon exercise solution codepad
288 15 Nov 2011   Phil Harvey’s Puzle: partition {1,…,16} into two sets of equal size so each subset has the same sum, sum of squares and sum of cubes exercise solution codepad
46 30 Jun 2009 Steve Yegge’s Phone-Screen Coding Exercises: A simple set of programming exercises based on a blog entry by Steve Yegge exercise solution codepad
309 27 Jan 2012 Anagram Phrases: “Gin grammar prop six” is an anagram for “Programming Praxis” exercise solution codepad
449 14 Jun 2013 The Digits of Pi, Again: Chudnovsky’s algorithm for the digits of pi exercise solution codepad
258 29 Jul 2011 Approximating Pi: Approximating pi with the logarithmic integral and Riemann’s R function exercise solution codepad
8 20 Feb 2009 The Digits of Pi: A spigot algorithm to calculate the digits of pi exercise solution codepad
75 09 Oct 2009 Calculating Pi: Calculate the value of π by monte-carlo methods and by an Archimedean method exercise solution codepad
75 09 Oct 2009 Calculating Pi: Calculate the value of π by monte-carlo methods and by an Archimedean method exercise solution codepad
262 12 Aug 2011 Word Breaks: Insert spaces between words: applepie => apple pie exercise solution codepad
38 02 Jun 2009   Pig Latin: A simple exercise to solve a children’s game exercise solution codepad
67 11 Sep 2009 Beautiful Code: A simple regular-expression matcher by Rob Pike exercise solution codepad
14 10 Mar 2009 Word Frequencies: Our interpretation of a problem solved by a classic unix pipeline exercise solution codepad
449 14 Jun 2013 The Digits of Pi, Again: Chudnovsky’s algorithm for the digits of pi exercise solution codepad
8 20 Feb 2009 The Digits of Pi: A spigot algorithm to calculate the digits of pi exercise solution codepad
423 15 Mar 2013 Buffon’s Needle: Compute the value of π with a simulation exercise solution codepad
258 29 Jul 2011 Approximating Pi: Approximating pi with the logarithmic integral and Riemann’s R function exercise solution codepad
406 08 Jan 2013 Floating Point Rounding: Round a floating point number to a given decimal place exercise solution codepad
103 19 Jan 2010 Flight Planning: Computing the navigation triangle, by Jos Koot exercise solution codepad
283 28 Oct 2011 Crypt: Simple encryption tool from Kernighan and Plauger exercise solution codepad
47 03 Jul 2009 The Playfair Cipher: A classic military field cipher exercise solution codepad
203 18 Jan 2011 Solitaire Cipher: Bruce Schneier’s strong cryptography based on a deck of playing cards exercise solution codepad
128 16 Apr 2010 Expression Evaluation: Parse and evaluate an arithmetic expression with plus, minus, times, divide and parentheses exercise solution codepad
304 10 Jan 2012 Thirteen Anagram: 12+1=11+2 and “twelve plus one equals eleven plus two” are both anagrams exercise solution codepad
304 10 Jan 2012 Thirteen Anagram: 12+1=11+2 and “twelve plus one equals eleven plus two” are both anagrams exercise solution codepad
377 28 Sep 2012   Pocklington’s N−1 Primality Prover: Prove n prime if n−1 can be partially factored exercise solution codepad
334 24 Apr 2012 Rhyming Dictionary: Find rhyming words for poets exercise solution codepad
406 08 Jan 2013 Floating Point Rounding: Round a floating point number to a given decimal place exercise solution codepad
406 08 Jan 2013 Floating Point Rounding: Round a floating point number to a given decimal place exercise solution codepad
466 16 Aug 2013 Monkey Grid Puzzle: How many points can the monkey access? exercise solution codepad
405 02 Jan 2013 Four Points Determine A Square: Determine if four given points form a square exercise solution codepad
405 02 Jan 2013 Four Points Determine A Square: Determine if four given points form a square exercise solution codepad
408 18 Jan 2013 Triangle Trilemma: Determine if three points form a triangle, and classify it exercise solution codepad
394 27 Nov 2012 Amazon Interview Question: Find the hundred points of a million closest to the origin exercise solution codepad
119 16 Mar 2010 Traveling Salesman: Nearest Neighbor: A greedy heuristic that builds a path by always choosing the nearest unvisited point exercise solution codepad
121 23 Mar 2010 Texas Hold ‘Em: Find the best poker hand exercise solution codepad
194 17 Dec 2010   Polite Numbers: Write numbers as the sum of two or more consecutive integers exercise solution codepad
204 21 Jan 0   Pollard Rho, Revisited: Richard Brent’s variant of John Pollard’s rho algorithm for integer factorization exercise solution codepad
138 04 Jun 2010 Williams’ P+1 Factorization Algorithm: A factorization algorithm, similar to Pollard’s p−1 algorithm exercise solution codepad
120 19 Mar 2010 Extending Pollard’s P−1 Factorization Algorithm: Add a second stage to allow larger factorizations exercise solution codepad
52 21 Jul 2009   Pollard’s P−1 Factorization Algorithm: A simple factorization algorithm by John Pollard exercise solution codepad
272 16 Sep 2011   Pollard’s P−1 Factorization Algoritihm, Revisited: An improved second stage that is much faster than the original exercise solution codepad
204 21 Jan 0 Pollard Rho, Revisited: Richard Brent’s variant of John Pollard’s rho algorithm for integer factorization exercise solution codepad
43 19 Jun 2009 Monte Carlo Factorization: Integer factorization via Pollard’s rho algorithm exercise solution codepad
132 30 Apr 2010 Integer Factorization: Combine trial division, Pollard’s rho and p−1 methods, and elliptic curves into a single factorization program exercise solution codepad
52 21 Jul 2009 Pollard’s P−1 Factorization Algorithm: A simple factorization algorithm by John Pollard exercise solution codepad
106 29 Jan 2010 Straddling Checkerboard: An alternative to the Polybius square for ciphers that must convert letters to digits exercise solution codepad
451 21 Jun 2013 Multiple Polynomial Quadratic Sieve: A greatly improved version of the basic quadratic sieve exercise solution codepad
360 27 Jul 2012 Min Stack: Provide push and pop operations and find the minimum element in linear time exercise solution codepad
285 04 Nov 2011 Craps: Simulate a popular game of gambling with dice exercise solution codepad
267 30 Aug 2011 Hamming Numbers: List the numbers with no factors greater than 5, a classic problem popularized by Dijkstra exercise solution codepad
79 23 Oct 2009 Mr. S. and Mr. P.: A logic puzzle popularized by John McCarthy exercise solution codepad
260 05 Aug 2011 Ninety-Nine Bottles Of Beer: The popular song exercise solution codepad
36 26 May 2009 Word Search Solver: A computerized implementation of a popular time-waster exercise solution codepad
206 28 Jan 2011   Population Count: Count the number of set bits (1-bits) in the binary representation of an integer exercise solution codepad
90 01 Dec 2009 Wolves And Rabbits: Analyze population dynamics using the Lotka-Volterra equations exercise solution codepad
135 25 May 2010 GB_FLIP: Donald Knuth’s portable, high-quality random-number generator from the Stanford Graphbase exercise solution codepad
66 08 Sep 2009 Porter Stemming: Martin Porter’s algorithm for removing suffices from word stems exercise solution codepad
66 08 Sep 2009   Porter Stemming: Martin Porter’s algorithm for removing suffices from word stems exercise solution codepad
61 21 Aug 2009 String Search: Brute Force: Search for a pattern in a text by comparing the pattern to the text at all possible positions exercise solution codepad
322 13 Mar 2012 Perfect Power Predicate: Given a positive integer n, determine if there exists a b and e for which be = n exercise solution codepad
340 15 May 2012 Streaming Knapsack: Find first possible combination from a stream that sums to a given integer exercise solution codepad
118 12 Mar 2010 Traveling Salesman: Brute Force: Examine all possible permutations to find the least-cost tour exercise solution codepad
61 21 Aug 2009 String Search: Brute Force: Search for a pattern in a text by comparing the pattern to the text at all possible positions exercise solution codepad
483 18 Oct 2013 Binary Tree Traversal: Traverse a binary tree in pre-order and post-order exercise solution codepad
299 23 Dec 2011 Koch’s Snowflake: Draw a fractal snowflake using PostScript exercise solution codepad
302 03 Jan 2012 Turtle Graphics: A minimal library of turtle graphics, as in the Logo language, implemented in PostScript exercise solution codepad
424 19 Mar 2013 Quadratic Sieve: Basic version of a powerful factoring algorithm exercise solution codepad
156 06 Aug 2010 Two Powering Predicates: Determine if a number is a square or a prime power exercise solution codepad
249 28 Jun 2011 Big Numbers: Functions: A library for big integers: gcd, powering, square root, random numbers exercise solution codepad
322 13 Mar 2012 Perfect Power Predicate: Given a positive integer n, determine if there exists a b and e for which be = n exercise solution codepad
476 24 Sep 2013 Finding Digit Strings In Powers Of Two: A simple exercise from one of the competitive programming sites exercise solution codepad
210 11 Feb 2011 Sums Of Powers: Use Bernoulli numbers to quickly compute sums of powers exercise solution codepad
210 11 Feb 2011 Sums Of Powers: Use Bernoulli numbers to quickly compute sums of powers exercise solution codepad
156 06 Aug 2010 Two Powering Predicates: Determine if a number is a square or a prime power exercise solution codepad
364 10 Aug 2012 Minimum Scalar Product: A simple exercise from the practice round of Google Code Jam 2008 exercise solution codepad
286 08 Nov 2011 Improved Standard Continuation: An improved version of elliptic curve factorization, widely used in current practice exercise solution codepad
309 27 Jan 2012 Anagram Phrases: “Gin grammar prop six” is an anagram for “Programming Praxis” exercise solution codepad
337 04 May 2012 Even-Odd Partition: Partition an array so all even integers precede all odd integers exercise solution codepad
186 19 Nov 2010 Topological Sort: Order the edges of a graph by their precedence relationship exercise solution codepad
414 12 Feb 2013 Binary Search Tree: In-Order Predecessor And Successor: Find the previous and next items in a tree exercise solution codepad
322 13 Mar 2012 Perfect Power Predicate: Given a positive integer n, determine if there exists a b and e for which be = n exercise solution codepad
156 06 Aug 2010 Two Powering Predicates: Determine if a number is a square or a prime power exercise solution codepad
483 18 Oct 2013 Binary Tree Traversal: Traverse a binary tree in pre-order and post-order exercise solution codepad
414 12 Feb 2013 Binary Search Tree: In-Order Predecessor And Successor: Find the previous and next items in a tree exercise solution codepad
403 28 Dec 2012 Three Wise Men: Find the prices of their gifts exercise solution codepad
107 02 Feb 2010 Proving Primality: A deterministic, not probabilistic, method of checking primality exercise solution codepad
29 01 May 2009 Primality Checking: A probabilistic primality checker by Gary Miller and Michael Rabin exercise solution codepad
180 29 Oct 2010 Fibonacci Primes: Find primes among the fibonacci numbers; includes the Park-Miller random number generator and Miller-Rabin primality checker exercise solution codepad
29 01 May 2009   Primality Checking: A probabilistic primality checker by Gary Miller and Michael Rabin exercise solution codepad
105 26 Jan 2010   Primality Checking, Revisited: The Baillie-Wagstaff algorithm for primality checking exercise solution codepad
105 26 Jan 2010 Primality Checking, Revisited: The Baillie-Wagstaff algorithm for primality checking exercise solution codepad
379 05 Oct 2012 AKS Primality Prover, Part 2: The primality prover of Agrawal, Kayal and Saxena exercise solution codepad
378 02 Oct 2012 AKS Primality Prover, Part 1: Two functions used by the AKS primality prover exercise solution codepad
379 05 Oct 2012 AKS Primality Prover, Part 2: The primality prover of Agrawal, Kayal and Saxena exercise solution codepad
377 28 Sep 2012 Pocklington’s N−1 Primality Prover: Prove n prime if n−1 can be partially factored exercise solution codepad
378 02 Oct 2012 AKS Primality Prover, Part 1: Two functions used by the AKS primality prover exercise solution codepad
419 01 Mar 2013 Baillie-Wagstaff Pseudoprimality Tester: Primality test, an improvement over the Miller-Rabin test exercise solution codepad
390 13 Nov 2012 Frobenius Primality Test: A pseudoprimality test, stronger than Miller-Rabin exercise solution codepad
107 02 Feb 2010 Proving Primality: A deterministic, not probabilistic, method of checking primality exercise solution codepad
251 05 Jul 2011 Big Numbers: Examples: A library for big integers: display factorials to 50, determine if a number is prime, and compute its prime factors exercise solution codepad
259 02 Aug 2011 The Nth Prime: The n prime, counting from p1 = 2 exercise solution codepad
200 07 Jan 2011 Counting Primes: The prime counting function and nth-prime function exercise solution codepad
257 26 Jul 2011 More Prime-Counting Functions: Prime counting functions by Meissel and Lehmer, based on Legendre’s sum exercise solution codepad
257 26 Jul 2011 More Prime-Counting Functions: Prime counting functions by Meissel and Lehmer, based on Legendre’s sum exercise solution codepad
122 26 Mar 2010 The Next Prime: Efficiently find the next prime number larger than a given number exercise solution codepad
251 05 Jul 2011 Big Numbers: Examples: A library for big integers: display factorials to 50, determine if a number is prime, and compute its prime factors exercise solution codepad
184 12 Nov 2010 Rowland’s Prime-Generating Function: A sequence of ones and primes exercise solution codepad
373 11 Sep 2012 The Sum Of The First Billion Primes: Write a prime generator, and use it exercise solution codepad
377 28 Sep 2012 Pocklington’s N−1 Primality Prover: Prove n prime if n−1 can be partially factored exercise solution codepad
122 26 Mar 2010 The Next Prime: Efficiently find the next prime number larger than a given number exercise solution codepad
24 14 Apr 2009 Google Treasure Hunt 2008 Puzzle 4: A prime-number puzzle exercise solution codepad
469 27 Aug 2013 Two Sieving Problems: Use sieves to answer two prime-number questions exercise solution codepad
181 02 Nov 2010 Emirps: Prime numbers that are prime when their digits are reversed, but not palindromic exercise solution codepad
110 12 Feb 2010 Sieve of Atkin: A modern alternative to the Sieve of Eratosthenes for computing prime numbers exercise solution codepad
278 07 Oct 2011 Sieve of Sundaram: Sieving for prime numbers using a method from India exercise solution codepad
413 08 Feb 2013 The Biggest Prime: Print all 17-million digits of the largest known prime number exercise solution codepad
383 19 Oct 2012   Prime Partitions: Compute the number of ways to sum primes to a target exercise solution codepad
201 11 Jan 2011 Two Integrals: The exponential and logarithmic integral, and an approximation for prime-pi exercise solution codepad
156 06 Aug 2010 Two Powering Predicates: Determine if a number is a square or a prime power exercise solution codepad
413 08 Feb 2013 The Biggest Prime: Print all 17-million digits of the largest known prime number exercise solution codepad
180 29 Oct 2010 Fibonacci Primes: Find primes among the fibonacci numbers; includes the Park-Miller random number generator and Miller-Rabin primality checker exercise solution codepad
212 18 Feb 2011 Two Factoring Games: Home primes and the Euclid-Mullin sequence exercise solution codepad
428 02 Apr 2013 Quadratic Sieve With Large Primes: A (slightly) improved version of the basic quadratic sieve exercise solution codepad
332 17 Apr 2012 Twin Primes: A variant of the Sieve of Eratosthenes to find pairs of primes that differ by two exercise solution codepad
401 21 Dec 2012 Building Primes: Build the largest prime with all right-most subsequences also prime exercise solution codepad
279 14 Oct 2011 The First N Primes: Embedding the Sieve of Eratosthenes in a priority queue instead of an array exercise solution codepad
180 29 Oct 2010 Fibonacci Primes: Find primes among the fibonacci numbers; includes the Park-Miller random number generator and Miller-Rabin primality checker exercise solution codepad
256 22 Jul 2011 Counting Primes Using Legendre’s Formula: Recreate Legendre’s two-century old calculation of the number of primes less than a million exercise solution codepad
242 03 Jun 2011 Mersenne Primes: The Lucas-Lehmer test for identifying primes of the form 2n−1 exercise solution codepad
463 06 Aug 2013 Sophie Germain Primes: Primes p such that 2p+1 is also prime exercise solution codepad
463 06 Aug 2013 Sophie Germain Primes: Primes p such that 2p+1 is also prime exercise solution codepad
332 17 Apr 2012 Twin Primes: A variant of the Sieve of Eratosthenes to find pairs of primes that differ by two exercise solution codepad
242 03 Jun 2011 Mersenne Primes: The Lucas-Lehmer test for identifying primes of the form 2n−1 exercise solution codepad
200 07 Jan 2011 Counting Primes: The prime counting function and nth-prime function exercise solution codepad
383 19 Oct 2012 Prime Partitions: Compute the number of ways to sum primes to a target exercise solution codepad
115 02 Mar 2010 Goldbach’s Conjecture: Every even number greater than two can be written as the sum of two primes exercise solution codepad
184 12 Nov 2010 Rowland’s Prime-Generating Function: A sequence of ones and primes exercise solution codepad
214 25 Feb 2011 Sieve Of Euler: An alternate, and slow, method of sieving for primes exercise solution codepad
256 22 Jul 2011 Counting Primes Using Legendre’s Formula: Recreate Legendre’s two-century old calculation of the number of primes less than a million exercise solution codepad
373 11 Sep 2012 The Sum Of The First Billion Primes: Write a prime generator, and use it exercise solution codepad
259 02 Aug 2011 The Nth Prime: The n prime, counting from p1 = 2 exercise solution codepad
197 28 Dec 2010 Carmichael Numbers: Composite numbers such that an-1 ≡ 1 (mod n) if a is prime to n exercise solution codepad
401 21 Dec 2012 Building Primes: Build the largest prime with all right-most subsequences also prime exercise solution codepad
463 06 Aug 2013 Sophie Germain Primes: Primes p such that 2p+1 is also prime exercise solution codepad
181 02 Nov 2010 Emirps: Prime numbers that are prime when their digits are reversed, but not palindromic exercise solution codepad
401 21 Dec 2012 Building Primes: Build the largest prime with all right-most subsequences also prime exercise solution codepad
231 26 Apr 2011 Miscellanea: FizzBuzz, Prime Words, and Split A List exercise solution codepad
385 26 Oct 2012 Pythatorean Triples: Generate primitive pythagorean triples by an ancient algorithm exercise solution codepad
126 09 Apr 2010 Minimum Spanning Tree: Prim’s Algorithm: Find the minimum-cost tree that includes all the nodes in a graph exercise solution codepad
413 08 Feb 2013 The Biggest Prime: Print all 17-million digits of the largest known prime number exercise solution codepad
225 05 Apr 2011 Fortune: Print a random aphorism from a file exercise solution codepad
32 12 May 2009 Loan Amortization: Calculate and print a simple loan amortization table exercise solution codepad
98 01 Jan 2010 Cal: Print a twelve-month calendar exercise solution codepad
341 18 May 2012 Formatted Numeric Output: A minimal version of C’s printf function exercise solution codepad
136 28 May 2010   Printing Files: A simple program to list files, similar to the unix pr program exercise solution codepad
276 30 Sep 2011 Logarithm Tables: Print old-fashioned tables of logarithms and anti-logarithms exercise solution codepad
220 18 Mar 2011 Loopy Loops: Print the numbers from 1 to 1000 without using loops or conditionals exercise solution codepad
346 08 Jun 2012 Cat: The Unix V7 utility to catenate and print exercise solution codepad
171 28 Sep 2010 Maxiphobic Heaps: A priority-queue data structure, similar to leftist heaps, due to Chris Okasaki exercise solution codepad
30 05 May 2009 Priority Queues: A simple library implementation of the priority queue data structure exercise solution codepad
279 14 Oct 2011 The First N Primes: Embedding the Sieve of Eratosthenes in a priority queue instead of an array exercise solution codepad
30 05 May 2009   Priority Queues: A simple library implementation of the priority queue data structure exercise solution codepad
410 25 Jan 2013 Imperative Heaps: The classing implementation of priority queues embedded in an array exercise solution codepad
477 27 Sep 2013 Double-Ended Priority Queues: Priority queues that permit access at both ends exercise solution codepad
477 27 Sep 2013 Double-Ended Priority Queues: Priority queues that permit access at both ends exercise solution codepad
345 05 Jun 2012 Binomial Heaps: Another algorithm for maintaining priority queues exercise solution codepad
409 22 Jan 2013 Splay Heaps: Yet another implementation of priority queues exercise solution codepad
59 14 Aug 2009 Pairing Heaps: A standard algorithm for maintaining priority queues exercise solution codepad
83 06 Nov 2009 Heap Sort: A guaranteed O(log n) sorting method based on priority queues exercise solution codepad
303 06 Jan 2012   Pritchard’s Wheel Sieve: An alternative to the Sieve of Eratosthenes with a faster asymptotic time complexity exercise solution codepad
107 02 Feb 2010 Proving Primality: A deterministic, not probabilistic, method of checking primality exercise solution codepad
29 01 May 2009 Primality Checking: A probabilistic primality checker by Gary Miller and Michael Rabin exercise solution codepad
26 21 Apr 2009 Probabilistic Spell Checking: A probabilistic spell-checker based on a Bloom filter exercise solution codepad
26 21 Apr 2009   Probabilistic Spell Checking: A probabilistic spell-checker based on a Bloom filter exercise solution codepad
53 24 Jul 2009 Let’s Make A Deal!: Simulate a tricky probability calculation exercise solution codepad
3 19 Feb 2009 Bingo: Calculate the probability of winning at Bingo exercise solution codepad
87 20 Nov 2009 Master Mind, Part 2: Solve a Master Mind puzzle in five probes or less exercise solution codepad
261 09 Aug 2011 Hett’s Problem 1.28: Sorting a list of lists according to length of sublists exercise solution codepad
397 07 Dec 2012 Wirth Problem 15.12: Compute a sequence of numbers defined by Wirth exercise solution codepad
415 15 Feb 2013 Facebook Hacker Cup 2013, Round 1, Problem 1: Count the ways to win a card game exercise solution codepad
273 20 Sep 2011 Project Euler Problem 3: Thorough explanation of integer factorization by trial division exercise solution codepad
155 03 Aug 2010 Carl Hewitt’s Same-Fringe Problem: Do two trees have the same leaves, solved with streams (lazy lists) exercise solution codepad
72 29 Sep 2009 Green Eyes: A counting problem from high-school math exercise solution codepad
323 16 Mar 2012 Sum Of Squares Of Two Largest Of Three Values: A simple problem from SICP with a variety of solutions exercise solution codepad
331 13 Apr 2012 McNugget Numbers, Revisited: The classic coin problem in disguise, how to count the number of ways to make change exercise solution codepad
361 31 Jul 2012 SEND + MORE = MONEY, Part 1: Two slow solutions to a classic problem of recreational mathematics exercise solution codepad
362 03 Aug 2012 SEND + MORE = MONEY, Part 2: Two hill-climbing solutions to a classic problem of recreational mathematics exercise solution codepad
293 02 Dec 2011 Knight Rider: Classic problem of the knight’s tour exercise solution codepad
398 11 Dec 2012 Stepwise Program Development: A Heuristic Algorithm: A backtracking solution to a problem of Wirth exercise solution codepad
267 30 Aug 2011 Hamming Numbers: List the numbers with no factors greater than 5, a classic problem popularized by Dijkstra exercise solution codepad
484 22 Oct 2013 David Gries’ Coffee Can Problem: Simulate the process of extracting beans from a coffee can exercise solution codepad
14 10 Mar 2009 Word Frequencies: Our interpretation of a problem solved by a classic unix pipeline exercise solution codepad
469 27 Aug 2013 Two Sieving Problems: Use sieves to answer two prime-number questions exercise solution codepad
441 17 May 2013 Coin Change, Part 1: Classic problem to count the ways to make change exercise solution codepad
327 30 Mar 2012 Subset Sum, Meet In The Middle: An improved solution to the classic NP problem exercise solution codepad
442 21 May 2013 Coin Change, Part 2: A variant on the classic coin change problem exercise solution codepad
443 24 May 2013 Coin Change, Part 3: Another variant on the classic coin change problem exercise solution codepad
326 27 Mar 2012 Subset Sum: Solve a classic NP problem using dynamic programming exercise solution codepad
295 09 Dec 2011 McNugget Numbers: A simple problem, worked out on a napkin exercise solution codepad
484 22 Oct 2013 David Gries’ Coffee Can Problem: Simulate the process of extracting beans from a coffee can exercise solution codepad
178 22 Oct 2010 Text File Databases: Part 2: Various functions to process records with fields exercise solution codepad
364 10 Aug 2012 Minimum Scalar Product: A simple exercise from the practice round of Google Code Jam 2008 exercise solution codepad
472 06 Sep 2013 Cartesian Product: Cross-product of the items in a variable-length list of variable-length lists exercise solution codepad
145 29 Jun 2010 World Cup Prognostication: Simulate the knockout stage using elo ratings exercise solution codepad
209 08 Feb 2011 The First Computer Program: Ada Lovelace’s program to compute Bernoulli numbers for Charles Babbage’s Analytical Engine exercise solution codepad
215 01 Mar 2011 An Early LISP Program: A program to flatten a list, from the March 1960 LISP I manual exercise solution codepad
459 23 Jul 2013 Telephone Lookup: A directory-assistance program by Mike Lesk exercise solution codepad
398 11 Dec 2012 Stepwise Program Development: A Heuristic Algorithm: A backtracking solution to a problem of Wirth exercise solution codepad
230 22 Apr 2011 Xref: Programmer’s cross-reference utility exercise solution codepad
284 01 Nov 2011 RIP John McCarthy: Implementation of the “Maxwell’s equations of software” from the LISP 1.5 Programmer’s Manual exercise solution codepad
438 07 May 2013 Three List Exercises: Three simple exercises on lists, for beginning programmers exercise solution codepad
5 19 Feb 2009 Flavius Josephus: Programming a cyclical list exercise solution codepad
40 09 Jun 2009 Longest Common Subsequence: A classic programming algorithm, with a solution that dates to folklore exercise solution codepad
183 09 Nov 2010 Subset Sums: Third level of the Greplin Programming Challenge, using dynamic programming and memoization exercise solution codepad
183 09 Nov 2010 Subset Sums: Third level of the Greplin Programming Challenge, using dynamic programming and memoization exercise solution codepad
190 03 Dec 2010 Maximum Sum Subsequence: A classic programming exercise due to Jon Bentley exercise solution codepad
46 30 Jun 2009 Steve Yegge’s Phone-Screen Coding Exercises: A simple set of programming exercises based on a blog entry by Steve Yegge exercise solution codepad
58 11 Aug 2009 Uncle Bob’s Bowling Game Kata: Use pattern-matching on lists to solve a classic object-oriented programming exercise exercise solution codepad
426 26 Mar 2013 Google Code Jam Qualification Round Africa 2010, Revisited: Four solutions to a Google programming exercise, with various time complexities exercise solution codepad
74 06 Oct 2009 MapReduce: Google’s famous system for parallelizing computations expressed as a programming idiom exercise solution codepad
309 27 Jan 2012 Anagram Phrases: “Gin grammar prop six” is an anagram for “Programming Praxis” exercise solution codepad
453 28 Jun 2013 A Programming Puzzle: Write a function f so that f(f(n)) = -n for all integers n. exercise solution codepad
476 24 Sep 2013 Finding Digit Strings In Powers Of Two: A simple exercise from one of the competitive programming sites exercise solution codepad
157 10 Aug 2010 Literate Programming: Structured documentation in the style of Donald Knuth exercise solution codepad
21 03 Apr 2009   Programming the Turing Machine: A turing-machine program to multiply two numbers exercise solution codepad
356 13 Jul 2012 The Evolution Of Flibs: Use genetic programming to build a finite state machine exercise solution codepad
326 27 Mar 2012 Subset Sum: Solve a classic NP problem using dynamic programming exercise solution codepad
372 07 Sep 2012 The First Two Programs: Hello World and a fahrenheit / celsius conversion table exercise solution codepad
9 20 Feb 2009 A Self-Reproducing Program: The quintessential quine exercise solution codepad
209 08 Feb 2011 The First Computer Program: Ada Lovelace’s program to compute Bernoulli numbers for Charles Babbage’s Analytical Engine exercise solution codepad
215 01 Mar 2011 An Early LISP Program: A program to flatten a list, from the March 1960 LISP I manual exercise solution codepad
136 28 May 2010 Printing Files: A simple program to list files, similar to the unix pr program exercise solution codepad
21 03 Apr 2009 Programming the Turing Machine: A turing-machine program to multiply two numbers exercise solution codepad
132 30 Apr 2010 Integer Factorization: Combine trial division, Pollard’s rho and p−1 methods, and elliptic curves into a single factorization program exercise solution codepad
136 28 May 2010 Printing Files: A simple program to list files, similar to the unix pr program exercise solution codepad
166 10 Sep 2010 Data Encryption Standard: Part 4: DES driver program exercise solution codepad
92 08 Dec 2009 Word Count: An implementation of the unix wc program exercise solution codepad
273 20 Sep 2011   Project Euler Problem 3: Thorough explanation of integer factorization by trial division exercise solution codepad
42 16 Jun 2009 Who Owns The Zebra?: A logic puzzle, solved by embedding a Prolog-like logic system in Scheme exercise solution codepad
319 02 Mar 2012 Balanced Delimiters: Determine if nested delimiters are properly balanced exercise solution codepad
309 27 Jan 2012 Anagram Phrases: “Gin grammar prop six” is an anagram for “Programming Praxis” exercise solution codepad
65 04 Sep 2009 Ron’s Cipher #4: Stream cipher by Ron Rivest that underlies the SSL and WEP protocols exercise solution codepad
377 28 Sep 2012 Pocklington’s N−1 Primality Prover: Prove n prime if n−1 can be partially factored exercise solution codepad
379 05 Oct 2012 AKS Primality Prover, Part 2: The primality prover of Agrawal, Kayal and Saxena exercise solution codepad
378 02 Oct 2012 AKS Primality Prover, Part 1: Two functions used by the AKS primality prover exercise solution codepad
379 05 Oct 2012 AKS Primality Prover, Part 2: The primality prover of Agrawal, Kayal and Saxena exercise solution codepad
377 28 Sep 2012 Pocklington’s N−1 Primality Prover: Prove n prime if n−1 can be partially factored exercise solution codepad
378 02 Oct 2012 AKS Primality Prover, Part 1: Two functions used by the AKS primality prover exercise solution codepad
360 27 Jul 2012 Min Stack: Provide push and pop operations and find the minimum element in linear time exercise solution codepad
376 21 Sep 2012 Autumn Equinox: Calculate the length of the day; provides a time-handling library exercise solution codepad
45 26 Jun 2009 Treaps: A randomized dictionary data structure, provides in-order access to key exercise solution codepad
369 28 Aug 2012 Random Access Lists: A clever data structure that provides O(log n) access to items in a sequential list, along with cons, head and tail exercise solution codepad
116 05 Mar 2010 Binary Search Tree: Classic data structure, providing insert, delete and lookup for ordered datatypes exercise solution codepad
107 02 Feb 2010   Proving Primality: A deterministic, not probabilistic, method of checking primality exercise solution codepad
136 28 May 2010 Printing Files: A simple program to list files, similar to the unix pr program exercise solution codepad
419 01 Mar 2013 Baillie-Wagstaff Pseudoprimality Tester: Primality test, an improvement over the Miller-Rabin test exercise solution codepad
390 13 Nov 2012 Frobenius Primality Test: A pseudoprimality test, stronger than Miller-Rabin exercise solution codepad
60 18 Aug 2009 Blum Blum Shub: Stream cipher based on a cryptographically secure pseudo-random number generator exercise solution codepad
463 06 Aug 2013 Sophie Germain Primes: Primes p such that 2p+1 is also prime exercise solution codepad
185 16 Nov 2010 RSA Cryptography: The original public-key cryptographic system, still in wide use exercise solution codepad
290 22 Nov 2011 Rabin’s Cryptosystem: Public-key cryptosystem, similar to RSA exercise solution codepad
387 02 Nov 2012 Gasoline Mileage Log: Read a file of gasoline purchases to compute miles per gallon exercise solution codepad
73 02 Oct 2009 Red-Black Trees: A purely functional dictionary data structure based on approximately-balanced trees exercise solution codepad
360 27 Jul 2012 Min Stack: Provide push and pop operations and find the minimum element in linear time exercise solution codepad
288 15 Nov 2011 Phil Harvey’s Puzle: partition {1,…,16} into two sets of equal size so each subset has the same sum, sum of squares and sum of cubes exercise solution codepad
24 14 Apr 2009 Google Treasure Hunt 2008 Puzzle 4: A prime-number puzzle exercise solution codepad
89 27 Nov 2009 $7.11: A math puzzle: a+b+c+d = a×b×c×d = 7.11 exercise solution codepad
41 12 Jun 2009 Feynman’s Puzzle: A simple logic puzzle exercise solution codepad
129 20 Apr 2010 145 Puzzle: Build and evaluate expressions using the digits one through nine and the simple arithmetic operators exercise solution codepad
412 05 Feb 2013 The 147 Puzzle: Compute all the solutions to 1/a + 1/b + 1/c + 1/d + 1/e = 1 in integers exercise solution codepad
311 03 Feb 2012 Roman Numeral Puzzle: Count the Roman numerals with no repeated digits exercise solution codepad
445 31 May 2013 The Seven Bridges of Königsberg: A classic graph puzzle due to Leonhard Euler exercise solution codepad
416 19 Feb 2013 NPR Sunday Puzzle: Find two words containing the letters a, b, c, d, e and f exercise solution codepad
229 19 Apr 2011 Same Five Digits: A math puzzle from New Scientist, solved by guest author Bob Miller exercise solution codepad
466 16 Aug 2013 Monkey Grid Puzzle: How many points can the monkey access? exercise solution codepad
87 20 Nov 2009 Master Mind, Part 2: Solve a Master Mind puzzle in five probes or less exercise solution codepad
191 07 Dec 2010 Ullman’s Puzzle: It never hurts to sort exercise solution codepad
79 23 Oct 2009 Mr. S. and Mr. P.: A logic puzzle popularized by John McCarthy exercise solution codepad
42 16 Jun 2009 Who Owns The Zebra?: A logic puzzle, solved by embedding a Prolog-like logic system in Scheme exercise solution codepad
7 20 Feb 2009 Multiple Dwellings: A simple logic puzzle, solved with the amb non-deterministic operator exercise solution codepad
24 14 Apr 2009 Google Treasure Hunt 2008 Puzzle 4: A prime-number puzzle exercise solution codepad
41 12 Jun 2009 Feynman’s Puzzle: A simple logic puzzle exercise solution codepad
4 19 Feb 2009 Sudoku: A backtracking solution to everybody’s favorite puzzle exercise solution codepad
439 10 May 2013 MindCipher: Three exercises from the MindCipher puzzle website exercise solution codepad
99 05 Jan 2010 The Sum Of Two Squares: A math puzzle with a solution by Dijkstra exercise solution codepad
453 28 Jun 2013 A Programming Puzzle: Write a function f so that f(f(n)) = -n for all integers n. exercise solution codepad
385 26 Oct 2012 Pythatorean Triples: Generate primitive pythagorean triples by an ancient algorithm exercise solution codepad
385 26 Oct 2012   Pythatorean Triples: Generate primitive pythagorean triples by an ancient algorithm exercise solution codepad
328 03 Apr 2012 Cornacchia’s Algorithm: Find solutions to quadratic diophantine equations exercise solution codepad
336 01 May 2012 Legendre’s Symbol: Determine if a number is a quadratic residue mod m exercise solution codepad
451 21 Jun 2013 Multiple Polynomial Quadratic Sieve: A greatly improved version of the basic quadratic sieve exercise solution codepad
424 19 Mar 2013   Quadratic Sieve: Basic version of a powerful factoring algorithm exercise solution codepad
428 02 Apr 2013 Quadratic Sieve With Large Primes: A (slightly) improved version of the basic quadratic sieve exercise solution codepad
451 21 Jun 2013 Multiple Polynomial Quadratic Sieve: A greatly improved version of the basic quadratic sieve exercise solution codepad
428 02 Apr 2013   Quadratic Sieve With Large Primes: A (slightly) improved version of the basic quadratic sieve exercise solution codepad
80 27 Oct 2009 Three Quadratic Sorts: Bubble sort, selection sort and insertion sort exercise solution codepad
237 17 May 2011 Two Bad Sorts: Stooge sort and bogosort are worse than quadratic exercise solution codepad
109 09 Feb 2010 Numerical Integration: Quadrature by the rectangular, trapezoidal and Simpson’s method, including adaptive quadrature exercise solution codepad
109 09 Feb 2010 Numerical Integration: Quadrature by the rectangular, trapezoidal and Simpson’s method, including adaptive quadrature exercise solution codepad
426 26 Mar 2013 Google Code Jam Qualification Round Africa 2010, Revisited: Four solutions to a Google programming exercise, with various time complexities exercise solution codepad
211 15 Feb 2011 Google Code Jam Qualification Round Africa 2010: Three simple exercises exercise solution codepad
394 27 Nov 2012 Amazon Interview Question: Find the hundred points of a million closest to the origin exercise solution codepad
468 23 Aug 2013 Three Interview Questions: Three interview questions exercise solution codepad
468 23 Aug 2013 Three Interview Questions: Three interview questions exercise solution codepad
469 27 Aug 2013 Two Sieving Problems: Use sieves to answer two prime-number questions exercise solution codepad
461 30 Jul 2013 Who Buys The Croissants?: Simulate an important Friday-morning question exercise solution codepad
30 05 May 2009 Priority Queues: A simple library implementation of the priority queue data structure exercise solution codepad
491 08 Nov 2013 Two Stacks Make A Queue: Implement a queue using two stacks exercise solution codepad
279 14 Oct 2011 The First N Primes: Embedding the Sieve of Eratosthenes in a priority queue instead of an array exercise solution codepad
30 05 May 2009 Priority Queues: A simple library implementation of the priority queue data structure exercise solution codepad
410 25 Jan 2013 Imperative Heaps: The classing implementation of priority queues embedded in an array exercise solution codepad
489 29 Oct 2013   Queues: Implement a basic data structure exercise solution codepad
490 05 Nov 2013 Two Queues Make A Stack: Implement a stack using two queues exercise solution codepad
477 27 Sep 2013 Double-Ended Priority Queues: Priority queues that permit access at both ends exercise solution codepad
477 27 Sep 2013 Double-Ended Priority Queues: Priority queues that permit access at both ends exercise solution codepad
269 06 Sep 2011 Deques: Library implementation of double-ended queues exercise solution codepad
345 05 Jun 2012 Binomial Heaps: Another algorithm for maintaining priority queues exercise solution codepad
409 22 Jan 2013 Splay Heaps: Yet another implementation of priority queues exercise solution codepad
490 05 Nov 2013 Two Queues Make A Stack: Implement a stack using two queues exercise solution codepad
59 14 Aug 2009 Pairing Heaps: A standard algorithm for maintaining priority queues exercise solution codepad
83 06 Nov 2009 Heap Sort: A guaranteed O(log n) sorting method based on priority queues exercise solution codepad
491 08 Nov 2013 Two Stacks Make A Queue: Implement a queue using two stacks exercise solution codepad
210 11 Feb 2011 Sums Of Powers: Use Bernoulli numbers to quickly compute sums of powers exercise solution codepad
113 23 Feb 2010 Engineering A Sort Function: A high-performance quicksort by Jon Bentley and Doug McIlroy exercise solution codepad
82 03 Nov 2009   Quick Sort: Tony Hoare’s divide-and-conquer sorting algorithm exercise solution codepad
9 20 Feb 2009 A Self-Reproducing Program: The quintessential quine exercise solution codepad
9 20 Feb 2009 A Self-Reproducing Program: The quintessential quine exercise solution codepad
90 01 Dec 2009 Wolves And Rabbits: Analyze population dynamics using the Lotka-Volterra equations exercise solution codepad
64 01 Sep 2009 String Search: Rabin-Karp: Our final classic string-search algorithm exercise solution codepad
290 22 Nov 2011   Rabin’s Cryptosystem: Public-key cryptosystem, similar to RSA exercise solution codepad
29 01 May 2009 Primality Checking: A probabilistic primality checker by Gary Miller and Michael Rabin exercise solution codepad
245 14 Jun 2011 Big Numbers: Input And Output: A library for big integers: input and output with radix conversion exercise solution codepad
85 13 Nov 2009 Two linear sorts: Count sort and radix sort exploit the structure of integer keys exercise solution codepad
20 31 Mar 2009   Rail-Fence Cipher: A simple transposition cipher exercise solution codepad
389 09 Nov 2012 Taxicab Numbers: Confirm an interesting observation of Srinivasa Ramanujan exercise solution codepad
221 22 Mar 2011 Two Kaprekar Exercises: Kaprekar chains and Kaprekar numbers, from the Indian mathematician Dattaraya Ramchandra Kaprekar exercise solution codepad
434 23 Apr 2013 Correct Horse Battery Staple: Randall Munro’s passphrase generator exercise solution codepad
369 28 Aug 2012   Random Access Lists: A clever data structure that provides O(log n) access to items in a sequential list, along with cons, head and tail exercise solution codepad
225 05 Apr 2011 Fortune: Print a random aphorism from a file exercise solution codepad
367 21 Aug 2012 Two More Random Exercises: Two bad random number generators, the middle-square method and RANDU exercise solution codepad
366 17 Aug 2012 Two Random Exercises: Two exercises involving random numbers exercise solution codepad
45 26 Jun 2009 Treaps: A randomized dictionary data structure, provides in-order access to key exercise solution codepad
180 29 Oct 2010 Fibonacci Primes: Find primes among the fibonacci numbers; includes the Park-Miller random number generator and Miller-Rabin primality checker exercise solution codepad
232 29 Apr 2011 Rule 30 RNG: The random number generator from Mathematica, based on Stephen Wolfram’s Rule 30 cellular automata exercise solution codepad
135 25 May 2010 GB_FLIP: Donald Knuth’s portable, high-quality random-number generator from the Stanford Graphbase exercise solution codepad
173 05 Oct 2010 George Marsaglia’s Random Number Generators: Nine high-quality RNGs in nineteen lines of code exercise solution codepad
367 21 Aug 2012 Two More Random Exercises: Two bad random number generators, the middle-square method and RANDU exercise solution codepad
270 09 Sep 2011 Mersenne Twister: Random number generator with very long period, useful for simulations exercise solution codepad
249 28 Jun 2011 Big Numbers: Functions: A library for big integers: gcd, powering, square root, random numbers exercise solution codepad
366 17 Aug 2012 Two Random Exercises: Two exercises involving random numbers exercise solution codepad
192 10 Dec 2010 Two Random Selections: Use random number to select fortunes and lotto winners exercise solution codepad
78 20 Oct 2009 Shuffle: Create random permutations of an array or linked list exercise solution codepad
192 10 Dec 2010 Two Random Selections: Use random number to select fortunes and lotto winners exercise solution codepad
367 21 Aug 2012 Two More Random Exercises: Two bad random number generators, the middle-square method and RANDU exercise solution codepad
355 10 Jul 2012 Sieve For Totients: Find the totients of a large range of integers using a sieve exercise solution codepad
108 05 Feb 2010 Segmented Sieve Of Eratosthenes: Extend the Sieve of Eratosthenes to large ranges of integers exercise solution codepad
44 23 Jun 2009 The Mod Out System: Expand a series of ranges exercise solution codepad
357 17 Jul 2012 Breshenham’s Line-Drawing Algorithm: Draw straight lines using raster graphics exercise solution codepad
145 29 Jun 2010 World Cup Prognostication: Simulate the knockout stage using elo ratings exercise solution codepad
49 10 Jul 2009 The Golden Ratio: Evaluate a continued fraction, based on my daughter’s math homework exercise solution codepad
205 25 Jan 2011   Rational Numbers: A library of basic arithmetic and comparison of fractions exercise solution codepad
280 18 Oct 2011 The Wall: Ray Panko’s spreadsheet exercise exercise solution codepad
387 02 Nov 2012 Gasoline Mileage Log: Read a file of gasoline purchases to compute miles per gallon exercise solution codepad
479 04 Oct 2013 Calculating Statistics: Read a file of integers and calculate mean, median and mode exercise solution codepad
13 06 Mar 2009 Roman Numerals: A library to read and write Roman numerals exercise solution codepad
177 19 Oct 2010 Text File Databases: Part 1: Functions to read records with fields in various formats exercise solution codepad
240 27 May 2011 Upside Up: Numbers that read the same upside down exercise solution codepad
352 29 Jun 2012 Sliding Median: Find the median of the most recent k items in a stream exercise solution codepad
375 18 Sep 2012 ABC Conjecture: Demonstrate a recently-proved conjecture of number theory exercise solution codepad
16 17 Mar 2009 Comma-Separated Values: Retrieve records from a comma-separated values file using a finite-state machine exercise solution codepad
177 19 Oct 2010 Text File Databases: Part 1: Functions to read records with fields in various formats exercise solution codepad
178 22 Oct 2010 Text File Databases: Part 2: Various functions to process records with fields exercise solution codepad
256 22 Jul 2011 Counting Primes Using Legendre’s Formula: Recreate Legendre’s two-century old calculation of the number of primes less than a million exercise solution codepad
361 31 Jul 2012 SEND + MORE = MONEY, Part 1: Two slow solutions to a classic problem of recreational mathematics exercise solution codepad
362 03 Aug 2012 SEND + MORE = MONEY, Part 2: Two hill-climbing solutions to a classic problem of recreational mathematics exercise solution codepad
350 22 Jun 2012 Billboard Challenge, Part 1: First part of a Google recruiting challenge exercise solution codepad
351 26 Jun 2012 Billboard Challenge, Part 2: Second part of a Google recruiting challenge exercise solution codepad
109 09 Feb 2010 Numerical Integration: Quadrature by the rectangular, trapezoidal and Simpson’s method, including adaptive quadrature exercise solution codepad
137 01 Jun 2010 Unwrapping A Spiral: An exercise in recursion exercise solution codepad
279 11 Oct 2011 Tower Of Hanoi: Classic demonstration of recursion exercise solution codepad
343 25 May 2012 Ackermann’s Function: A fast-growing function that tests recursion exercise solution codepad
475 20 Sep 2013 McCarthy’s 91 Function: A recursive function designed as a test case for formal verification exercise solution codepad
73 02 Oct 2009   Red-Black Trees: A purely functional dictionary data structure based on approximately-balanced trees exercise solution codepad
440 14 May 2013 Optimal Alphabetical Order: Redefine the alphabet to improve alphabetical ordering exercise solution codepad
287 11 Nov 2011 Generators: Write functions that yield a value, but can then be re-entered exercise solution codepad
86 17 Nov 2009 Master Mind, Part 1: Referee a two-player game of deductive logic exercise solution codepad
275 27 Sep 2011 Statistics: Calculate the mean, standard deviation, linear regression and correlation exercise solution codepad
67 11 Sep 2009 Beautiful Code: A simple regular-expression matcher by Rob Pike exercise solution codepad
71 25 Sep 2009 Grep: Simple version of the classic unix regular-expression matching utility exercise solution codepad
68 15 Sep 2009   Regular Expressions, Part 1: A parser for regular expressions exercise solution codepad
69 18 Sep 2009   Regular Expressions, Part 2: The corresponding matcher exercise solution codepad
70 22 Sep 2009   Regular Expressions, Part 3: A regular expression test suite exercise solution codepad
68 15 Sep 2009 Regular Expressions, Part 1: A parser for regular expressions exercise solution codepad
70 22 Sep 2009 Regular Expressions, Part 3: A regular expression test suite exercise solution codepad
235 10 May 2011 Comm: select or reject lines common to two sorted files exercise solution codepad
141 15 Jun 2010 Natural Join: The fundamental relational database operator exercise solution codepad
186 19 Nov 2010 Topological Sort: Order the edges of a graph by their precedence relationship exercise solution codepad
347 12 Jun 2012 Ordered Maps: A key/value dictionary that supports an ordering relationship exercise solution codepad
465 13 Aug 2013 Unix Paths: Convert relative Unix path to absolute, by Robert Fisher exercise solution codepad
162 27 Aug 2010 Chinese Remainders: An ancient application of modular inverses exercise solution codepad
317 24 Feb 2012   Remove Characters From A String: Remove from one string any character in a second string exercise solution codepad
268 02 Sep 2011 Two String Exercises: Remove duplicate characters, and squish adjacent blanks exercise solution codepad
317 24 Feb 2012 Remove Characters From A String: Remove from one string any character in a second string exercise solution codepad
353 03 Jul 2012 Chopping Words: Form a chain of words by removing letters one at a time exercise solution codepad
66 08 Sep 2009 Porter Stemming: Martin Porter’s algorithm for removing suffices from word stems exercise solution codepad
311 03 Feb 2012 Roman Numeral Puzzle: Count the Roman numerals with no repeated digits exercise solution codepad
264 19 Aug 2011 First Non-Repeating Character: Find the first character in a string that doesn’t repeat later in the string exercise solution codepad
198 31 Dec 2010 Arithmetic Drill: Repetitious drill for children learning basic arithmetic exercise solution codepad
234 06 May 2011 Entab And Detab: expand tabs into spaces, and replace spaces with tabs exercise solution codepad
239 24 May 2011 Big Numbers: Getting Started: A library for big integers: representation, comparison, simple functions exercise solution codepad
359 24 Jul 2012 Zeckendorf Representation: Find the fibonacci numbers that sum to a given number exercise solution codepad
206 28 Jan 2011 Population Count: Count the number of set bits (1-bits) in the binary representation of an integer exercise solution codepad
227 12 Apr 2011 House Of Representatives: Apportion representatives by the Huntington-Hill method exercise solution codepad
227 12 Apr 2011 House Of Representatives: Apportion representatives by the Huntington-Hill method exercise solution codepad
325 23 Mar 2012 Base-26 Arithmetic: Perform arithmetic on integers represented as strings of letters exercise solution codepad
446 04 Jun 2013 Egyptian Fractions: An ancient method of representing fractions exercise solution codepad
336 01 May 2012 Legendre’s Symbol: Determine if a number is a quadratic residue mod m exercise solution codepad
368 24 Aug 2012 Hash Tables With Open Addressing: An alternative to hash tables with chaining for collision resolution exercise solution codepad
297 16 Dec 2011 Majority Voting: Determine the results of an election exercise solution codepad
16 17 Mar 2009 Comma-Separated Values: Retrieve records from a comma-separated values file using a finite-state machine exercise solution codepad
181 02 Nov 2010 Emirps: Prime numbers that are prime when their digits are reversed, but not palindromic exercise solution codepad
266 26 Aug 2011   Reverse Every K Nodes Of A Linked List: Reverse the elements of a sub-list exercise solution codepad
266 26 Aug 2011 Reverse Every K Nodes Of A Linked List: Reverse the elements of a sub-list exercise solution codepad
217 08 Mar 2011 Reverse Words: Reverse the words in an input string exercise solution codepad
217 08 Mar 2011   Reverse Words: Reverse the words in an input string exercise solution codepad
395 30 Nov 2012 Selection, Revisited: A guaranteed linear-time algorithm for selection exercise solution codepad
272 16 Sep 2011 Pollard’s P−1 Factorization Algoritihm, Revisited: An improved second stage that is much faster than the original exercise solution codepad
223 28 Mar 2011 Look And Say, Revisited: Compute Conway’s constant exercise solution codepad
426 26 Mar 2013 Google Code Jam Qualification Round Africa 2010, Revisited: Four solutions to a Google programming exercise, with various time complexities exercise solution codepad
204 21 Jan 0 Pollard Rho, Revisited: Richard Brent’s variant of John Pollard’s rho algorithm for integer factorization exercise solution codepad
281 21 Oct 2011 Sum, Revisited: SysV and Berkeley versions of the Unix V7 sum command exercise solution codepad
105 26 Jan 2010 Primality Checking, Revisited: The Baillie-Wagstaff algorithm for primality checking exercise solution codepad
331 13 Apr 2012 McNugget Numbers, Revisited: The classic coin problem in disguise, how to count the number of ways to make change exercise solution codepad
258 29 Jul 2011 Approximating Pi: Approximating pi with the logarithmic integral and Riemann’s R function exercise solution codepad
204 21 Jan 0 Pollard Rho, Revisited: Richard Brent’s variant of John Pollard’s rho algorithm for integer factorization exercise solution codepad
43 19 Jun 2009 Monte Carlo Factorization: Integer factorization via Pollard’s rho algorithm exercise solution codepad
132 30 Apr 2010 Integer Factorization: Combine trial division, Pollard’s rho and p−1 methods, and elliptic curves into a single factorization program exercise solution codepad
204 21 Jan 0 Pollard Rho, Revisited: Richard Brent’s variant of John Pollard’s rho algorithm for integer factorization exercise solution codepad
334 24 Apr 2012   Rhyming Dictionary: Find rhyming words for poets exercise solution codepad
334 24 Apr 2012 Rhyming Dictionary: Find rhyming words for poets exercise solution codepad
204 21 Jan 0 Pollard Rho, Revisited: Richard Brent’s variant of John Pollard’s rho algorithm for integer factorization exercise solution codepad
293 02 Dec 2011 Knight Rider: Classic problem of the knight’s tour exercise solution codepad
258 29 Jul 2011 Approximating Pi: Approximating pi with the logarithmic integral and Riemann’s R function exercise solution codepad
401 21 Dec 2012 Building Primes: Build the largest prime with all right-most subsequences also prime exercise solution codepad
284 01 Nov 2011   RIP John McCarthy: Implementation of the “Maxwell’s equations of software” from the LISP 1.5 Programmer’s Manual exercise solution codepad
65 04 Sep 2009 Ron’s Cipher #4: Stream cipher by Ron Rivest that underlies the SSL and WEP protocols exercise solution codepad
173 05 Oct 2010 George Marsaglia’s Random Number Generators: Nine high-quality RNGs in nineteen lines of code exercise solution codepad
232 29 Apr 2011 Rule 30 RNG: The random number generator from Mathematica, based on Stephen Wolfram’s Rule 30 cellular automata exercise solution codepad
465 13 Aug 2013 Unix Paths: Convert relative Unix path to absolute, by Robert Fisher exercise solution codepad
67 11 Sep 2009 Beautiful Code: A simple regular-expression matcher by Rob Pike exercise solution codepad
311 03 Feb 2012   Roman Numeral Puzzle: Count the Roman numerals with no repeated digits exercise solution codepad
13 06 Mar 2009   Roman Numerals: A library to read and write Roman numerals exercise solution codepad
13 06 Mar 2009 Roman Numerals: A library to read and write Roman numerals exercise solution codepad
311 03 Feb 2012 Roman Numeral Puzzle: Count the Roman numerals with no repeated digits exercise solution codepad
65 04 Sep 2009 Ron’s Cipher #4: Stream cipher by Ron Rivest that underlies the SSL and WEP protocols exercise solution codepad
65 04 Sep 2009   Ron’s Cipher #4: Stream cipher by Ron Rivest that underlies the SSL and WEP protocols exercise solution codepad
249 28 Jun 2011 Big Numbers: Functions: A library for big integers: gcd, powering, square root, random numbers exercise solution codepad
433 19 Apr 2013 Integer Roots: Calculate square roots and higher roots in integer arithmetic exercise solution codepad
95 18 Dec 2009 Calculating Logarithms: Use the methods of Newton and Euler to calculate square roots and logarithms exercise solution codepad
433 19 Apr 2013 Integer Roots: Calculate square roots and higher roots in integer arithmetic exercise solution codepad
344 01 Jun 2012 Square Roots: Four methods to compute square roots, including one from antiquity exercise solution codepad
344 01 Jun 2012 Square Roots: Four methods to compute square roots, including one from antiquity exercise solution codepad
433 19 Apr 2013 Integer Roots: Calculate square roots and higher roots in integer arithmetic exercise solution codepad
393 23 Nov 2012 Tonelli-Shanks Algorithm: Compute modular square roots exercise solution codepad
48 07 Jul 2009 Modular Arithmetic: A function library for performing modular addition, subtraction, multiplication, division, and square root exercise solution codepad
400 18 Dec 2012 Petals Around The Rose: A game to celebrate our 400th exercise exercise solution codepad
123 30 Mar 2010 Passover: Calculate the dates of the Jewish holidays Rosh Hashanah and Passover exercise solution codepad
6 20 Feb 2009   ROT13: A simple Caesar-shift cipher exercise solution codepad
175 12 Oct 2010   Rotate An Array: A simple but tricky exercise solved by an algorithm from the folklore of computing exercise solution codepad
310 31 Jan 2012 String Rotation: Determine if two strings are rotations of each other exercise solution codepad
310 31 Jan 2012 String Rotation: Determine if two strings are rotations of each other exercise solution codepad
415 15 Feb 2013 Facebook Hacker Cup 2013, Round 1, Problem 1: Count the ways to win a card game exercise solution codepad
406 08 Jan 2013 Floating Point Rounding: Round a floating point number to a given decimal place exercise solution codepad
426 26 Mar 2013 Google Code Jam Qualification Round Africa 2010, Revisited: Four solutions to a Google programming exercise, with various time complexities exercise solution codepad
211 15 Feb 2011 Google Code Jam Qualification Round Africa 2010: Three simple exercises exercise solution codepad
406 08 Jan 2013 Floating Point Rounding: Round a floating point number to a given decimal place exercise solution codepad
364 10 Aug 2012 Minimum Scalar Product: A simple exercise from the practice round of Google Code Jam 2008 exercise solution codepad
320 06 Mar 2012 Union Route Cipher: Military cipher used successfully by Union forces in the American Civil War exercise solution codepad
184 12 Nov 2010   Rowland’s Prime-Generating Function: A sequence of ones and primes exercise solution codepad
458 19 Jul 2013 J K Rowling: Identify an author using forensic linguistics exercise solution codepad
313 10 Feb 2012 Search In An Ascending Matrix: Find a number in a matrix where both rows and columns are sorted in ascending order exercise solution codepad
1 19 Feb 2009   RPN Calculator: Evaluate numeric expressions at the command line exercise solution codepad
185 16 Nov 2010   RSA Cryptography: The original public-key cryptographic system, still in wide use exercise solution codepad
324 20 Mar 2012 Factoring Multiple RSA Keys: Exploit a key-generation weakness to factor RSA keys exercise solution codepad
324 20 Mar 2012 Factoring Multiple RSA Keys: Exploit a key-generation weakness to factor RSA keys exercise solution codepad
290 22 Nov 2011 Rabin’s Cryptosystem: Public-key cryptosystem, similar to RSA exercise solution codepad
232 29 Apr 2011 Rule 30 RNG: The random number generator from Mathematica, based on Stephen Wolfram’s Rule 30 cellular automata exercise solution codepad
232 29 Apr 2011   Rule 30 RNG: The random number generator from Mathematica, based on Stephen Wolfram’s Rule 30 cellular automata exercise solution codepad
114 26 Feb 2010   Run Length Encoding: A simple compression method for text files exercise solution codepad
448 11 Jun 2013 Longest Substring Of Two Unique Characters: Longest run of consecutive characters in a string that contains only two unique characters exercise solution codepad
77 16 Oct 2009 Growable Arrays: Arrays that grow and shrink at run-time, with O(log n) complexity per operation exercise solution codepad
118 12 Mar 2010 Traveling Salesman: Brute Force: Examine all possible permutations to find the least-cost tour exercise solution codepad
127 13 Apr 2010 Traveling Salesman: Minimum Spanning Tree: Heuristic guarantees solution within factor of two of optimal tour exercise solution codepad
119 16 Mar 2010 Traveling Salesman: Nearest Neighbor: A greedy heuristic that builds a path by always choosing the nearest unvisited point exercise solution codepad
318 28 Feb 2012 Next Greater Permutation Of Digits: Find the smallest number larger than the input number using the same digits as the input number exercise solution codepad
229 19 Apr 2011   Same Five Digits: A math puzzle from New Scientist, solved by guest author Bob Miller exercise solution codepad
155 03 Aug 2010 Carl Hewitt’s Same-Fringe Problem: Do two trees have the same leaves, solved with streams (lazy lists) exercise solution codepad
155 03 Aug 2010 Carl Hewitt’s Same-Fringe Problem: Do two trees have the same leaves, solved with streams (lazy lists) exercise solution codepad
288 15 Nov 2011 Phil Harvey’s Puzle: partition {1,…,16} into two sets of equal size so each subset has the same sum, sum of squares and sum of cubes exercise solution codepad
240 27 May 2011 Upside Up: Numbers that read the same upside down exercise solution codepad
28 28 Apr 2009 Morse Code: Translating the dots-and-dashes of Samuel Finley Breese Morse’s telegraph code exercise solution codepad
79 23 Oct 2009 Mr. S. and Mr. P.: A logic puzzle popularized by John McCarthy exercise solution codepad
196 24 Dec 2010 Tracking Santa: How far does Santa travel on his annual journey? exercise solution codepad
196 24 Dec 2010 Tracking Santa: How far does Santa travel on his annual journey? exercise solution codepad
455 05 Jul 2013 Weekdays Between Two Dates: Number of days between two dates, excluding Saturday and Sunday exercise solution codepad
379 05 Oct 2012 AKS Primality Prover, Part 2: The primality prover of Agrawal, Kayal and Saxena exercise solution codepad
219 15 Mar 2011 Look And Say: Calculate John Horton Conway’s "Look and Say" sequence exercise solution codepad
223 28 Mar 2011 Look And Say, Revisited: Compute Conway’s constant exercise solution codepad
219 15 Mar 2011 Look And Say: Calculate John Horton Conway’s "Look and Say" sequence exercise solution codepad
143 22 Jun 2010 Matrix Operations: Matrix addition, scalar multiplication, multiplication and transposition exercise solution codepad
364 10 Aug 2012 Minimum Scalar Product: A simple exercise from the practice round of Google Code Jam 2008 exercise solution codepad
189 30 Nov 2010 Form Letters: Merge a schema and a data file to write form letters exercise solution codepad
384 23 Oct 2012 Universal Hash Function: Compute a hash for any native Scheme datatype exercise solution codepad
2 19 Feb 2009 Sieve of Eratosthenes: A Scheme implementation of an ancient algorithm exercise solution codepad
42 16 Jun 2009 Who Owns The Zebra?: A logic puzzle, solved by embedding a Prolog-like logic system in Scheme exercise solution codepad
246 17 Jun 2011 Adi Shamir’s Threshold Scheme: Use cryptography to share a secret, by Graham Enos exercise solution codepad
203 18 Jan 2011 Solitaire Cipher: Bruce Schneier’s strong cryptography based on a deck of playing cards exercise solution codepad
289 18 Nov 2011 Grade School Multiplication: Display the steps in the grade school multiplication algorithm exercise solution codepad
289 18 Nov 2011 Grade School Multiplication: Display the steps in the grade school multiplication algorithm exercise solution codepad
450 18 Jun 2013 3SUM: A classic of computer science: find three numbers in an array that sum to zero exercise solution codepad
33 15 May 2009 Cellular Automata: Linear cellular automata as described by Stephen Wolfram in his book A New Kind of Science exercise solution codepad
229 19 Apr 2011 Same Five Digits: A math puzzle from New Scientist, solved by guest author Bob Miller exercise solution codepad
486 29 Oct 2013 The 16 Game: Determine the odds in a scratch-off game exercise solution codepad
329 06 Apr 2012 Voters: Watch voting blocks migrate on the screen exercise solution codepad
18 23 Mar 2009 Binary Search: A simple task, easy to get wrong exercise solution codepad
63 28 Aug 2009 String Search: Boyer-Moore: Search for a pattern in a text using a fast and simple algorithm exercise solution codepad
61 21 Aug 2009 String Search: Brute Force: Search for a pattern in a text by comparing the pattern to the text at all possible positions exercise solution codepad
61 21 Aug 2009 String Search: Brute Force: Search for a pattern in a text by comparing the pattern to the text at all possible positions exercise solution codepad
63 28 Aug 2009 String Search: Boyer-Moore: Search for a pattern in a text using a fast and simple algorithm exercise solution codepad
62 25 Aug 2009 String Search: Knuth-Morris-Pratt: Search for a pattern in a text using an O(n) algorithm exercise solution codepad
313 10 Feb 2012   Search In An Ascending Matrix: Find a number in a matrix where both rows and columns are sorted in ascending order exercise solution codepad
62 25 Aug 2009 String Search: Knuth-Morris-Pratt: Search for a pattern in a text using an O(n) algorithm exercise solution codepad
64 01 Sep 2009 String Search: Rabin-Karp: Our final classic string-search algorithm exercise solution codepad
36 26 May 2009 Word Search Solver: A computerized implementation of a popular time-waster exercise solution codepad
116 05 Mar 2010 Binary Search Tree: Classic data structure, providing insert, delete and lookup for ordered datatypes exercise solution codepad
414 12 Feb 2013 Binary Search Tree: In-Order Predecessor And Successor: Find the previous and next items in a tree exercise solution codepad
218 11 Mar 2011 Lowest Common Ancestor: Find the lowest node in a binary search tree that is a common ancestor to two given nodes exercise solution codepad
39 05 Jun 2009 Ternary Search Tries: Build a function library for handling ternary search tries exercise solution codepad
39 05 Jun 2009 Ternary Search Tries: Build a function library for handling ternary search tries exercise solution codepad
422 12 Mar 2013 An Array Of Two Symbols: A learning experience for binary search exercise solution codepad
351 26 Jun 2012 Billboard Challenge, Part 2: Second part of a Google recruiting challenge exercise solution codepad
272 16 Sep 2011 Pollard’s P−1 Factorization Algoritihm, Revisited: An improved second stage that is much faster than the original exercise solution codepad
120 19 Mar 2010 Extending Pollard’s P−1 Factorization Algorithm: Add a second stage to allow larger factorizations exercise solution codepad
317 24 Feb 2012 Remove Characters From A String: Remove from one string any character in a second string exercise solution codepad
246 17 Jun 2011 Adi Shamir’s Threshold Scheme: Use cryptography to share a secret, by Graham Enos exercise solution codepad
473 12 Sep 2013 Diffie Hellman Key Exchange: Manage secure exchanges on an insecure communications channel exercise solution codepad
60 18 Aug 2009 Blum Blum Shub: Stream cipher based on a cryptographically secure pseudo-random number generator exercise solution codepad
108 05 Feb 2010   Segmented Sieve Of Eratosthenes: Extend the Sieve of Eratosthenes to large ranges of integers exercise solution codepad
159 17 Aug 2010 Cut: Select fields or characters from input lines exercise solution codepad
192 10 Dec 2010 Two Random Selections: Use random number to select fortunes and lotto winners exercise solution codepad
93 11 Dec 2009   Selection: Find the kth-largest item in a list exercise solution codepad
395 30 Nov 2012   Selection, Revisited: A guaranteed linear-time algorithm for selection exercise solution codepad
80 27 Oct 2009 Three Quadratic Sorts: Bubble sort, selection sort and insertion sort exercise solution codepad
192 10 Dec 2010 Two Random Selections: Use random number to select fortunes and lotto winners exercise solution codepad
395 30 Nov 2012 Selection, Revisited: A guaranteed linear-time algorithm for selection exercise solution codepad
235 10 May 2011 Comm: select or reject lines common to two sorted files exercise solution codepad
9 20 Feb 2009 A Self-Reproducing Program: The quintessential quine exercise solution codepad
342 22 May 2012 Hamming Codes: Send messages over a noisy channel without error exercise solution codepad
361 31 Jul 2012   SEND + MORE = MONEY, Part 1: Two slow solutions to a classic problem of recreational mathematics exercise solution codepad
362 03 Aug 2012   SEND + MORE = MONEY, Part 2: Two hill-climbing solutions to a classic problem of recreational mathematics exercise solution codepad
411 01 Feb 2013 Hofstadter’s Sequence: An infinite figure-figure sequence exercise solution codepad
399 14 Dec 2012 115132219018763992565095597973971522401: Calculate the sequence of narcissistic numbers exercise solution codepad
397 07 Dec 2012 Wirth Problem 15.12: Compute a sequence of numbers defined by Wirth exercise solution codepad
184 12 Nov 2010 Rowland’s Prime-Generating Function: A sequence of ones and primes exercise solution codepad
478 01 Oct 2013 Lucas Sequences: Fast methods for calculating Lucas sequences, similar to Fibonacci sequences exercise solution codepad
478 01 Oct 2013 Lucas Sequences: Fast methods for calculating Lucas sequences, similar to Fibonacci sequences exercise solution codepad
478 01 Oct 2013 Lucas Sequences: Fast methods for calculating Lucas sequences, similar to Fibonacci sequences exercise solution codepad
212 18 Feb 2011 Two Factoring Games: Home primes and the Euclid-Mullin sequence exercise solution codepad
219 15 Mar 2011 Look And Say: Calculate John Horton Conway’s "Look and Say" sequence exercise solution codepad
315 17 Feb 2012 Hailstones: Examine the Collatz sequence exercise solution codepad
411 01 Feb 2013 Hofstadter’s Sequence: An infinite figure-figure sequence exercise solution codepad
369 28 Aug 2012 Random Access Lists: A clever data structure that provides O(log n) access to items in a sequential list, along with cons, head and tail exercise solution codepad
101 12 Jan 2010 Calculating Sines: Calculate sines using Taylor series and the triple-angle formula, by Bill Cruise exercise solution codepad
44 23 Jun 2009 The Mod Out System: Expand a series of ranges exercise solution codepad
206 28 Jan 2011 Population Count: Count the number of set bits (1-bits) in the binary representation of an integer exercise solution codepad
149 13 Jul 2010 Word Cube: A game to form words from a given set of letters exercise solution codepad
344 00 May 2012 Streaming Median: Find the medians of a set of numbers as they arrive in a stream exercise solution codepad
46 30 Jun 2009 Steve Yegge’s Phone-Screen Coding Exercises: A simple set of programming exercises based on a blog entry by Steve Yegge exercise solution codepad
447 07 Jun 2013   Sets: A classic data structure and associated algorithms exercise solution codepad
124 02 Apr 2010 Disjoint Sets: A data structure for storing sets of items in disjoint partitions exercise solution codepad
321 09 Mar 2012 Sparse Sets: Clever data structure for storing sparse sets of small integers exercise solution codepad
288 15 Nov 2011 Phil Harvey’s Puzle: partition {1,…,16} into two sets of equal size so each subset has the same sum, sum of squares and sum of cubes exercise solution codepad
339 11 May 2012 partitions: Sets of integers that sum to a given integer exercise solution codepad
124 02 Apr 2010 Disjoint Sets: A data structure for storing sets of items in disjoint partitions exercise solution codepad
321 09 Mar 2012 Sparse Sets: Clever data structure for storing sparse sets of small integers exercise solution codepad
437 03 May 2013 Pairing Students: Create sets of students, each paired to the other only once exercise solution codepad
445 31 May 2013 The Seven Bridges of Königsberg: A classic graph puzzle due to Leonhard Euler exercise solution codepad
133 04 May 2010 Spectacular Seven: Compute the odds at jai alai exercise solution codepad
246 17 Jun 2011 Adi Shamir’s Threshold Scheme: Use cryptography to share a secret, by Graham Enos exercise solution codepad
11 27 Feb 2009 Mark V. Shaney: Generate parodies of a text using a Markov chain exercise solution codepad
161 24 Aug 2010 Daniel Shanks’ Square Form Factorization Algorithm: A simple and very fast factorization algorithm for integers between 105 and 1020 exercise solution codepad
246 17 Jun 2011 Adi Shamir’s Threshold Scheme: Use cryptography to share a secret, by Graham Enos exercise solution codepad
160 20 Aug 0 Marriage Sort: A sub-quadratic sort similar to shell sort or comb sort exercise solution codepad
81 30 Oct 2009 Two Sub-Quadratic Sorts: Comb sort and shell sort exercise solution codepad
199 04 Jan 2011 Dijkstra’s Algorithm: Find the shortest path to all vertices of a graph from a single source, guest written by Graham Enos exercise solution codepad
77 16 Oct 2009 Growable Arrays: Arrays that grow and shrink at run-time, with O(log n) complexity per operation exercise solution codepad
60 18 Aug 2009 Blum Blum Shub: Stream cipher based on a cryptographically secure pseudo-random number generator exercise solution codepad
78 20 Oct 2009   Shuffle: Create random permutations of an array or linked list exercise solution codepad
195 21 Dec 2010 Interval Arithmetic: An exercise from SICP exercise solution codepad
323 16 Mar 2012 Sum Of Squares Of Two Largest Of Three Values: A simple problem from SICP with a variety of solutions exercise solution codepad
254 15 Jul 2011 JSON: Writing Output: The other side of JSAON exercise solution codepad
451 21 Jun 2013 Multiple Polynomial Quadratic Sieve: A greatly improved version of the basic quadratic sieve exercise solution codepad
303 06 Jan 2012 Pritchard’s Wheel Sieve: An alternative to the Sieve of Eratosthenes with a faster asymptotic time complexity exercise solution codepad
424 19 Mar 2013 Quadratic Sieve: Basic version of a powerful factoring algorithm exercise solution codepad
355 10 Jul 2012   Sieve For Totients: Find the totients of a large range of integers using a sieve exercise solution codepad
110 12 Feb 2010   Sieve of Atkin: A modern alternative to the Sieve of Eratosthenes for computing prime numbers exercise solution codepad
112 19 Feb 2010   Sieve Of Atkin, Improved: A faster version of the Sieve of Atkin exercise solution codepad
112 19 Feb 2010 Sieve Of Atkin, Improved: A faster version of the Sieve of Atkin exercise solution codepad
2 19 Feb 2009   Sieve of Eratosthenes: A Scheme implementation of an ancient algorithm exercise solution codepad
108 05 Feb 2010 Segmented Sieve Of Eratosthenes: Extend the Sieve of Eratosthenes to large ranges of integers exercise solution codepad
110 12 Feb 2010 Sieve of Atkin: A modern alternative to the Sieve of Eratosthenes for computing prime numbers exercise solution codepad
279 14 Oct 2011 The First N Primes: Embedding the Sieve of Eratosthenes in a priority queue instead of an array exercise solution codepad
332 17 Apr 2012 Twin Primes: A variant of the Sieve of Eratosthenes to find pairs of primes that differ by two exercise solution codepad
108 05 Feb 2010 Segmented Sieve Of Eratosthenes: Extend the Sieve of Eratosthenes to large ranges of integers exercise solution codepad
303 06 Jan 2012 Pritchard’s Wheel Sieve: An alternative to the Sieve of Eratosthenes with a faster asymptotic time complexity exercise solution codepad
214 25 Feb 2011   Sieve Of Euler: An alternate, and slow, method of sieving for primes exercise solution codepad
278 07 Oct 2011   Sieve of Sundaram: Sieving for prime numbers using a method from India exercise solution codepad
469 27 Aug 2013 Two Sieving Problems: Use sieves to answer two prime-number questions exercise solution codepad
314 14 Feb 2012 Divisors: Find divisors using a sieve exercise solution codepad
355 10 Jul 2012 Sieve For Totients: Find the totients of a large range of integers using a sieve exercise solution codepad
428 02 Apr 2013 Quadratic Sieve With Large Primes: A (slightly) improved version of the basic quadratic sieve exercise solution codepad
451 21 Jun 2013 Multiple Polynomial Quadratic Sieve: A greatly improved version of the basic quadratic sieve exercise solution codepad
428 02 Apr 2013 Quadratic Sieve With Large Primes: A (slightly) improved version of the basic quadratic sieve exercise solution codepad
278 07 Oct 2011 Sieve of Sundaram: Sieving for prime numbers using a method from India exercise solution codepad
214 25 Feb 2011 Sieve Of Euler: An alternate, and slow, method of sieving for primes exercise solution codepad
469 27 Aug 2013 Two Sieving Problems: Use sieves to answer two prime-number questions exercise solution codepad
312 07 Feb 2012 Solar Compass: Determine North by sighting the Sun exercise solution codepad
111 16 Feb 2010 Soundex: An algorithm to assign people’s last names to equivalence classes based on similar spelling exercise solution codepad
478 01 Oct 2013 Lucas Sequences: Fast methods for calculating Lucas sequences, similar to Fibonacci sequences exercise solution codepad
171 28 Sep 2010 Maxiphobic Heaps: A priority-queue data structure, similar to leftist heaps, due to Chris Okasaki exercise solution codepad
138 04 Jun 2010 Williams’ P+1 Factorization Algorithm: A factorization algorithm, similar to Pollard’s p−1 algorithm exercise solution codepad
290 22 Nov 2011 Rabin’s Cryptosystem: Public-key cryptosystem, similar to RSA exercise solution codepad
160 20 Aug 0 Marriage Sort: A sub-quadratic sort similar to shell sort or comb sort exercise solution codepad
136 28 May 2010 Printing Files: A simple program to list files, similar to the unix pr program exercise solution codepad
63 28 Aug 2009 String Search: Boyer-Moore: Search for a pattern in a text using a fast and simple algorithm exercise solution codepad
37 29 May 2009 Double Transposition Cipher: A simple and effective cipher, easy to perform by hand exercise solution codepad
161 24 Aug 2010 Daniel Shanks’ Square Form Factorization Algorithm: A simple and very fast factorization algorithm for integers between 105 and 1020 exercise solution codepad
129 20 Apr 2010 145 Puzzle: Build and evaluate expressions using the digits one through nine and the simple arithmetic operators exercise solution codepad
76 13 Oct 2009 Bifid: A simple but effective fractionating cipher, never used militarily exercise solution codepad
175 12 Oct 2010 Rotate An Array: A simple but tricky exercise solved by an algorithm from the folklore of computing exercise solution codepad
6 20 Feb 2009 ROT13: A simple Caesar-shift cipher exercise solution codepad
114 26 Feb 2010 Run Length Encoding: A simple compression method for text files exercise solution codepad
283 28 Oct 2011 Crypt: Simple encryption tool from Kernighan and Plauger exercise solution codepad
476 24 Sep 2013 Finding Digit Strings In Powers Of Two: A simple exercise from one of the competitive programming sites exercise solution codepad
364 10 Aug 2012 Minimum Scalar Product: A simple exercise from the practice round of Google Code Jam 2008 exercise solution codepad
438 07 May 2013 Three List Exercises: Three simple exercises on lists, for beginning programmers exercise solution codepad
211 15 Feb 2011 Google Code Jam Qualification Round Africa 2010: Three simple exercises exercise solution codepad
38 02 Jun 2009 Pig Latin: A simple exercise to solve a children’s game exercise solution codepad
52 21 Jul 2009 Pollard’s P−1 Factorization Algorithm: A simple factorization algorithm by John Pollard exercise solution codepad
239 24 May 2011 Big Numbers: Getting Started: A library for big integers: representation, comparison, simple functions exercise solution codepad
462 02 Aug 2013 Ordered Hash Tables: Knuth’s improvement to simple hash tables exercise solution codepad
55 31 Jul 2009 Elliptic Curve Factorization: A very simple implementation of elliptic curve factorization exercise solution codepad
30 05 May 2009 Priority Queues: A simple library implementation of the priority queue data structure exercise solution codepad
32 12 May 2009 Loan Amortization: Calculate and print a simple loan amortization table exercise solution codepad
7 20 Feb 2009 Multiple Dwellings: A simple logic puzzle, solved with the amb non-deterministic operator exercise solution codepad
41 12 Jun 2009 Feynman’s Puzzle: A simple logic puzzle exercise solution codepad
323 16 Mar 2012 Sum Of Squares Of Two Largest Of Three Values: A simple problem from SICP with a variety of solutions exercise solution codepad
295 09 Dec 2011 McNugget Numbers: A simple problem, worked out on a napkin exercise solution codepad
136 28 May 2010 Printing Files: A simple program to list files, similar to the unix pr program exercise solution codepad
67 11 Sep 2009 Beautiful Code: A simple regular-expression matcher by Rob Pike exercise solution codepad
46 30 Jun 2009 Steve Yegge’s Phone-Screen Coding Exercises: A simple set of programming exercises based on a blog entry by Steve Yegge exercise solution codepad
158 13 Aug 2010 E: A simple simulation with a surprising ending exercise solution codepad
18 23 Mar 2009 Binary Search: A simple task, easy to get wrong exercise solution codepad
20 31 Mar 2009 Rail-Fence Cipher: A simple transposition cipher exercise solution codepad
15 13 Mar 2009 Friday, the Thirteenth: A small calendar library, and a simple use of it exercise solution codepad
71 25 Sep 2009 Grep: Simple version of the classic unix regular-expression matching utility exercise solution codepad
485 25 Oct 2013 Pessimal Algorithms And Simplexity Analysis: The slowsort algorithm using the multiply and surrender algorithms exercise solution codepad
109 09 Feb 2010 Numerical Integration: Quadrature by the rectangular, trapezoidal and Simpson’s method, including adaptive quadrature exercise solution codepad
216 04 Mar 2011 Chutes And Ladders: Simulate a child’s game, and compute its statistics exercise solution codepad
330 10 Apr 2012 Galton: Simulate a marble-drop that forms a bell-shaped curve exercise solution codepad
461 30 Jul 2013 Who Buys The Croissants?: Simulate an important Friday-morning question exercise solution codepad
285 04 Nov 2011 Craps: Simulate a popular game of gambling with dice exercise solution codepad
202 14 Jan 2011 Slots: Simulate a slot machine exercise solution codepad
53 24 Jul 2009 Let’s Make A Deal!: Simulate a tricky probability calculation exercise solution codepad
145 29 Jun 2010 World Cup Prognostication: Simulate the knockout stage using elo ratings exercise solution codepad
484 22 Oct 2013 David Gries’ Coffee Can Problem: Simulate the process of extracting beans from a coffee can exercise solution codepad
270 09 Sep 2011 Mersenne Twister: Random number generator with very long period, useful for simulations exercise solution codepad
381 12 Oct 2012 Birthday Paradox: Use simulation to demonstrate the birthday paradox exercise solution codepad
423 15 Mar 2013 Buffon’s Needle: Compute the value of π with a simulation exercise solution codepad
158 13 Aug 2010 E: A simple simulation with a surprising ending exercise solution codepad
19 27 Mar 2009 A Turing Machine Simulator: An interpreter for a single-tape, multi-symbol turing machine exercise solution codepad
104 22 Jan 2010 Phases Of The Moon: Calculate the number of days since the last new moon exercise solution codepad
101 12 Jan 2010 Calculating Sines: Calculate sines using Taylor series and the triple-angle formula, by Bill Cruise exercise solution codepad
101 12 Jan 2010 Calculating Sines: Calculate sines using Taylor series and the triple-angle formula, by Bill Cruise exercise solution codepad
132 30 Apr 2010 Integer Factorization: Combine trial division, Pollard’s rho and p−1 methods, and elliptic curves into a single factorization program exercise solution codepad
199 04 Jan 2011 Dijkstra’s Algorithm: Find the shortest path to all vertices of a graph from a single source, guest written by Graham Enos exercise solution codepad
19 27 Mar 2009 A Turing Machine Simulator: An interpreter for a single-tape, multi-symbol turing machine exercise solution codepad
476 24 Sep 2013 Finding Digit Strings In Powers Of Two: A simple exercise from one of the competitive programming sites exercise solution codepad
309 27 Jan 2012 Anagram Phrases: “Gin grammar prop six” is an anagram for “Programming Praxis” exercise solution codepad
425 22 Mar 2013 Jumping Jack: Jump in increasing sizes along the number line exercise solution codepad
288 15 Nov 2011 Phil Harvey’s Puzle: partition {1,…,16} into two sets of equal size so each subset has the same sum, sum of squares and sum of cubes exercise solution codepad
213 22 Feb 2011 Sliding Window Minimum: List of minimums sliding across an input list exercise solution codepad
352 29 Jun 2012   Sliding Median: Find the median of the most recent k items in a stream exercise solution codepad
213 22 Feb 2011   Sliding Window Minimum: List of minimums sliding across an input list exercise solution codepad
428 02 Apr 2013 Quadratic Sieve With Large Primes: A (slightly) improved version of the basic quadratic sieve exercise solution codepad
202 14 Jan 2011 Slots: Simulate a slot machine exercise solution codepad
202 14 Jan 2011   Slots: Simulate a slot machine exercise solution codepad
236 13 May 2011 Dixon’s Factorization Algorithm: A slow, but theoretically important, algorithm for integer factorization exercise solution codepad
214 25 Feb 2011 Sieve Of Euler: An alternate, and slow, method of sieving for primes exercise solution codepad
361 31 Jul 2012 SEND + MORE = MONEY, Part 1: Two slow solutions to a classic problem of recreational mathematics exercise solution codepad
485 25 Oct 2013 Pessimal Algorithms And Simplexity Analysis: The slowsort algorithm using the multiply and surrender algorithms exercise solution codepad
15 13 Mar 2009 Friday, the Thirteenth: A small calendar library, and a simple use of it exercise solution codepad
474 17 Sep 2013   Smallest Consecutive Four-Factor Composites: Find consecutive numbers with four factors exercise solution codepad
318 28 Feb 2012 Next Greater Permutation Of Digits: Find the smallest number larger than the input number using the same digits as the input number exercise solution codepad
321 09 Mar 2012 Sparse Sets: Clever data structure for storing sparse sets of small integers exercise solution codepad
308 24 Jan 2012 A Dozen Lines Of Code: Do something cool in a small space exercise solution codepad
299 23 Dec 2011 Koch’s Snowflake: Draw a fractal snowflake using PostScript exercise solution codepad
299 23 Dec 2011 Koch’s Snowflake: Draw a fractal snowflake using PostScript exercise solution codepad
337 04 May 2012 Even-Odd Partition: Partition an array so all even integers precede all odd integers exercise solution codepad
288 15 Nov 2011 Phil Harvey’s Puzle: partition {1,…,16} into two sets of equal size so each subset has the same sum, sum of squares and sum of cubes exercise solution codepad
284 01 Nov 2011 RIP John McCarthy: Implementation of the “Maxwell’s equations of software” from the LISP 1.5 Programmer’s Manual exercise solution codepad
312 07 Feb 2012   Solar Compass: Determine North by sighting the Sun exercise solution codepad
203 18 Jan 2011   Solitaire Cipher: Bruce Schneier’s strong cryptography based on a deck of playing cards exercise solution codepad
99 05 Jan 2010 The Sum Of Two Squares: A math puzzle with a solution by Dijkstra exercise solution codepad
412 05 Feb 2013 The 147 Puzzle: Compute all the solutions to 1/a + 1/b + 1/c + 1/d + 1/e = 1 in integers exercise solution codepad
361 31 Jul 2012 SEND + MORE = MONEY, Part 1: Two slow solutions to a classic problem of recreational mathematics exercise solution codepad
362 03 Aug 2012 SEND + MORE = MONEY, Part 2: Two hill-climbing solutions to a classic problem of recreational mathematics exercise solution codepad
426 26 Mar 2013 Google Code Jam Qualification Round Africa 2010, Revisited: Four solutions to a Google programming exercise, with various time complexities exercise solution codepad
328 03 Apr 2012 Cornacchia’s Algorithm: Find solutions to quadratic diophantine equations exercise solution codepad
323 16 Mar 2012 Sum Of Squares Of Two Largest Of Three Values: A simple problem from SICP with a variety of solutions exercise solution codepad
391 16 Nov 2012 List Intersection And Union: Two algorithms on linked lists, with multiple solutions exercise solution codepad
40 09 Jun 2009 Longest Common Subsequence: A classic programming algorithm, with a solution that dates to folklore exercise solution codepad
398 11 Dec 2012 Stepwise Program Development: A Heuristic Algorithm: A backtracking solution to a problem of Wirth exercise solution codepad
4 19 Feb 2009 Sudoku: A backtracking solution to everybody’s favorite puzzle exercise solution codepad
327 30 Mar 2012 Subset Sum, Meet In The Middle: An improved solution to the classic NP problem exercise solution codepad
127 13 Apr 2010 Traveling Salesman: Minimum Spanning Tree: Heuristic guarantees solution within factor of two of optimal tour exercise solution codepad
38 02 Jun 2009 Pig Latin: A simple exercise to solve a children’s game exercise solution codepad
326 27 Mar 2012 Subset Sum: Solve a classic NP problem using dynamic programming exercise solution codepad
58 11 Aug 2009 Uncle Bob’s Bowling Game Kata: Use pattern-matching on lists to solve a classic object-oriented programming exercise exercise solution codepad
87 20 Nov 2009 Master Mind, Part 2: Solve a Master Mind puzzle in five probes or less exercise solution codepad
50 14 Jul 2009 The Daily Cryptogram: Solve a monoalphabetic substitution cipher exercise solution codepad
14 10 Mar 2009 Word Frequencies: Our interpretation of a problem solved by a classic unix pipeline exercise solution codepad
175 12 Oct 2010 Rotate An Array: A simple but tricky exercise solved by an algorithm from the folklore of computing exercise solution codepad
42 16 Jun 2009 Who Owns The Zebra?: A logic puzzle, solved by embedding a Prolog-like logic system in Scheme exercise solution codepad
229 19 Apr 2011 Same Five Digits: A math puzzle from New Scientist, solved by guest author Bob Miller exercise solution codepad
155 03 Aug 2010 Carl Hewitt’s Same-Fringe Problem: Do two trees have the same leaves, solved with streams (lazy lists) exercise solution codepad
7 20 Feb 2009 Multiple Dwellings: A simple logic puzzle, solved with the amb non-deterministic operator exercise solution codepad
36 26 May 2009 Word Search Solver: A computerized implementation of a popular time-waster exercise solution codepad
144 25 Jun 2010 Learn A New Language: Solve the exercise of your choice in an unfamiliar language exercise solution codepad
316 21 Feb 2012 Learn A New Language: Solve the exercise of your choice in an unfamiliar language exercise solution codepad
151 20 Jul 2010   Solving Systems Of Linear Equations: Matrix operations LU-decomposition and LUP-decomposition exercise solution codepad
388 06 Nov 2012 Fix Something Annoying: Take control of your computing environment by fixing something that annoys you exercise solution codepad
308 24 Jan 2012 A Dozen Lines Of Code: Do something cool in a small space exercise solution codepad
388 06 Nov 2012 Fix Something Annoying: Take control of your computing environment by fixing something that annoys you exercise solution codepad
260 05 Aug 2011 Ninety-Nine Bottles Of Beer: The popular song exercise solution codepad
463 06 Aug 2013   Sophie Germain Primes: Primes p such that 2p+1 is also prime exercise solution codepad
84 10 Nov 2009 Merge Sort: A fast, stable sorting algorithm, especially well-suited to linked lists exercise solution codepad
83 06 Nov 2009 Heap Sort: A guaranteed O(log n) sorting method based on priority queues exercise solution codepad
237 17 May 2011 Two Bad Sorts: Stooge sort and bogosort are worse than quadratic exercise solution codepad
80 27 Oct 2009 Three Quadratic Sorts: Bubble sort, selection sort and insertion sort exercise solution codepad
85 13 Nov 2009 Two linear sorts: Count sort and radix sort exploit the structure of integer keys exercise solution codepad
81 30 Oct 2009 Two Sub-Quadratic Sorts: Comb sort and shell sort exercise solution codepad
160 20 Aug 0 Marriage Sort: A sub-quadratic sort similar to shell sort or comb sort exercise solution codepad
420 05 Mar 2013 Dutch National Flag: Classic ternary sort by Edsgar Dijkstra exercise solution codepad
235 10 May 2011 Comm: select or reject lines common to two sorted files exercise solution codepad
313 10 Feb 2012 Search In An Ascending Matrix: Find a number in a matrix where both rows and columns are sorted in ascending order exercise solution codepad
263 16 Aug 2011 Insert Into A Cyclic Sorted List: Insert a new element into a cyclic list, in order exercise solution codepad
193 14 Dec 2010 Longest Duplicated Substring: Use a sorted suffix list exercise solution codepad
85 13 Nov 2009 Two linear sorts: Count sort and radix sort exploit the structure of integer keys exercise solution codepad
113 23 Feb 2010 Engineering A Sort Function: A high-performance quicksort by Jon Bentley and Doug McIlroy exercise solution codepad
84 10 Nov 2009 Merge Sort: A fast, stable sorting algorithm, especially well-suited to linked lists exercise solution codepad
82 03 Nov 2009 Quick Sort: Tony Hoare’s divide-and-conquer sorting algorithm exercise solution codepad
261 09 Aug 2011 Hett’s Problem 1.28: Sorting a list of lists according to length of sublists exercise solution codepad
22 07 Apr 2009 Flipping Pancakes: A sorting method analyzed by Bill Gates exercise solution codepad
83 06 Nov 2009 Heap Sort: A guaranteed O(log n) sorting method based on priority queues exercise solution codepad
160 20 Aug 0 Marriage Sort: A sub-quadratic sort similar to shell sort or comb sort exercise solution codepad
186 19 Nov 2010 Topological Sort: Order the edges of a graph by their precedence relationship exercise solution codepad
80 27 Oct 2009 Three Quadratic Sorts: Bubble sort, selection sort and insertion sort exercise solution codepad
81 30 Oct 2009 Two Sub-Quadratic Sorts: Comb sort and shell sort exercise solution codepad
85 13 Nov 2009 Two linear sorts: Count sort and radix sort exploit the structure of integer keys exercise solution codepad
80 27 Oct 2009 Three Quadratic Sorts: Bubble sort, selection sort and insertion sort exercise solution codepad
160 20 Aug 0 Marriage Sort: A sub-quadratic sort similar to shell sort or comb sort exercise solution codepad
237 17 May 2011 Two Bad Sorts: Stooge sort and bogosort are worse than quadratic exercise solution codepad
82 03 Nov 2009 Quick Sort: Tony Hoare’s divide-and-conquer sorting algorithm exercise solution codepad
160 20 Aug 0 Marriage Sort: A sub-quadratic sort similar to shell sort or comb sort exercise solution codepad
191 07 Dec 2010 Ullman’s Puzzle: It never hurts to sort exercise solution codepad
80 27 Oct 2009 Three Quadratic Sorts: Bubble sort, selection sort and insertion sort exercise solution codepad
81 30 Oct 2009 Two Sub-Quadratic Sorts: Comb sort and shell sort exercise solution codepad
453 28 Jun 2013 A Programming Puzzle: Write a function f so that f(f(n)) = -n for all integers n. exercise solution codepad
111 16 Feb 2010   Soundex: An algorithm to assign people’s last names to equivalence classes based on similar spelling exercise solution codepad
199 04 Jan 2011 Dijkstra’s Algorithm: Find the shortest path to all vertices of a graph from a single source, guest written by Graham Enos exercise solution codepad
234 06 May 2011 Entab And Detab: expand tabs into spaces, and replace spaces with tabs exercise solution codepad
262 12 Aug 2011 Word Breaks: Insert spaces between words: applepie => apple pie exercise solution codepad
234 06 May 2011 Entab And Detab: expand tabs into spaces, and replace spaces with tabs exercise solution codepad
308 24 Jan 2012 A Dozen Lines Of Code: Do something cool in a small space exercise solution codepad
127 13 Apr 2010 Traveling Salesman: Minimum Spanning Tree: Heuristic guarantees solution within factor of two of optimal tour exercise solution codepad
125 06 Apr 2010 Minimum Spanning Tree: Kruskal’s Algorithm: Find the minimum-cost tree that includes all the nodes in a graph exercise solution codepad
126 09 Apr 2010 Minimum Spanning Tree: Prim’s Algorithm: Find the minimum-cost tree that includes all the nodes in a graph exercise solution codepad
321 09 Mar 2012   Sparse Sets: Clever data structure for storing sparse sets of small integers exercise solution codepad
321 09 Mar 2012 Sparse Sets: Clever data structure for storing sparse sets of small integers exercise solution codepad
133 04 May 2010   Spectacular Seven: Compute the odds at jai alai exercise solution codepad
97 29 Dec 2009 A Statisticle Speling Korrecter: Peter Norvig’s version of the Google spelling suggester exercise solution codepad
26 21 Apr 2009 Probabilistic Spell Checking: A probabilistic spell-checker based on a Bloom filter exercise solution codepad
25 17 Apr 2009 Spell Checking: A spell-checker in a trie-based dictionary exercise solution codepad
26 21 Apr 2009 Probabilistic Spell Checking: A probabilistic spell-checker based on a Bloom filter exercise solution codepad
25 17 Apr 2009   Spell Checking: A spell-checker in a trie-based dictionary exercise solution codepad
172 01 Oct 2010 Oban Numbers: Numbers that omit the letter “o” when spelled, and a function to convert numbers to words exercise solution codepad
97 29 Dec 2009 A Statisticle Speling Korrecter: Peter Norvig’s version of the Google spelling suggester exercise solution codepad
111 16 Feb 2010 Soundex: An algorithm to assign people’s last names to equivalence classes based on similar spelling exercise solution codepad
8 20 Feb 2009 The Digits of Pi: A spigot algorithm to calculate the digits of pi exercise solution codepad
137 01 Jun 2010 Unwrapping A Spiral: An exercise in recursion exercise solution codepad
409 22 Jan 2013   Splay Heaps: Yet another implementation of priority queues exercise solution codepad
301 30 Dec 2011 Split: Split a list in two halves using the tortoise-and-hare algorithm exercise solution codepad
231 26 Apr 2011 Miscellanea: FizzBuzz, Prime Words, and Split A List exercise solution codepad
301 30 Dec 2011   Split: Split a list in two halves using the tortoise-and-hare algorithm exercise solution codepad
280 18 Oct 2011 The Wall: Ray Panko’s spreadsheet exercise exercise solution codepad
418 26 Feb 2013 An Odd Way To Square: Square a number without using multiplication or exponentiation exercise solution codepad
405 02 Jan 2013 Four Points Determine A Square: Determine if four given points form a square exercise solution codepad
106 29 Jan 2010 Straddling Checkerboard: An alternative to the Polybius square for ciphers that must convert letters to digits exercise solution codepad
161 24 Aug 2010 Daniel Shanks’ Square Form Factorization Algorithm: A simple and very fast factorization algorithm for integers between 105 and 1020 exercise solution codepad
156 06 Aug 2010 Two Powering Predicates: Determine if a number is a square or a prime power exercise solution codepad
249 28 Jun 2011 Big Numbers: Functions: A library for big integers: gcd, powering, square root, random numbers exercise solution codepad
433 19 Apr 2013 Integer Roots: Calculate square roots and higher roots in integer arithmetic exercise solution codepad
95 18 Dec 2009 Calculating Logarithms: Use the methods of Newton and Euler to calculate square roots and logarithms exercise solution codepad
344 01 Jun 2012   Square Roots: Four methods to compute square roots, including one from antiquity exercise solution codepad
344 01 Jun 2012 Square Roots: Four methods to compute square roots, including one from antiquity exercise solution codepad
393 23 Nov 2012 Tonelli-Shanks Algorithm: Compute modular square roots exercise solution codepad
48 07 Jul 2009 Modular Arithmetic: A function library for performing modular addition, subtraction, multiplication, division, and square root exercise solution codepad
99 05 Jan 2010 The Sum Of Two Squares: A math puzzle with a solution by Dijkstra exercise solution codepad
288 15 Nov 2011 Phil Harvey’s Puzle: partition {1,…,16} into two sets of equal size so each subset has the same sum, sum of squares and sum of cubes exercise solution codepad
152 23 Jul 2010 Happy Numbers: Iterating the sum of the squares of the digits terminates with one exercise solution codepad
323 16 Mar 2012 Sum Of Squares Of Two Largest Of Three Values: A simple problem from SICP with a variety of solutions exercise solution codepad
418 26 Feb 2013 An Odd Way To Square: Square a number without using multiplication or exponentiation exercise solution codepad
233 03 May 2011 Squaring The Bishop: Charles Babbage’s game of word squares exercise solution codepad
169 21 Sep 2010 Kaprekar Numbers: Square the number and add the digits in halves exercise solution codepad
405 02 Jan 2013 Four Points Determine A Square: Determine if four given points form a square exercise solution codepad
233 03 May 2011   Squaring The Bishop: Charles Babbage’s game of word squares exercise solution codepad
268 02 Sep 2011 Two String Exercises: Remove duplicate characters, and squish adjacent blanks exercise solution codepad
389 09 Nov 2012 Taxicab Numbers: Confirm an interesting observation of Srinivasa Ramanujan exercise solution codepad
65 04 Sep 2009 Ron’s Cipher #4: Stream cipher by Ron Rivest that underlies the SSL and WEP protocols exercise solution codepad
84 10 Nov 2009 Merge Sort: A fast, stable sorting algorithm, especially well-suited to linked lists exercise solution codepad
490 05 Nov 2013 Two Queues Make A Stack: Implement a stack using two queues exercise solution codepad
360 27 Jul 2012 Min Stack: Provide push and pop operations and find the minimum element in linear time exercise solution codepad
491 08 Nov 2013 Two Stacks Make A Queue: Implement a queue using two stacks exercise solution codepad
491 08 Nov 2013 Two Stacks Make A Queue: Implement a queue using two stacks exercise solution codepad
490 05 Nov 2013 Two Queues Make A Stack: Implement a stack using two queues exercise solution codepad
272 16 Sep 2011 Pollard’s P−1 Factorization Algoritihm, Revisited: An improved second stage that is much faster than the original exercise solution codepad
120 19 Mar 2010 Extending Pollard’s P−1 Factorization Algorithm: Add a second stage to allow larger factorizations exercise solution codepad
145 29 Jun 2010 World Cup Prognostication: Simulate the knockout stage using elo ratings exercise solution codepad
59 14 Aug 2009 Pairing Heaps: A standard algorithm for maintaining priority queues exercise solution codepad
286 08 Nov 2011 Improved Standard Continuation: An improved version of elliptic curve factorization, widely used in current practice exercise solution codepad
275 27 Sep 2011 Statistics: Calculate the mean, standard deviation, linear regression and correlation exercise solution codepad
163 31 Aug 2010 Data Encryption Standard: Part 1: Basic block enciphering and deciphering using DES exercise solution codepad
164 03 Sep 2010 Data Encryption Standard: Part 2: ECB, CBC, CFB and OFB block modes for DES and other block ciphers exercise solution codepad
165 07 Sep 2010 Data Encryption Standard: Part 3: Triple DES and cryptographic hashing exercise solution codepad
166 10 Sep 2010 Data Encryption Standard: Part 4: DES driver program exercise solution codepad
222 25 Mar 2011 Sum: The standard Unix V7 file-checksum command exercise solution codepad
135 25 May 2010 GB_FLIP: Donald Knuth’s portable, high-quality random-number generator from the Stanford Graphbase exercise solution codepad
435 26 Apr 2013 Correct Horse Battery Staple, Improved: Fix a horrible bug in the original version exercise solution codepad
434 23 Apr 2013 Correct Horse Battery Staple: Randall Munro’s passphrase generator exercise solution codepad
239 24 May 2011 Big Numbers: Getting Started: A library for big integers: representation, comparison, simple functions exercise solution codepad
356 13 Jul 2012 The Evolution Of Flibs: Use genetic programming to build a finite state machine exercise solution codepad
97 29 Dec 2009 A Statisticle Speling Korrecter: Peter Norvig’s version of the Google spelling suggester exercise solution codepad
275 27 Sep 2011   Statistics: Calculate the mean, standard deviation, linear regression and correlation exercise solution codepad
479 04 Oct 2013 Calculating Statistics: Read a file of integers and calculate mean, median and mode exercise solution codepad
216 04 Mar 2011 Chutes And Ladders: Simulate a child’s game, and compute its statistics exercise solution codepad
244 10 Jun 2011   Steganography: A hand-operable system that combines cryptography and steganography exercise solution codepad
244 10 Jun 2011 Steganography: A hand-operable system that combines cryptography and steganography exercise solution codepad
66 08 Sep 2009 Porter Stemming: Martin Porter’s algorithm for removing suffices from word stems exercise solution codepad
66 08 Sep 2009 Porter Stemming: Martin Porter’s algorithm for removing suffices from word stems exercise solution codepad
33 15 May 2009 Cellular Automata: Linear cellular automata as described by Stephen Wolfram in his book A New Kind of Science exercise solution codepad
232 29 Apr 2011 Rule 30 RNG: The random number generator from Mathematica, based on Stephen Wolfram’s Rule 30 cellular automata exercise solution codepad
289 18 Nov 2011 Grade School Multiplication: Display the steps in the grade school multiplication algorithm exercise solution codepad
398 11 Dec 2012   Stepwise Program Development: A Heuristic Algorithm: A backtracking solution to a problem of Wirth exercise solution codepad
46 30 Jun 2009   Steve Yegge’s Phone-Screen Coding Exercises: A simple set of programming exercises based on a blog entry by Steve Yegge exercise solution codepad
46 30 Jun 2009 Steve Yegge’s Phone-Screen Coding Exercises: A simple set of programming exercises based on a blog entry by Steve Yegge exercise solution codepad
185 16 Nov 2010 RSA Cryptography: The original public-key cryptographic system, still in wide use exercise solution codepad
237 17 May 2011 Two Bad Sorts: Stooge sort and bogosort are worse than quadratic exercise solution codepad
407 15 Jan 2013 Translate CSV To Html: Convert between tabular storage forms exercise solution codepad
382 16 Oct 2012 Version Control: Economically store multiple versions of text files exercise solution codepad
124 02 Apr 2010 Disjoint Sets: A data structure for storing sets of items in disjoint partitions exercise solution codepad
321 09 Mar 2012 Sparse Sets: Clever data structure for storing sparse sets of small integers exercise solution codepad
106 29 Jan 2010   Straddling Checkerboard: An alternative to the Polybius square for ciphers that must convert letters to digits exercise solution codepad
357 17 Jul 2012 Breshenham’s Line-Drawing Algorithm: Draw straight lines using raster graphics exercise solution codepad
417 22 Feb 2013 Floupia: Make change in a strange currency exercise solution codepad
60 18 Aug 2009 Blum Blum Shub: Stream cipher based on a cryptographically secure pseudo-random number generator exercise solution codepad
65 04 Sep 2009 Ron’s Cipher #4: Stream cipher by Ron Rivest that underlies the SSL and WEP protocols exercise solution codepad
340 15 May 2012   Streaming Knapsack: Find first possible combination from a stream that sums to a given integer exercise solution codepad
344 00 May 2012   Streaming Median: Find the medians of a set of numbers as they arrive in a stream exercise solution codepad
155 03 Aug 2010 Carl Hewitt’s Same-Fringe Problem: Do two trees have the same leaves, solved with streams (lazy lists) exercise solution codepad
340 15 May 2012 Streaming Knapsack: Find first possible combination from a stream that sums to a given integer exercise solution codepad
344 00 May 2012 Streaming Median: Find the medians of a set of numbers as they arrive in a stream exercise solution codepad
352 29 Jun 2012 Sliding Median: Find the median of the most recent k items in a stream exercise solution codepad
176 15 Oct 2010 Find The Longest Palindrome In A String: A beautiful linear-time algorithm due to Johan Jeuring exercise solution codepad
317 24 Feb 2012 Remove Characters From A String: Remove from one string any character in a second string exercise solution codepad
268 02 Sep 2011 Two String Exercises: Remove duplicate characters, and squish adjacent blanks exercise solution codepad
436 30 Apr 2013 First Unrepeated Character In A String: Find the first character that appears only once in a string exercise solution codepad
187 23 Nov 2010 String Subsets: Determine if one string is a subset of another exercise solution codepad
317 24 Feb 2012 Remove Characters From A String: Remove from one string any character in a second string exercise solution codepad
310 31 Jan 2012   String Rotation: Determine if two strings are rotations of each other exercise solution codepad
310 31 Jan 2012 String Rotation: Determine if two strings are rotations of each other exercise solution codepad
64 01 Sep 2009 String Search: Rabin-Karp: Our final classic string-search algorithm exercise solution codepad
63 28 Aug 2009   String Search: Boyer-Moore: Search for a pattern in a text using a fast and simple algorithm exercise solution codepad
61 21 Aug 2009   String Search: Brute Force: Search for a pattern in a text by comparing the pattern to the text at all possible positions exercise solution codepad
62 25 Aug 2009   String Search: Knuth-Morris-Pratt: Search for a pattern in a text using an O(n) algorithm exercise solution codepad
64 01 Sep 2009   String Search: Rabin-Karp: Our final classic string-search algorithm exercise solution codepad
476 24 Sep 2013 Finding Digit Strings In Powers Of Two: A simple exercise from one of the competitive programming sites exercise solution codepad
325 23 Mar 2012 Base-26 Arithmetic: Perform arithmetic on integers represented as strings of letters exercise solution codepad
187 23 Nov 2010   String Subsets: Determine if one string is a subset of another exercise solution codepad
448 11 Jun 2013 Longest Substring Of Two Unique Characters: Longest run of consecutive characters in a string that contains only two unique characters exercise solution codepad
264 19 Aug 2011 First Non-Repeating Character: Find the first character in a string that doesn’t repeat later in the string exercise solution codepad
217 08 Mar 2011 Reverse Words: Reverse the words in an input string exercise solution codepad
264 19 Aug 2011 First Non-Repeating Character: Find the first character in a string that doesn’t repeat later in the string exercise solution codepad
317 24 Feb 2012 Remove Characters From A String: Remove from one string any character in a second string exercise solution codepad
436 30 Apr 2013 First Unrepeated Character In A String: Find the first character that appears only once in a string exercise solution codepad
203 18 Jan 2011 Solitaire Cipher: Bruce Schneier’s strong cryptography based on a deck of playing cards exercise solution codepad
390 13 Nov 2012 Frobenius Primality Test: A pseudoprimality test, stronger than Miller-Rabin exercise solution codepad
447 07 Jun 2013 Sets: A classic data structure and associated algorithms exercise solution codepad
73 02 Oct 2009 Red-Black Trees: A purely functional dictionary data structure based on approximately-balanced trees exercise solution codepad
157 10 Aug 2010 Literate Programming: Structured documentation in the style of Donald Knuth exercise solution codepad
124 02 Apr 2010 Disjoint Sets: A data structure for storing sets of items in disjoint partitions exercise solution codepad
321 09 Mar 2012 Sparse Sets: Clever data structure for storing sparse sets of small integers exercise solution codepad
85 13 Nov 2009 Two linear sorts: Count sort and radix sort exploit the structure of integer keys exercise solution codepad
45 26 Jun 2009 Treaps: A randomized dictionary data structure, provides in-order access to key exercise solution codepad
116 05 Mar 2010 Binary Search Tree: Classic data structure, providing insert, delete and lookup for ordered datatypes exercise solution codepad
171 28 Sep 2010 Maxiphobic Heaps: A priority-queue data structure, similar to leftist heaps, due to Chris Okasaki exercise solution codepad
369 28 Aug 2012 Random Access Lists: A clever data structure that provides O(log n) access to items in a sequential list, along with cons, head and tail exercise solution codepad
30 05 May 2009 Priority Queues: A simple library implementation of the priority queue data structure exercise solution codepad
489 29 Oct 2013 Queues: Implement a basic data structure exercise solution codepad
437 03 May 2013 Pairing Students: Create sets of students, each paired to the other only once exercise solution codepad
437 03 May 2013 Pairing Students: Create sets of students, each paired to the other only once exercise solution codepad
157 10 Aug 2010 Literate Programming: Structured documentation in the style of Donald Knuth exercise solution codepad
261 09 Aug 2011 Hett’s Problem 1.28: Sorting a list of lists according to length of sublists exercise solution codepad
266 26 Aug 2011 Reverse Every K Nodes Of A Linked List: Reverse the elements of a sub-list exercise solution codepad
81 30 Oct 2009 Two Sub-Quadratic Sorts: Comb sort and shell sort exercise solution codepad
160 20 Aug 0 Marriage Sort: A sub-quadratic sort similar to shell sort or comb sort exercise solution codepad
40 09 Jun 2009 Longest Common Subsequence: A classic programming algorithm, with a solution that dates to folklore exercise solution codepad
190 03 Dec 2010 Maximum Sum Subsequence: A classic programming exercise due to Jon Bentley exercise solution codepad
401 21 Dec 2012 Building Primes: Build the largest prime with all right-most subsequences also prime exercise solution codepad
288 15 Nov 2011 Phil Harvey’s Puzle: partition {1,…,16} into two sets of equal size so each subset has the same sum, sum of squares and sum of cubes exercise solution codepad
187 23 Nov 2010 String Subsets: Determine if one string is a subset of another exercise solution codepad
187 23 Nov 2010 String Subsets: Determine if one string is a subset of another exercise solution codepad
327 30 Mar 2012   Subset Sum, Meet In The Middle: An improved solution to the classic NP problem exercise solution codepad
326 27 Mar 2012   Subset Sum: Solve a classic NP problem using dynamic programming exercise solution codepad
183 09 Nov 2010   Subset Sums: Third level of the Greplin Programming Challenge, using dynamic programming and memoization exercise solution codepad
50 14 Jul 2009 The Daily Cryptogram: Solve a monoalphabetic substitution cipher exercise solution codepad
448 11 Jun 2013 Longest Substring Of Two Unique Characters: Longest run of consecutive characters in a string that contains only two unique characters exercise solution codepad
193 14 Dec 2010 Longest Duplicated Substring: Use a sorted suffix list exercise solution codepad
241 31 May 2011 Big Numbers: Addition, Subtraction And Multiplication: A library for big integers: grade-school algorithms for addition, subtraction, and multiplication exercise solution codepad
241 31 May 2011 Big Numbers: Addition, Subtraction And Multiplication: A library for big integers: grade-school algorithms for addition, subtraction, and multiplication exercise solution codepad
48 07 Jul 2009 Modular Arithmetic: A function library for performing modular addition, subtraction, multiplication, division, and square root exercise solution codepad
320 06 Mar 2012 Union Route Cipher: Military cipher used successfully by Union forces in the American Civil War exercise solution codepad
414 12 Feb 2013 Binary Search Tree: In-Order Predecessor And Successor: Find the previous and next items in a tree exercise solution codepad
463 06 Aug 2013 Sophie Germain Primes: Primes p such that 2p+1 is also prime exercise solution codepad
197 28 Dec 2010 Carmichael Numbers: Composite numbers such that an-1 ≡ 1 (mod n) if a is prime to n exercise solution codepad
4 19 Feb 2009   Sudoku: A backtracking solution to everybody’s favorite puzzle exercise solution codepad
66 08 Sep 2009 Porter Stemming: Martin Porter’s algorithm for removing suffices from word stems exercise solution codepad
193 14 Dec 2010 Longest Duplicated Substring: Use a sorted suffix list exercise solution codepad
97 29 Dec 2009 A Statisticle Speling Korrecter: Peter Norvig’s version of the Google spelling suggester exercise solution codepad
70 22 Sep 2009 Regular Expressions, Part 3: A regular expression test suite exercise solution codepad
281 21 Oct 2011 Sum, Revisited: SysV and Berkeley versions of the Unix V7 sum command exercise solution codepad
188 26 Nov 2010 Divisors And Totatives: The number-theoretic functions divisors, numdivs, sumdivs, totatives, and totient exercise solution codepad
153 27 Jul 2010 HAMURABI.BAS: Manage grain and land in ancient Sumeria exercise solution codepad
327 30 Mar 2012 Subset Sum, Meet In The Middle: An improved solution to the classic NP problem exercise solution codepad
288 15 Nov 2011 Phil Harvey’s Puzle: partition {1,…,16} into two sets of equal size so each subset has the same sum, sum of squares and sum of cubes exercise solution codepad
288 15 Nov 2011 Phil Harvey’s Puzle: partition {1,…,16} into two sets of equal size so each subset has the same sum, sum of squares and sum of cubes exercise solution codepad
323 16 Mar 2012   Sum Of Squares Of Two Largest Of Three Values: A simple problem from SICP with a variety of solutions exercise solution codepad
373 11 Sep 2012 The Sum Of The First Billion Primes: Write a prime generator, and use it exercise solution codepad
152 23 Jul 2010 Happy Numbers: Iterating the sum of the squares of the digits terminates with one exercise solution codepad
255 19 Jul 2011   Sum Of Two Integers: Determine if two integers in a list sum to a target exercise solution codepad
194 17 Dec 2010 Polite Numbers: Write numbers as the sum of two or more consecutive integers exercise solution codepad
115 02 Mar 2010 Goldbach’s Conjecture: Every even number greater than two can be written as the sum of two primes exercise solution codepad
99 05 Jan 2010 The Sum Of Two Squares: A math puzzle with a solution by Dijkstra exercise solution codepad
383 19 Oct 2012 Prime Partitions: Compute the number of ways to sum primes to a target exercise solution codepad
281 21 Oct 2011   Sum, Revisited: SysV and Berkeley versions of the Unix V7 sum command exercise solution codepad
210 11 Feb 2011 Sums Of Powers: Use Bernoulli numbers to quickly compute sums of powers exercise solution codepad
210 11 Feb 2011   Sums Of Powers: Use Bernoulli numbers to quickly compute sums of powers exercise solution codepad
326 27 Mar 2012 Subset Sum: Solve a classic NP problem using dynamic programming exercise solution codepad
386 30 Oct 2012 Pandigital Numbers: Find sums that include all ten digits exercise solution codepad
183 09 Nov 2010 Subset Sums: Third level of the Greplin Programming Challenge, using dynamic programming and memoization exercise solution codepad
340 15 May 2012 Streaming Knapsack: Find first possible combination from a stream that sums to a given integer exercise solution codepad
190 03 Dec 2010 Maximum Sum Subsequence: A classic programming exercise due to Jon Bentley exercise solution codepad
288 15 Nov 2011 Phil Harvey’s Puzle: partition {1,…,16} into two sets of equal size so each subset has the same sum, sum of squares and sum of cubes exercise solution codepad
222 25 Mar 2011   Sum: The standard Unix V7 file-checksum command exercise solution codepad
339 11 May 2012 partitions: Sets of integers that sum to a given integer exercise solution codepad
359 24 Jul 2012 Zeckendorf Representation: Find the fibonacci numbers that sum to a given number exercise solution codepad
255 19 Jul 2011 Sum Of Two Integers: Determine if two integers in a list sum to a target exercise solution codepad
365 14 Aug 2012 4SUM: Find four numbers in an array that sum to zero exercise solution codepad
450 18 Jun 2013 3SUM: A classic of computer science: find three numbers in an array that sum to zero exercise solution codepad
257 26 Jul 2011 More Prime-Counting Functions: Prime counting functions by Meissel and Lehmer, based on Legendre’s sum exercise solution codepad
278 07 Oct 2011 Sieve of Sundaram: Sieving for prime numbers using a method from India exercise solution codepad
416 19 Feb 2013 NPR Sunday Puzzle: Find two words containing the letters a, b, c, d, e and f exercise solution codepad
455 05 Jul 2013 Weekdays Between Two Dates: Number of days between two dates, excluding Saturday and Sunday exercise solution codepad
88 24 Nov 2009 Sunrise, Sunset: Calculate the times of sunrise and sunset on any day anywhere in the world exercise solution codepad
88 24 Nov 2009   Sunrise, Sunset: Calculate the times of sunrise and sunset on any day anywhere in the world exercise solution codepad
88 24 Nov 2009 Sunrise, Sunset: Calculate the times of sunrise and sunset on any day anywhere in the world exercise solution codepad
88 24 Nov 2009 Sunrise, Sunset: Calculate the times of sunrise and sunset on any day anywhere in the world exercise solution codepad
312 07 Feb 2012 Solar Compass: Determine North by sighting the Sun exercise solution codepad
347 12 Jun 2012 Ordered Maps: A key/value dictionary that supports an ordering relationship exercise solution codepad
158 13 Aug 2010 E: A simple simulation with a surprising ending exercise solution codepad
485 25 Oct 2013 Pessimal Algorithms And Simplexity Analysis: The slowsort algorithm using the multiply and surrender algorithms exercise solution codepad
452 25 Jun 2013   Swap List Nodes: Swap the kth node from the beginning of a list with the kth node from the end of a list exercise solution codepad
452 25 Jun 2013 Swap List Nodes: Swap the kth node from the beginning of a list with the kth node from the end of a list exercise solution codepad
336 01 May 2012 Legendre’s Symbol: Determine if a number is a quadratic residue mod m exercise solution codepad
422 12 Mar 2013 An Array Of Two Symbols: A learning experience for binary search exercise solution codepad
44 23 Jun 2009 The Mod Out System: Expand a series of ranges exercise solution codepad
74 06 Oct 2009 MapReduce: Google’s famous system for parallelizing computations expressed as a programming idiom exercise solution codepad
42 16 Jun 2009 Who Owns The Zebra?: A logic puzzle, solved by embedding a Prolog-like logic system in Scheme exercise solution codepad
151 20 Jul 2010 Solving Systems Of Linear Equations: Matrix operations LU-decomposition and LUP-decomposition exercise solution codepad
185 16 Nov 2010 RSA Cryptography: The original public-key cryptographic system, still in wide use exercise solution codepad
244 10 Jun 2011 Steganography: A hand-operable system that combines cryptography and steganography exercise solution codepad
207 01 Feb 2011 Cuckoo Hashing: A hashing system with guaranteed constant-time lookup and amortized constant-time insertion exercise solution codepad
281 21 Oct 2011 Sum, Revisited: SysV and Berkeley versions of the Unix V7 sum command exercise solution codepad
148 09 Jul 2010 Contents: Permuted Table Of Contents: Blog management exercise solution codepad
338 08 May 2012 Factor Tables: Table of factors of integers exercise solution codepad
456 12 Jul 2013 Dynamic Hash Tables: Hash tables that grow and contract automatically to maintain a constant load factor exercise solution codepad
462 02 Aug 2013 Ordered Hash Tables: Knuth’s improvement to simple hash tables exercise solution codepad
276 30 Sep 2011 Logarithm Tables: Print old-fashioned tables of logarithms and anti-logarithms exercise solution codepad
276 30 Sep 2011 Logarithm Tables: Print old-fashioned tables of logarithms and anti-logarithms exercise solution codepad
338 08 May 2012 Factor Tables: Table of factors of integers exercise solution codepad
456 12 Jul 2013 Dynamic Hash Tables: Hash tables that grow and contract automatically to maintain a constant load factor exercise solution codepad
462 02 Aug 2013 Ordered Hash Tables: Knuth’s improvement to simple hash tables exercise solution codepad
368 24 Aug 2012 Hash Tables With Open Addressing: An alternative to hash tables with chaining for collision resolution exercise solution codepad
368 24 Aug 2012 Hash Tables With Open Addressing: An alternative to hash tables with chaining for collision resolution exercise solution codepad
32 12 May 2009 Loan Amortization: Calculate and print a simple loan amortization table exercise solution codepad
372 07 Sep 2012 The First Two Programs: Hello World and a fahrenheit / celsius conversion table exercise solution codepad
234 06 May 2011 Entab And Detab: expand tabs into spaces, and replace spaces with tabs exercise solution codepad
234 06 May 2011 Entab And Detab: expand tabs into spaces, and replace spaces with tabs exercise solution codepad
407 15 Jan 2013 Translate CSV To Html: Convert between tabular storage forms exercise solution codepad
369 28 Aug 2012 Random Access Lists: A clever data structure that provides O(log n) access to items in a sequential list, along with cons, head and tail exercise solution codepad
388 06 Nov 2012 Fix Something Annoying: Take control of your computing environment by fixing something that annoys you exercise solution codepad
154 30 Jul 2010 Fibonacci Numbers: Three algorithms taking exponential time, linear time, and logarithmic time exercise solution codepad
255 19 Jul 2011 Sum Of Two Integers: Determine if two integers in a list sum to a target exercise solution codepad
383 19 Oct 2012 Prime Partitions: Compute the number of ways to sum primes to a target exercise solution codepad
18 23 Mar 2009 Binary Search: A simple task, easy to get wrong exercise solution codepad
389 09 Nov 2012   Taxicab Numbers: Confirm an interesting observation of Srinivasa Ramanujan exercise solution codepad
101 12 Jan 2010 Calculating Sines: Calculate sines using Taylor series and the triple-angle formula, by Bill Cruise exercise solution codepad
28 28 Apr 2009 Morse Code: Translating the dots-and-dashes of Samuel Finley Breese Morse’s telegraph code exercise solution codepad
459 23 Jul 2013   Telephone Lookup: A directory-assistance program by Mike Lesk exercise solution codepad
296 13 Dec 2011 Validating Telephone Numbers: An exercise in input validation exercise solution codepad
386 30 Oct 2012 Pandigital Numbers: Find sums that include all ten digits exercise solution codepad
152 23 Jul 2010 Happy Numbers: Iterating the sum of the squares of the digits terminates with one exercise solution codepad
39 05 Jun 2009   Ternary Search Tries: Build a function library for handling ternary search tries exercise solution codepad
39 05 Jun 2009 Ternary Search Tries: Build a function library for handling ternary search tries exercise solution codepad
420 05 Mar 2013 Dutch National Flag: Classic ternary sort by Edsgar Dijkstra exercise solution codepad
419 01 Mar 2013 Baillie-Wagstaff Pseudoprimality Tester: Primality test, an improvement over the Miller-Rabin test exercise solution codepad
390 13 Nov 2012 Frobenius Primality Test: A pseudoprimality test, stronger than Miller-Rabin exercise solution codepad
475 20 Sep 2013 McCarthy’s 91 Function: A recursive function designed as a test case for formal verification exercise solution codepad
419 01 Mar 2013 Baillie-Wagstaff Pseudoprimality Tester: Primality test, an improvement over the Miller-Rabin test exercise solution codepad
242 03 Jun 2011 Mersenne Primes: The Lucas-Lehmer test for identifying primes of the form 2n−1 exercise solution codepad
247 21 Jun 2011 Big Numbers: Testing: A library for big integers: testing exercise solution codepad
252 08 Jul 2011 Vedic Divisibility: Use a method of testing divisibility using the method of osculators developed in India exercise solution codepad
247 21 Jun 2011 Big Numbers: Testing: A library for big integers: testing exercise solution codepad
343 25 May 2012 Ackermann’s Function: A fast-growing function that tests recursion exercise solution codepad
390 13 Nov 2012 Frobenius Primality Test: A pseudoprimality test, stronger than Miller-Rabin exercise solution codepad
70 22 Sep 2009 Regular Expressions, Part 3: A regular expression test suite exercise solution codepad
419 01 Mar 2013 Baillie-Wagstaff Pseudoprimality Tester: Primality test, an improvement over the Miller-Rabin test exercise solution codepad
271 13 Sep 2011   Tetrahedral Numbers: Find the base of the tetrahedron that contains 169179692512835000 balls exercise solution codepad
271 13 Sep 2011 Tetrahedral Numbers: Find the base of the tetrahedron that contains 169179692512835000 balls exercise solution codepad
121 23 Mar 2010   Texas Hold ‘Em: Find the best poker hand exercise solution codepad
61 21 Aug 2009 String Search: Brute Force: Search for a pattern in a text by comparing the pattern to the text at all possible positions exercise solution codepad
61 21 Aug 2009 String Search: Brute Force: Search for a pattern in a text by comparing the pattern to the text at all possible positions exercise solution codepad
177 19 Oct 2010   Text File Databases: Part 1: Functions to read records with fields in various formats exercise solution codepad
178 22 Oct 2010   Text File Databases: Part 2: Various functions to process records with fields exercise solution codepad
179 26 Oct 2010 Benford’s Law: A useful mathematical oddity, and an example of text file databases exercise solution codepad
114 26 Feb 2010 Run Length Encoding: A simple compression method for text files exercise solution codepad
139 08 Jun 2010 Diff: Find the differences between two text files exercise solution codepad
382 16 Oct 2012 Version Control: Economically store multiple versions of text files exercise solution codepad
91 04 Dec 2009 Autokey: A cipher in which the input text forms part of the key exercise solution codepad
27 24 Apr 2009 Word Hy-phen-a-tion By Com-pu-ter: Frank Liang’s hyphenation algorithm, used in TeX exercise solution codepad
454 02 Jul 2013 Decoding Text-Speak: Expnd txt wth only intl vwls and n dbld ltrs exercise solution codepad
63 28 Aug 2009 String Search: Boyer-Moore: Search for a pattern in a text using a fast and simple algorithm exercise solution codepad
11 27 Feb 2009 Mark V. Shaney: Generate parodies of a text using a Markov chain exercise solution codepad
62 25 Aug 2009 String Search: Knuth-Morris-Pratt: Search for a pattern in a text using an O(n) algorithm exercise solution codepad
267 30 Aug 2011 Hamming Numbers: List the numbers with no factors greater than 5, a classic problem popularized by Dijkstra exercise solution codepad
122 26 Mar 2010 The Next Prime: Efficiently find the next prime number larger than a given number exercise solution codepad
256 22 Jul 2011 Counting Primes Using Legendre’s Formula: Recreate Legendre’s two-century old calculation of the number of primes less than a million exercise solution codepad
248 24 Jun 2011   Thank God It’s Friday!: Three methods to calculate the day of the week exercise solution codepad
390 13 Nov 2012 Frobenius Primality Test: A pseudoprimality test, stronger than Miller-Rabin exercise solution codepad
348 15 Jun 2012 Counting Ones: Count the number of 1-digits in the numbers less than n exercise solution codepad
237 17 May 2011 Two Bad Sorts: Stooge sort and bogosort are worse than quadratic exercise solution codepad
35 22 May 2009 The Next Palindrome: Find the next palindromic number greater than the input number exercise solution codepad
318 28 Feb 2012 Next Greater Permutation Of Digits: Find the smallest number larger than the input number using the same digits as the input number exercise solution codepad
272 16 Sep 2011 Pollard’s P−1 Factorization Algoritihm, Revisited: An improved second stage that is much faster than the original exercise solution codepad
115 02 Mar 2010 Goldbach’s Conjecture: Every even number greater than two can be written as the sum of two primes exercise solution codepad
181 02 Nov 2010 Emirps: Prime numbers that are prime when their digits are reversed, but not palindromic exercise solution codepad
403 28 Dec 2012 Three Wise Men: Find the prices of their gifts exercise solution codepad
186 19 Nov 2010 Topological Sort: Order the edges of a graph by their precedence relationship exercise solution codepad
150 16 Jul 2010 Contents: Themes: Blog Management exercise solution codepad
287 11 Nov 2011 Generators: Write functions that yield a value, but can then be re-entered exercise solution codepad
236 13 May 2011 Dixon’s Factorization Algorithm: A slow, but theoretically important, algorithm for integer factorization exercise solution codepad
375 18 Sep 2012 ABC Conjecture: Demonstrate a recently-proved conjecture of number theory exercise solution codepad
322 13 Mar 2012 Perfect Power Predicate: Given a positive integer n, determine if there exists a b and e for which be = n exercise solution codepad
344 00 May 2012 Streaming Median: Find the medians of a set of numbers as they arrive in a stream exercise solution codepad
183 09 Nov 2010 Subset Sums: Third level of the Greplin Programming Challenge, using dynamic programming and memoization exercise solution codepad
304 10 Jan 2012   Thirteen Anagram: 12+1=11+2 and “twelve plus one equals eleven plus two” are both anagrams exercise solution codepad
15 13 Mar 2009 Friday, the Thirteenth: A small calendar library, and a simple use of it exercise solution codepad
273 20 Sep 2011 Project Euler Problem 3: Thorough explanation of integer factorization by trial division exercise solution codepad
154 30 Jul 2010 Fibonacci Numbers: Three algorithms taking exponential time, linear time, and logarithmic time exercise solution codepad
102 15 Jan 2010   Three Binary Algorithms: Multiplication, division and greatest common divisor using binary arithmetic exercise solution codepad
51 17 Jul 2009 International Mathematical Olympiad: Three exercises from 1960s math competitions exercise solution codepad
439 10 May 2013 MindCipher: Three exercises from the MindCipher puzzle website exercise solution codepad
468 23 Aug 2013   Three Interview Questions: Three interview questions exercise solution codepad
468 23 Aug 2013 Three Interview Questions: Three interview questions exercise solution codepad
438 07 May 2013   Three List Exercises: Three simple exercises on lists, for beginning programmers exercise solution codepad
248 24 Jun 2011 Thank God It’s Friday!: Three methods to calculate the day of the week exercise solution codepad
450 18 Jun 2013 3SUM: A classic of computer science: find three numbers in an array that sum to zero exercise solution codepad
408 18 Jan 2013 Triangle Trilemma: Determine if three points form a triangle, and classify it exercise solution codepad
80 27 Oct 2009   Three Quadratic Sorts: Bubble sort, selection sort and insertion sort exercise solution codepad
438 07 May 2013 Three List Exercises: Three simple exercises on lists, for beginning programmers exercise solution codepad
211 15 Feb 2011 Google Code Jam Qualification Round Africa 2010: Three simple exercises exercise solution codepad
323 16 Mar 2012 Sum Of Squares Of Two Largest Of Three Values: A simple problem from SICP with a variety of solutions exercise solution codepad
403 28 Dec 2012   Three Wise Men: Find the prices of their gifts exercise solution codepad
246 17 Jun 2011 Adi Shamir’s Threshold Scheme: Use cryptography to share a secret, by Graham Enos exercise solution codepad
129 20 Apr 2010 145 Puzzle: Build and evaluate expressions using the digits one through nine and the simple arithmetic operators exercise solution codepad
154 30 Jul 2010 Fibonacci Numbers: Three algorithms taking exponential time, linear time, and logarithmic time exercise solution codepad
426 26 Mar 2013 Google Code Jam Qualification Round Africa 2010, Revisited: Four solutions to a Google programming exercise, with various time complexities exercise solution codepad
303 06 Jan 2012 Pritchard’s Wheel Sieve: An alternative to the Sieve of Eratosthenes with a faster asymptotic time complexity exercise solution codepad
376 21 Sep 2012 Autumn Equinox: Calculate the length of the day; provides a time-handling library exercise solution codepad
464 09 Aug 2013 Bit Hacks: A time-honored tradition, and useful exercise solution codepad
467 20 Aug 2013 More Bit Hacks: A time-honored tradition, and useful exercise solution codepad
471 03 Sep 2013 Yet More Bit Hacks: A time-honored tradition, and useful exercise solution codepad
154 30 Jul 2010 Fibonacci Numbers: Three algorithms taking exponential time, linear time, and logarithmic time exercise solution codepad
128 16 Apr 2010 Expression Evaluation: Parse and evaluate an arithmetic expression with plus, minus, times, divide and parentheses exercise solution codepad
88 24 Nov 2009 Sunrise, Sunset: Calculate the times of sunrise and sunset on any day anywhere in the world exercise solution codepad
154 30 Jul 2010 Fibonacci Numbers: Three algorithms taking exponential time, linear time, and logarithmic time exercise solution codepad
353 03 Jul 2012 Chopping Words: Form a chain of words by removing letters one at a time exercise solution codepad
360 27 Jul 2012 Min Stack: Provide push and pop operations and find the minimum element in linear time exercise solution codepad
36 26 May 2009 Word Search Solver: A computerized implementation of a popular time-waster exercise solution codepad
238 20 May 0 ISBN Validation: Validate ISBN book numbers, and fetch author and title from the internet exercise solution codepad
393 23 Nov 2012   Tonelli-Shanks Algorithm: Compute modular square roots exercise solution codepad
82 03 Nov 2009 Quick Sort: Tony Hoare’s divide-and-conquer sorting algorithm exercise solution codepad
283 28 Oct 2011 Crypt: Simple encryption tool from Kernighan and Plauger exercise solution codepad
186 19 Nov 2010   Topological Sort: Order the edges of a graph by their precedence relationship exercise solution codepad
301 30 Dec 2011 Split: Split a list in two halves using the tortoise-and-hare algorithm exercise solution codepad
188 26 Nov 2010 Divisors And Totatives: The number-theoretic functions divisors, numdivs, sumdivs, totatives, and totient exercise solution codepad
188 26 Nov 2010 Divisors And Totatives: The number-theoretic functions divisors, numdivs, sumdivs, totatives, and totient exercise solution codepad
355 10 Jul 2012 Sieve For Totients: Find the totients of a large range of integers using a sieve exercise solution codepad
355 10 Jul 2012 Sieve For Totients: Find the totients of a large range of integers using a sieve exercise solution codepad
188 26 Nov 2010 Divisors And Totatives: The number-theoretic functions divisors, numdivs, sumdivs, totatives, and totient exercise solution codepad
118 12 Mar 2010 Traveling Salesman: Brute Force: Examine all possible permutations to find the least-cost tour exercise solution codepad
127 13 Apr 2010 Traveling Salesman: Minimum Spanning Tree: Heuristic guarantees solution within factor of two of optimal tour exercise solution codepad
293 02 Dec 2011 Knight Rider: Classic problem of the knight’s tour exercise solution codepad
279 11 Oct 2011   Tower Of Hanoi: Classic demonstration of recursion exercise solution codepad
335 27 Apr 2012   Trabb Pardo Knuth Algorithm: Trivial algorithm, used to explore an unfamiliar language exercise solution codepad
196 24 Dec 2010   Tracking Santa: How far does Santa travel on his annual journey? exercise solution codepad
464 09 Aug 2013 Bit Hacks: A time-honored tradition, and useful exercise solution codepad
467 20 Aug 2013 More Bit Hacks: A time-honored tradition, and useful exercise solution codepad
471 03 Sep 2013 Yet More Bit Hacks: A time-honored tradition, and useful exercise solution codepad
407 15 Jan 2013   Translate CSV To Html: Convert between tabular storage forms exercise solution codepad
28 28 Apr 2009 Morse Code: Translating the dots-and-dashes of Samuel Finley Breese Morse’s telegraph code exercise solution codepad
371 04 Sep 2012 Fountain Codes: Transmit files over a lossy channel exercise solution codepad
37 29 May 2009 Double Transposition Cipher: A simple and effective cipher, easy to perform by hand exercise solution codepad
20 31 Mar 2009 Rail-Fence Cipher: A simple transposition cipher exercise solution codepad
143 22 Jun 2010 Matrix Operations: Matrix addition, scalar multiplication, multiplication and transposition exercise solution codepad
109 09 Feb 2010 Numerical Integration: Quadrature by the rectangular, trapezoidal and Simpson’s method, including adaptive quadrature exercise solution codepad
118 12 Mar 2010   Traveling Salesman: Brute Force: Examine all possible permutations to find the least-cost tour exercise solution codepad
127 13 Apr 2010   Traveling Salesman: Minimum Spanning Tree: Heuristic guarantees solution within factor of two of optimal tour exercise solution codepad
119 16 Mar 2010   Traveling Salesman: Nearest Neighbor: A greedy heuristic that builds a path by always choosing the nearest unvisited point exercise solution codepad
196 24 Dec 2010 Tracking Santa: How far does Santa travel on his annual journey? exercise solution codepad
483 18 Oct 2013 Binary Tree Traversal: Traverse a binary tree in pre-order and post-order exercise solution codepad
483 18 Oct 2013 Binary Tree Traversal: Traverse a binary tree in pre-order and post-order exercise solution codepad
45 26 Jun 2009   Treaps: A randomized dictionary data structure, provides in-order access to key exercise solution codepad
24 14 Apr 2009 Google Treasure Hunt 2008 Puzzle 4: A prime-number puzzle exercise solution codepad
116 05 Mar 2010 Binary Search Tree: Classic data structure, providing insert, delete and lookup for ordered datatypes exercise solution codepad
127 13 Apr 2010 Traveling Salesman: Minimum Spanning Tree: Heuristic guarantees solution within factor of two of optimal tour exercise solution codepad
414 12 Feb 2013 Binary Search Tree: In-Order Predecessor And Successor: Find the previous and next items in a tree exercise solution codepad
483 18 Oct 2013 Binary Tree Traversal: Traverse a binary tree in pre-order and post-order exercise solution codepad
125 06 Apr 2010 Minimum Spanning Tree: Kruskal’s Algorithm: Find the minimum-cost tree that includes all the nodes in a graph exercise solution codepad
126 09 Apr 2010 Minimum Spanning Tree: Prim’s Algorithm: Find the minimum-cost tree that includes all the nodes in a graph exercise solution codepad
73 02 Oct 2009 Red-Black Trees: A purely functional dictionary data structure based on approximately-balanced trees exercise solution codepad
291 25 Nov 2011 AVL Trees: Basic implementation of the original balanced-tree algorithm exercise solution codepad
292 29 Nov 2011 AVL Trees, Extended: Add additional functionality to AVL trees exercise solution codepad
155 03 Aug 2010 Carl Hewitt’s Same-Fringe Problem: Do two trees have the same leaves, solved with streams (lazy lists) exercise solution codepad
292 29 Nov 2011 AVL Trees, Extended: Add additional functionality to AVL trees exercise solution codepad
73 02 Oct 2009 Red-Black Trees: A purely functional dictionary data structure based on approximately-balanced trees exercise solution codepad
125 06 Apr 2010 Minimum Spanning Tree: Kruskal’s Algorithm: Find the minimum-cost tree that includes all the nodes in a graph exercise solution codepad
126 09 Apr 2010 Minimum Spanning Tree: Prim’s Algorithm: Find the minimum-cost tree that includes all the nodes in a graph exercise solution codepad
218 11 Mar 2011 Lowest Common Ancestor: Find the lowest node in a binary search tree that is a common ancestor to two given nodes exercise solution codepad
483 18 Oct 2013 Binary Tree Traversal: Traverse a binary tree in pre-order and post-order exercise solution codepad
414 12 Feb 2013 Binary Search Tree: In-Order Predecessor And Successor: Find the previous and next items in a tree exercise solution codepad
132 30 Apr 2010 Integer Factorization: Combine trial division, Pollard’s rho and p−1 methods, and elliptic curves into a single factorization program exercise solution codepad
273 20 Sep 2011 Project Euler Problem 3: Thorough explanation of integer factorization by trial division exercise solution codepad
31 08 May 2009 Wheel Factorization: Find the factors of a number by a variant of trial division exercise solution codepad
408 18 Jan 2013 Triangle Trilemma: Determine if three points form a triangle, and classify it exercise solution codepad
103 19 Jan 2010 Flight Planning: Computing the navigation triangle, by Jos Koot exercise solution codepad
294 06 Dec 2011 Pascal’s Triangle: Display the binomial coefficients exercise solution codepad
408 18 Jan 2013   Triangle Trilemma: Determine if three points form a triangle, and classify it exercise solution codepad
374 14 Sep 2012   Tribonacci Numbers: A variant of fibonacci numbers exercise solution codepad
175 12 Oct 2010 Rotate An Array: A simple but tricky exercise solved by an algorithm from the folklore of computing exercise solution codepad
53 24 Jul 2009 Let’s Make A Deal!: Simulate a tricky probability calculation exercise solution codepad
25 17 Apr 2009 Spell Checking: A spell-checker in a trie-based dictionary exercise solution codepad
39 05 Jun 2009 Ternary Search Tries: Build a function library for handling ternary search tries exercise solution codepad
39 05 Jun 2009 Ternary Search Tries: Build a function library for handling ternary search tries exercise solution codepad
408 18 Jan 2013 Triangle Trilemma: Determine if three points form a triangle, and classify it exercise solution codepad
101 12 Jan 2010 Calculating Sines: Calculate sines using Taylor series and the triple-angle formula, by Bill Cruise exercise solution codepad
165 07 Sep 2010 Data Encryption Standard: Part 3: Triple DES and cryptographic hashing exercise solution codepad
385 26 Oct 2012 Pythatorean Triples: Generate primitive pythagorean triples by an ancient algorithm exercise solution codepad
385 26 Oct 2012 Pythatorean Triples: Generate primitive pythagorean triples by an ancient algorithm exercise solution codepad
335 27 Apr 2012 Trabb Pardo Knuth Algorithm: Trivial algorithm, used to explore an unfamiliar language exercise solution codepad
277 04 Oct 2011 Brainfuck: Interpreter for a Turing-line language exercise solution codepad
21 03 Apr 2009 Programming the Turing Machine: A turing-machine program to multiply two numbers exercise solution codepad
21 03 Apr 2009 Programming the Turing Machine: A turing-machine program to multiply two numbers exercise solution codepad
19 27 Mar 2009 A Turing Machine Simulator: An interpreter for a single-tape, multi-symbol turing machine exercise solution codepad
19 27 Mar 2009 A Turing Machine Simulator: An interpreter for a single-tape, multi-symbol turing machine exercise solution codepad
302 03 Jan 2012   Turtle Graphics: A minimal library of turtle graphics, as in the Logo language, implemented in PostScript exercise solution codepad
302 03 Jan 2012 Turtle Graphics: A minimal library of turtle graphics, as in the Logo language, implemented in PostScript exercise solution codepad
402 25 Dec 2012 The Twelve Days of Christmas: Count the gifts of Christmas exercise solution codepad
98 01 Jan 2010 Cal: Print a twelve-month calendar exercise solution codepad
304 10 Jan 2012 Thirteen Anagram: 12+1=11+2 and “twelve plus one equals eleven plus two” are both anagrams exercise solution codepad
332 17 Apr 2012   Twin Primes: A variant of the Sieve of Eratosthenes to find pairs of primes that differ by two exercise solution codepad
270 09 Sep 2011 Mersenne Twister: Random number generator with very long period, useful for simulations exercise solution codepad
391 16 Nov 2012 List Intersection And Union: Two algorithms on linked lists, with multiple solutions exercise solution codepad
349 19 Jun 2012 Digits Of E: Two algorithms that compute the digits of e, one bounded, the other unbounded exercise solution codepad
304 10 Jan 2012 Thirteen Anagram: 12+1=11+2 and “twelve plus one equals eleven plus two” are both anagrams exercise solution codepad
476 24 Sep 2013 Finding Digit Strings In Powers Of Two: A simple exercise from one of the competitive programming sites exercise solution codepad
367 21 Aug 2012 Two More Random Exercises: Two bad random number generators, the middle-square method and RANDU exercise solution codepad
237 17 May 2011   Two Bad Sorts: Stooge sort and bogosort are worse than quadratic exercise solution codepad
115 02 Mar 2010 Goldbach’s Conjecture: Every even number greater than two can be written as the sum of two primes exercise solution codepad
256 22 Jul 2011 Counting Primes Using Legendre’s Formula: Recreate Legendre’s two-century old calculation of the number of primes less than a million exercise solution codepad
430 09 Apr 2013 Cyclic Equality: Determine if two cyclic lists are equal exercise solution codepad
431 12 Apr 2013 Booth’s Algorithm: Determine of two cyclic lists are equal exercise solution codepad
455 05 Jul 2013 Weekdays Between Two Dates: Number of days between two dates, excluding Saturday and Sunday exercise solution codepad
455 05 Jul 2013 Weekdays Between Two Dates: Number of days between two dates, excluding Saturday and Sunday exercise solution codepad
366 17 Aug 2012 Two Random Exercises: Two exercises involving random numbers exercise solution codepad
212 18 Feb 2011   Two Factoring Games: Home primes and the Euclid-Mullin sequence exercise solution codepad
370 31 Aug 2012 Once In A Blue Moon: Find months with two full moons exercise solution codepad
378 02 Oct 2012 AKS Primality Prover, Part 1: Two functions used by the AKS primality prover exercise solution codepad
218 11 Mar 2011 Lowest Common Ancestor: Find the lowest node in a binary search tree that is a common ancestor to two given nodes exercise solution codepad
301 30 Dec 2011 Split: Split a list in two halves using the tortoise-and-hare algorithm exercise solution codepad
362 03 Aug 2012 SEND + MORE = MONEY, Part 2: Two hill-climbing solutions to a classic problem of recreational mathematics exercise solution codepad
255 19 Jul 2011 Sum Of Two Integers: Determine if two integers in a list sum to a target exercise solution codepad
255 19 Jul 2011 Sum Of Two Integers: Determine if two integers in a list sum to a target exercise solution codepad
201 11 Jan 2011   Two Integrals: The exponential and logarithmic integral, and an approximation for prime-pi exercise solution codepad
221 22 Mar 2011   Two Kaprekar Exercises: Kaprekar chains and Kaprekar numbers, from the Indian mathematician Dattaraya Ramchandra Kaprekar exercise solution codepad
323 16 Mar 2012 Sum Of Squares Of Two Largest Of Three Values: A simple problem from SICP with a variety of solutions exercise solution codepad
85 13 Nov 2009   Two linear sorts: Count sort and radix sort exploit the structure of integer keys exercise solution codepad
367 21 Aug 2012   Two More Random Exercises: Two bad random number generators, the middle-square method and RANDU exercise solution codepad
21 03 Apr 2009 Programming the Turing Machine: A turing-machine program to multiply two numbers exercise solution codepad
127 13 Apr 2010 Traveling Salesman: Minimum Spanning Tree: Heuristic guarantees solution within factor of two of optimal tour exercise solution codepad
194 17 Dec 2010 Polite Numbers: Write numbers as the sum of two or more consecutive integers exercise solution codepad
86 17 Nov 2009 Master Mind, Part 1: Referee a two-player game of deductive logic exercise solution codepad
100 08 Jan 2010 Nim: A two-player game of mathematical logic exercise solution codepad
156 06 Aug 2010   Two Powering Predicates: Determine if a number is a square or a prime power exercise solution codepad
469 27 Aug 2013 Two Sieving Problems: Use sieves to answer two prime-number questions exercise solution codepad
115 02 Mar 2010 Goldbach’s Conjecture: Every even number greater than two can be written as the sum of two primes exercise solution codepad
372 07 Sep 2012 The First Two Programs: Hello World and a fahrenheit / celsius conversion table exercise solution codepad
490 05 Nov 2013   Two Queues Make A Stack: Implement a stack using two queues exercise solution codepad
490 05 Nov 2013 Two Queues Make A Stack: Implement a stack using two queues exercise solution codepad
366 17 Aug 2012   Two Random Exercises: Two exercises involving random numbers exercise solution codepad
192 10 Dec 2010   Two Random Selections: Use random number to select fortunes and lotto winners exercise solution codepad
288 15 Nov 2011 Phil Harvey’s Puzle: partition {1,…,16} into two sets of equal size so each subset has the same sum, sum of squares and sum of cubes exercise solution codepad
469 27 Aug 2013   Two Sieving Problems: Use sieves to answer two prime-number questions exercise solution codepad
361 31 Jul 2012 SEND + MORE = MONEY, Part 1: Two slow solutions to a classic problem of recreational mathematics exercise solution codepad
235 10 May 2011 Comm: select or reject lines common to two sorted files exercise solution codepad
99 05 Jan 2010 The Sum Of Two Squares: A math puzzle with a solution by Dijkstra exercise solution codepad
491 08 Nov 2013   Two Stacks Make A Queue: Implement a queue using two stacks exercise solution codepad
491 08 Nov 2013 Two Stacks Make A Queue: Implement a queue using two stacks exercise solution codepad
268 02 Sep 2011   Two String Exercises: Remove duplicate characters, and squish adjacent blanks exercise solution codepad
310 31 Jan 2012 String Rotation: Determine if two strings are rotations of each other exercise solution codepad
81 30 Oct 2009   Two Sub-Quadratic Sorts: Comb sort and shell sort exercise solution codepad
422 12 Mar 2013 An Array Of Two Symbols: A learning experience for binary search exercise solution codepad
139 08 Jun 2010 Diff: Find the differences between two text files exercise solution codepad
155 03 Aug 2010 Carl Hewitt’s Same-Fringe Problem: Do two trees have the same leaves, solved with streams (lazy lists) exercise solution codepad
332 17 Apr 2012 Twin Primes: A variant of the Sieve of Eratosthenes to find pairs of primes that differ by two exercise solution codepad
448 11 Jun 2013 Longest Substring Of Two Unique Characters: Longest run of consecutive characters in a string that contains only two unique characters exercise solution codepad
448 11 Jun 2013 Longest Substring Of Two Unique Characters: Longest run of consecutive characters in a string that contains only two unique characters exercise solution codepad
380 09 Oct 2012   Two Word Games: Find words in a dictionary exercise solution codepad
416 19 Feb 2013 NPR Sunday Puzzle: Find two words containing the letters a, b, c, d, e and f exercise solution codepad
454 02 Jul 2013 Decoding Text-Speak: Expnd txt wth only intl vwls and n dbld ltrs exercise solution codepad
191 07 Dec 2010   Ullman’s Puzzle: It never hurts to sort exercise solution codepad
349 19 Jun 2012 Digits Of E: Two algorithms that compute the digits of e, one bounded, the other unbounded exercise solution codepad
58 11 Aug 2009   Uncle Bob’s Bowling Game Kata: Use pattern-matching on lists to solve a classic object-oriented programming exercise exercise solution codepad
65 04 Sep 2009 Ron’s Cipher #4: Stream cipher by Ron Rivest that underlies the SSL and WEP protocols exercise solution codepad
144 25 Jun 2010 Learn A New Language: Solve the exercise of your choice in an unfamiliar language exercise solution codepad
316 21 Feb 2012 Learn A New Language: Solve the exercise of your choice in an unfamiliar language exercise solution codepad
335 27 Apr 2012 Trabb Pardo Knuth Algorithm: Trivial algorithm, used to explore an unfamiliar language exercise solution codepad
320 06 Mar 2012 Union Route Cipher: Military cipher used successfully by Union forces in the American Civil War exercise solution codepad
320 06 Mar 2012   Union Route Cipher: Military cipher used successfully by Union forces in the American Civil War exercise solution codepad
391 16 Nov 2012 List Intersection And Union: Two algorithms on linked lists, with multiple solutions exercise solution codepad
448 11 Jun 2013 Longest Substring Of Two Unique Characters: Longest run of consecutive characters in a string that contains only two unique characters exercise solution codepad
448 11 Jun 2013 Longest Substring Of Two Unique Characters: Longest run of consecutive characters in a string that contains only two unique characters exercise solution codepad
384 23 Oct 2012   Universal Hash Function: Compute a hash for any native Scheme datatype exercise solution codepad
282 25 Oct 2011 Cksum: Unix checksum utility exercise solution codepad
465 13 Aug 2013   Unix Paths: Convert relative Unix path to absolute, by Robert Fisher exercise solution codepad
465 13 Aug 2013 Unix Paths: Convert relative Unix path to absolute, by Robert Fisher exercise solution codepad
14 10 Mar 2009 Word Frequencies: Our interpretation of a problem solved by a classic unix pipeline exercise solution codepad
136 28 May 2010 Printing Files: A simple program to list files, similar to the unix pr program exercise solution codepad
71 25 Sep 2009 Grep: Simple version of the classic unix regular-expression matching utility exercise solution codepad
363 07 Aug 2012 Make: The classic Unix utility for managing file dependencies exercise solution codepad
222 25 Mar 2011 Sum: The standard Unix V7 file-checksum command exercise solution codepad
298 20 Dec 2011 Hangman: Classic Unix V7 game for guessing words exercise solution codepad
281 21 Oct 2011 Sum, Revisited: SysV and Berkeley versions of the Unix V7 sum command exercise solution codepad
346 08 Jun 2012 Cat: The Unix V7 utility to catenate and print exercise solution codepad
92 08 Dec 2009 Word Count: An implementation of the unix wc program exercise solution codepad
436 30 Apr 2013 First Unrepeated Character In A String: Find the first character that appears only once in a string exercise solution codepad
119 16 Mar 2010 Traveling Salesman: Nearest Neighbor: A greedy heuristic that builds a path by always choosing the nearest unvisited point exercise solution codepad
137 01 Jun 2010   Unwrapping A Spiral: An exercise in recursion exercise solution codepad
240 27 May 2011 Upside Up: Numbers that read the same upside down exercise solution codepad
240 27 May 2011 Upside Up: Numbers that read the same upside down exercise solution codepad
240 27 May 2011   Upside Up: Numbers that read the same upside down exercise solution codepad
252 08 Jul 2011 Vedic Divisibility: Use a method of testing divisibility using the method of osculators developed in India exercise solution codepad
193 14 Dec 2010 Longest Duplicated Substring: Use a sorted suffix list exercise solution codepad
210 11 Feb 2011 Sums Of Powers: Use Bernoulli numbers to quickly compute sums of powers exercise solution codepad
246 17 Jun 2011 Adi Shamir’s Threshold Scheme: Use cryptography to share a secret, by Graham Enos exercise solution codepad
378 02 Oct 2012 AKS Primality Prover, Part 1: Two functions used by the AKS primality prover exercise solution codepad
286 08 Nov 2011 Improved Standard Continuation: An improved version of elliptic curve factorization, widely used in current practice exercise solution codepad
27 24 Apr 2009 Word Hy-phen-a-tion By Com-pu-ter: Frank Liang’s hyphenation algorithm, used in TeX exercise solution codepad
76 13 Oct 2009 Bifid: A simple but effective fractionating cipher, never used militarily exercise solution codepad
320 06 Mar 2012 Union Route Cipher: Military cipher used successfully by Union forces in the American Civil War exercise solution codepad
335 27 Apr 2012 Trabb Pardo Knuth Algorithm: Trivial algorithm, used to explore an unfamiliar language exercise solution codepad
270 09 Sep 2011 Mersenne Twister: Random number generator with very long period, useful for simulations exercise solution codepad
179 26 Oct 2010 Benford’s Law: A useful mathematical oddity, and an example of text file databases exercise solution codepad
464 09 Aug 2013 Bit Hacks: A time-honored tradition, and useful exercise solution codepad
467 20 Aug 2013 More Bit Hacks: A time-honored tradition, and useful exercise solution codepad
471 03 Sep 2013 Yet More Bit Hacks: A time-honored tradition, and useful exercise solution codepad
356 13 Jul 2012 The Evolution Of Flibs: Use genetic programming to build a finite state machine exercise solution codepad
373 11 Sep 2012 The Sum Of The First Billion Primes: Write a prime generator, and use it exercise solution codepad
15 13 Mar 2009 Friday, the Thirteenth: A small calendar library, and a simple use of it exercise solution codepad
58 11 Aug 2009 Uncle Bob’s Bowling Game Kata: Use pattern-matching on lists to solve a classic object-oriented programming exercise exercise solution codepad
192 10 Dec 2010 Two Random Selections: Use random number to select fortunes and lotto winners exercise solution codepad
469 27 Aug 2013 Two Sieving Problems: Use sieves to answer two prime-number questions exercise solution codepad
381 12 Oct 2012 Birthday Paradox: Use simulation to demonstrate the birthday paradox exercise solution codepad
95 18 Dec 2009 Calculating Logarithms: Use the methods of Newton and Euler to calculate square roots and logarithms exercise solution codepad
185 16 Nov 2010 RSA Cryptography: The original public-key cryptographic system, still in wide use exercise solution codepad
63 28 Aug 2009 String Search: Boyer-Moore: Search for a pattern in a text using a fast and simple algorithm exercise solution codepad
16 17 Mar 2009 Comma-Separated Values: Retrieve records from a comma-separated values file using a finite-state machine exercise solution codepad
11 27 Feb 2009 Mark V. Shaney: Generate parodies of a text using a Markov chain exercise solution codepad
278 07 Oct 2011 Sieve of Sundaram: Sieving for prime numbers using a method from India exercise solution codepad
117 09 Mar 2010 Lexicographic Permutations: Continually generate the next permutation using an algorithm by Dijkstra exercise solution codepad
62 25 Aug 2009 String Search: Knuth-Morris-Pratt: Search for a pattern in a text using an O(n) algorithm exercise solution codepad
314 14 Feb 2012 Divisors: Find divisors using a sieve exercise solution codepad
355 10 Jul 2012 Sieve For Totients: Find the totients of a large range of integers using a sieve exercise solution codepad
102 15 Jan 2010 Three Binary Algorithms: Multiplication, division and greatest common divisor using binary arithmetic exercise solution codepad
163 31 Aug 2010 Data Encryption Standard: Part 1: Basic block enciphering and deciphering using DES exercise solution codepad
183 09 Nov 2010 Subset Sums: Third level of the Greplin Programming Challenge, using dynamic programming and memoization exercise solution codepad
326 27 Mar 2012 Subset Sum: Solve a classic NP problem using dynamic programming exercise solution codepad
145 29 Jun 2010 World Cup Prognostication: Simulate the knockout stage using elo ratings exercise solution codepad
458 19 Jul 2013 J K Rowling: Identify an author using forensic linguistics exercise solution codepad
256 22 Jul 2011 Counting Primes Using Legendre’s Formula: Recreate Legendre’s two-century old calculation of the number of primes less than a million exercise solution codepad
220 18 Mar 2011 Loopy Loops: Print the numbers from 1 to 1000 without using loops or conditionals exercise solution codepad
228 15 Apr 2011 Partition Numbers: Calculate the partition numbers, using memoization via growing arrays exercise solution codepad
130 23 Apr 2010 Modern Elliptic Curve Factorization, Part 1: Elliptic arithmetic using Montgomery’s parameterization exercise solution codepad
131 27 Apr 2010 Modern Elliptic Curve Factorization, Part 2: Elliptic arithmetic using Montgomery’s parameterization exercise solution codepad
418 26 Feb 2013 An Odd Way To Square: Square a number without using multiplication or exponentiation exercise solution codepad
299 23 Dec 2011 Koch’s Snowflake: Draw a fractal snowflake using PostScript exercise solution codepad
357 17 Jul 2012 Breshenham’s Line-Drawing Algorithm: Draw straight lines using raster graphics exercise solution codepad
101 12 Jan 2010 Calculating Sines: Calculate sines using Taylor series and the triple-angle formula, by Bill Cruise exercise solution codepad
129 20 Apr 2010 145 Puzzle: Build and evaluate expressions using the digits one through nine and the simple arithmetic operators exercise solution codepad
90 01 Dec 2009 Wolves And Rabbits: Analyze population dynamics using the Lotka-Volterra equations exercise solution codepad
226 08 Apr 2011 Credit Card Validation: Validate decimal numbers using the Luhn algorithm exercise solution codepad
252 08 Jul 2011 Vedic Divisibility: Use a method of testing divisibility using the method of osculators developed in India exercise solution codepad
485 25 Oct 2013 Pessimal Algorithms And Simplexity Analysis: The slowsort algorithm using the multiply and surrender algorithms exercise solution codepad
318 28 Feb 2012 Next Greater Permutation Of Digits: Find the smallest number larger than the input number using the same digits as the input number exercise solution codepad
301 30 Dec 2011 Split: Split a list in two halves using the tortoise-and-hare algorithm exercise solution codepad
490 05 Nov 2013 Two Queues Make A Stack: Implement a stack using two queues exercise solution codepad
491 08 Nov 2013 Two Stacks Make A Queue: Implement a queue using two stacks exercise solution codepad
363 07 Aug 2012 Make: The classic Unix utility for managing file dependencies exercise solution codepad
346 08 Jun 2012 Cat: The Unix V7 utility to catenate and print exercise solution codepad
230 22 Apr 2011 Xref: Programmer’s cross-reference utility exercise solution codepad
282 25 Oct 2011 Cksum: Unix checksum utility exercise solution codepad
71 25 Sep 2009 Grep: Simple version of the classic unix regular-expression matching utility exercise solution codepad
222 25 Mar 2011 Sum: The standard Unix V7 file-checksum command exercise solution codepad
298 20 Dec 2011 Hangman: Classic Unix V7 game for guessing words exercise solution codepad
281 21 Oct 2011 Sum, Revisited: SysV and Berkeley versions of the Unix V7 sum command exercise solution codepad
346 08 Jun 2012 Cat: The Unix V7 utility to catenate and print exercise solution codepad
226 08 Apr 2011 Credit Card Validation: Validate decimal numbers using the Luhn algorithm exercise solution codepad
238 20 May 0 ISBN Validation: Validate ISBN book numbers, and fetch author and title from the internet exercise solution codepad
296 13 Dec 2011   Validating Telephone Numbers: An exercise in input validation exercise solution codepad
296 13 Dec 2011 Validating Telephone Numbers: An exercise in input validation exercise solution codepad
226 08 Apr 2011 Credit Card Validation: Validate decimal numbers using the Luhn algorithm exercise solution codepad
238 20 May 0 ISBN Validation: Validate ISBN book numbers, and fetch author and title from the internet exercise solution codepad
287 11 Nov 2011 Generators: Write functions that yield a value, but can then be re-entered exercise solution codepad
265 23 Aug 2011 Knapsack: Fill a knapsack to maximize the value of its contents exercise solution codepad
75 09 Oct 2009 Calculating Pi: Calculate the value of π by monte-carlo methods and by an Archimedean method exercise solution codepad
423 15 Mar 2013 Buffon’s Needle: Compute the value of π with a simulation exercise solution codepad
323 16 Mar 2012 Sum Of Squares Of Two Largest Of Three Values: A simple problem from SICP with a variety of solutions exercise solution codepad
16 17 Mar 2009 Comma-Separated Values: Retrieve records from a comma-separated values file using a finite-state machine exercise solution codepad
16 17 Mar 2009 Comma-Separated Values: Retrieve records from a comma-separated values file using a finite-state machine exercise solution codepad
457 16 Jul 2013   Vampire Numbers: Numbers x * y that consist of the digits of x and y exercise solution codepad
472 06 Sep 2013 Cartesian Product: Cross-product of the items in a variable-length list of variable-length lists exercise solution codepad
472 06 Sep 2013 Cartesian Product: Cross-product of the items in a variable-length list of variable-length lists exercise solution codepad
374 14 Sep 2012 Tribonacci Numbers: A variant of fibonacci numbers exercise solution codepad
204 21 Jan 0 Pollard Rho, Revisited: Richard Brent’s variant of John Pollard’s rho algorithm for integer factorization exercise solution codepad
332 17 Apr 2012 Twin Primes: A variant of the Sieve of Eratosthenes to find pairs of primes that differ by two exercise solution codepad
31 08 May 2009 Wheel Factorization: Find the factors of a number by a variant of trial division exercise solution codepad
442 21 May 2013 Coin Change, Part 2: A variant on the classic coin change problem exercise solution codepad
443 24 May 2013 Coin Change, Part 3: Another variant on the classic coin change problem exercise solution codepad
432 16 Apr 2013 Date Formatting: Neatly write a date in a variety of formats exercise solution codepad
323 16 Mar 2012 Sum Of Squares Of Two Largest Of Three Values: A simple problem from SICP with a variety of solutions exercise solution codepad
177 19 Oct 2010 Text File Databases: Part 1: Functions to read records with fields in various formats exercise solution codepad
178 22 Oct 2010 Text File Databases: Part 2: Various functions to process records with fields exercise solution codepad
426 26 Mar 2013 Google Code Jam Qualification Round Africa 2010, Revisited: Four solutions to a Google programming exercise, with various time complexities exercise solution codepad
252 08 Jul 2011   Vedic Divisibility: Use a method of testing divisibility using the method of osculators developed in India exercise solution codepad
475 20 Sep 2013 McCarthy’s 91 Function: A recursive function designed as a test case for formal verification exercise solution codepad
382 16 Oct 2012   Version Control: Economically store multiple versions of text files exercise solution codepad
140 11 Jun 2010 N-Queens: Our version of a classic algorithmic exercise exercise solution codepad
424 19 Mar 2013 Quadratic Sieve: Basic version of a powerful factoring algorithm exercise solution codepad
341 18 May 2012 Formatted Numeric Output: A minimal version of C’s printf function exercise solution codepad
286 08 Nov 2011 Improved Standard Continuation: An improved version of elliptic curve factorization, widely used in current practice exercise solution codepad
300 27 Dec 2011 Cheating Hangman: A version of Hangman that nearly always wins exercise solution codepad
428 02 Apr 2013 Quadratic Sieve With Large Primes: A (slightly) improved version of the basic quadratic sieve exercise solution codepad
451 21 Jun 2013 Multiple Polynomial Quadratic Sieve: A greatly improved version of the basic quadratic sieve exercise solution codepad
71 25 Sep 2009 Grep: Simple version of the classic unix regular-expression matching utility exercise solution codepad
97 29 Dec 2009 A Statisticle Speling Korrecter: Peter Norvig’s version of the Google spelling suggester exercise solution codepad
112 19 Feb 2010 Sieve Of Atkin, Improved: A faster version of the Sieve of Atkin exercise solution codepad
382 16 Oct 2012 Version Control: Economically store multiple versions of text files exercise solution codepad
281 21 Oct 2011 Sum, Revisited: SysV and Berkeley versions of the Unix V7 sum command exercise solution codepad
435 26 Apr 2013 Correct Horse Battery Staple, Improved: Fix a horrible bug in the original version exercise solution codepad
199 04 Jan 2011 Dijkstra’s Algorithm: Find the shortest path to all vertices of a graph from a single source, guest written by Graham Enos exercise solution codepad
161 24 Aug 2010 Daniel Shanks’ Square Form Factorization Algorithm: A simple and very fast factorization algorithm for integers between 105 and 1020 exercise solution codepad
396 04 Dec 2012 Median Of Five: A very fast method to compute the median of five items exercise solution codepad
270 09 Sep 2011 Mersenne Twister: Random number generator with very long period, useful for simulations exercise solution codepad
55 31 Jul 2009 Elliptic Curve Factorization: A very simple implementation of elliptic curve factorization exercise solution codepad
228 15 Apr 2011 Partition Numbers: Calculate the partition numbers, using memoization via growing arrays exercise solution codepad
43 19 Jun 2009 Monte Carlo Factorization: Integer factorization via Pollard’s rho algorithm exercise solution codepad
12 03 Mar 2009 Creation: Cryptanalysis of a Vigenère cipher exercise solution codepad
329 06 Apr 2012   Voters: Watch voting blocks migrate on the screen exercise solution codepad
329 06 Apr 2012 Voters: Watch voting blocks migrate on the screen exercise solution codepad
297 16 Dec 2011 Majority Voting: Determine the results of an election exercise solution codepad
11 27 Feb 2009 Mark V. Shaney: Generate parodies of a text using a Markov chain exercise solution codepad
454 02 Jul 2013 Decoding Text-Speak: Expnd txt wth only intl vwls and n dbld ltrs exercise solution codepad
280 18 Oct 2011 The Wall: Ray Panko’s spreadsheet exercise exercise solution codepad
320 06 Mar 2012 Union Route Cipher: Military cipher used successfully by Union forces in the American Civil War exercise solution codepad
57 07 Aug 2009 ADFGX: A classic German military field cipher from the First World War exercise solution codepad
329 06 Apr 2012 Voters: Watch voting blocks migrate on the screen exercise solution codepad
331 13 Apr 2012 McNugget Numbers, Revisited: The classic coin problem in disguise, how to count the number of ways to make change exercise solution codepad
441 17 May 2013 Coin Change, Part 1: Classic problem to count the ways to make change exercise solution codepad
383 19 Oct 2012 Prime Partitions: Compute the number of ways to sum primes to a target exercise solution codepad
415 15 Feb 2013 Facebook Hacker Cup 2013, Round 1, Problem 1: Count the ways to win a card game exercise solution codepad
418 26 Feb 2013 An Odd Way To Square: Square a number without using multiplication or exponentiation exercise solution codepad
92 08 Dec 2009 Word Count: An implementation of the unix wc program exercise solution codepad
94 15 Dec 2009 Affine-Shift Cipher: A cryptographically weak but mathematically interesting cipher exercise solution codepad
324 20 Mar 2012 Factoring Multiple RSA Keys: Exploit a key-generation weakness to factor RSA keys exercise solution codepad
182 05 Nov 2010   Weather Forecast: Fetch the weather forecast from the internet exercise solution codepad
182 05 Nov 2010 Weather Forecast: Fetch the weather forecast from the internet exercise solution codepad
439 10 May 2013 MindCipher: Three exercises from the MindCipher puzzle website exercise solution codepad
455 05 Jul 2013   Weekdays Between Two Dates: Number of days between two dates, excluding Saturday and Sunday exercise solution codepad
174 08 Oct 2010 Zeller’s Congruence: Calculate the day of the week for a given date exercise solution codepad
248 24 Jun 2011 Thank God It’s Friday!: Three methods to calculate the day of the week exercise solution codepad
84 10 Nov 2009 Merge Sort: A fast, stable sorting algorithm, especially well-suited to linked lists exercise solution codepad
65 04 Sep 2009 Ron’s Cipher #4: Stream cipher by Ron Rivest that underlies the SSL and WEP protocols exercise solution codepad
31 08 May 2009   Wheel Factorization: Find the factors of a number by a variant of trial division exercise solution codepad
303 06 Jan 2012 Pritchard’s Wheel Sieve: An alternative to the Sieve of Eratosthenes with a faster asymptotic time complexity exercise solution codepad
172 01 Oct 2010 Oban Numbers: Numbers that omit the letter “o” when spelled, and a function to convert numbers to words exercise solution codepad
181 02 Nov 2010 Emirps: Prime numbers that are prime when their digits are reversed, but not palindromic exercise solution codepad
313 10 Feb 2012 Search In An Ascending Matrix: Find a number in a matrix where both rows and columns are sorted in ascending order exercise solution codepad
461 30 Jul 2013   Who Buys The Croissants?: Simulate an important Friday-morning question exercise solution codepad
42 16 Jun 2009   Who Owns The Zebra?: A logic puzzle, solved by embedding a Prolog-like logic system in Scheme exercise solution codepad
286 08 Nov 2011 Improved Standard Continuation: An improved version of elliptic curve factorization, widely used in current practice exercise solution codepad
185 16 Nov 2010 RSA Cryptography: The original public-key cryptographic system, still in wide use exercise solution codepad
138 04 Jun 2010   Williams’ P+1 Factorization Algorithm: A factorization algorithm, similar to Pollard’s p−1 algorithm exercise solution codepad
415 15 Feb 2013 Facebook Hacker Cup 2013, Round 1, Problem 1: Count the ways to win a card game exercise solution codepad
213 22 Feb 2011 Sliding Window Minimum: List of minimums sliding across an input list exercise solution codepad
192 10 Dec 2010 Two Random Selections: Use random number to select fortunes and lotto winners exercise solution codepad
3 19 Feb 2009 Bingo: Calculate the probability of winning at Bingo exercise solution codepad
300 27 Dec 2011 Cheating Hangman: A version of Hangman that nearly always wins exercise solution codepad
397 07 Dec 2012   Wirth Problem 15.12: Compute a sequence of numbers defined by Wirth exercise solution codepad
397 07 Dec 2012 Wirth Problem 15.12: Compute a sequence of numbers defined by Wirth exercise solution codepad
398 11 Dec 2012 Stepwise Program Development: A Heuristic Algorithm: A backtracking solution to a problem of Wirth exercise solution codepad
403 28 Dec 2012 Three Wise Men: Find the prices of their gifts exercise solution codepad
127 13 Apr 2010 Traveling Salesman: Minimum Spanning Tree: Heuristic guarantees solution within factor of two of optimal tour exercise solution codepad
342 22 May 2012 Hamming Codes: Send messages over a noisy channel without error exercise solution codepad
444 28 May 2013 Modular Multiplication Without Overflow: Perform modular multiplication without overflowing an integer datatype exercise solution codepad
444 28 May 2013 Modular Multiplication Without Overflow: Perform modular multiplication without overflowing an integer datatype exercise solution codepad
220 18 Mar 2011 Loopy Loops: Print the numbers from 1 to 1000 without using loops or conditionals exercise solution codepad
418 26 Feb 2013 An Odd Way To Square: Square a number without using multiplication or exponentiation exercise solution codepad
33 15 May 2009 Cellular Automata: Linear cellular automata as described by Stephen Wolfram in his book A New Kind of Science exercise solution codepad
232 29 Apr 2011 Rule 30 RNG: The random number generator from Mathematica, based on Stephen Wolfram’s Rule 30 cellular automata exercise solution codepad
90 01 Dec 2009   Wolves And Rabbits: Analyze population dynamics using the Lotka-Volterra equations exercise solution codepad
17 20 Mar 2009 Dodgson's Doublets: A word game invented by the author of Alice in Wonderland exercise solution codepad
262 12 Aug 2011   Word Breaks: Insert spaces between words: applepie => apple pie exercise solution codepad
92 08 Dec 2009   Word Count: An implementation of the unix wc program exercise solution codepad
149 13 Jul 2010   Word Cube: A game to form words from a given set of letters exercise solution codepad
14 10 Mar 2009   Word Frequencies: Our interpretation of a problem solved by a classic unix pipeline exercise solution codepad
17 20 Mar 2009 Dodgson's Doublets: A word game invented by the author of Alice in Wonderland exercise solution codepad
380 09 Oct 2012 Two Word Games: Find words in a dictionary exercise solution codepad
27 24 Apr 2009   Word Hy-phen-a-tion By Com-pu-ter: Frank Liang’s hyphenation algorithm, used in TeX exercise solution codepad
231 26 Apr 2011 Miscellanea: FizzBuzz, Prime Words, and Split A List exercise solution codepad
262 12 Aug 2011 Word Breaks: Insert spaces between words: applepie => apple pie exercise solution codepad
353 03 Jul 2012 Chopping Words: Form a chain of words by removing letters one at a time exercise solution codepad
416 19 Feb 2013 NPR Sunday Puzzle: Find two words containing the letters a, b, c, d, e and f exercise solution codepad
36 26 May 2009   Word Search Solver: A computerized implementation of a popular time-waster exercise solution codepad
353 03 Jul 2012 Chopping Words: Form a chain of words by removing letters one at a time exercise solution codepad
334 24 Apr 2012 Rhyming Dictionary: Find rhyming words for poets exercise solution codepad
149 13 Jul 2010 Word Cube: A game to form words from a given set of letters exercise solution codepad
380 09 Oct 2012 Two Word Games: Find words in a dictionary exercise solution codepad
217 08 Mar 2011 Reverse Words: Reverse the words in an input string exercise solution codepad
233 03 May 2011 Squaring The Bishop: Charles Babbage’s game of word squares exercise solution codepad
217 08 Mar 2011 Reverse Words: Reverse the words in an input string exercise solution codepad
66 08 Sep 2009 Porter Stemming: Martin Porter’s algorithm for removing suffices from word stems exercise solution codepad
172 01 Oct 2010 Oban Numbers: Numbers that omit the letter “o” when spelled, and a function to convert numbers to words exercise solution codepad
298 20 Dec 2011 Hangman: Classic Unix V7 game for guessing words exercise solution codepad
295 09 Dec 2011 McNugget Numbers: A simple problem, worked out on a napkin exercise solution codepad
372 07 Sep 2012 The First Two Programs: Hello World and a fahrenheit / celsius conversion table exercise solution codepad
145 29 Jun 2010   World Cup Prognostication: Simulate the knockout stage using elo ratings exercise solution codepad
88 24 Nov 2009 Sunrise, Sunset: Calculate the times of sunrise and sunset on any day anywhere in the world exercise solution codepad
57 07 Aug 2009 ADFGX: A classic German military field cipher from the First World War exercise solution codepad
237 17 May 2011 Two Bad Sorts: Stooge sort and bogosort are worse than quadratic exercise solution codepad
432 16 Apr 2013 Date Formatting: Neatly write a date in a variety of formats exercise solution codepad
453 28 Jun 2013 A Programming Puzzle: Write a function f so that f(f(n)) = -n for all integers n. exercise solution codepad
354 06 Jul 2012 Fractran: Write an interpreter for John Horton Conway’s language Fractran exercise solution codepad
358 20 Jul 2012 Infix Expression Evaluation: Write a parser to evaluate arithmetic expressions exercise solution codepad
373 11 Sep 2012 The Sum Of The First Billion Primes: Write a prime generator, and use it exercise solution codepad
189 30 Nov 2010 Form Letters: Merge a schema and a data file to write form letters exercise solution codepad
287 11 Nov 2011 Generators: Write functions that yield a value, but can then be re-entered exercise solution codepad
194 17 Dec 2010 Polite Numbers: Write numbers as the sum of two or more consecutive integers exercise solution codepad
13 06 Mar 2009 Roman Numerals: A library to read and write Roman numerals exercise solution codepad
254 15 Jul 2011 JSON: Writing Output: The other side of JSAON exercise solution codepad
115 02 Mar 2010 Goldbach’s Conjecture: Every even number greater than two can be written as the sum of two primes exercise solution codepad
199 04 Jan 2011 Dijkstra’s Algorithm: Find the shortest path to all vertices of a graph from a single source, guest written by Graham Enos exercise solution codepad
18 23 Mar 2009 Binary Search: A simple task, easy to get wrong exercise solution codepad
454 02 Jul 2013 Decoding Text-Speak: Expnd txt wth only intl vwls and n dbld ltrs exercise solution codepad
457 16 Jul 2013 Vampire Numbers: Numbers x * y that consist of the digits of x and y exercise solution codepad
460 26 Jul 2013 Find X[i] = i In An Array: Find an array element equal to its index exercise solution codepad
305 13 Jan 2012 Excel’s XIRR Function: Numerical calculation of a derivative exercise solution codepad
224 01 Apr 2011 Maximum Difference In An Array: Find maximum Xj &minus Xi, with ij exercise solution codepad
224 01 Apr 2011 Maximum Difference In An Array: Find maximum Xj &minus Xi, with ij exercise solution codepad
224 01 Apr 2011 Maximum Difference In An Array: Find maximum Xj &minus Xi, with ij exercise solution codepad
230 22 Apr 2011   Xref: Programmer’s cross-reference utility exercise solution codepad
457 16 Jul 2013 Vampire Numbers: Numbers x * y that consist of the digits of x and y exercise solution codepad
404 01 Jan 2013 Happy New Year!: Find expressions that evaluate to 2013 exercise solution codepad
147 06 Jul 2010 Chaocipher: First look at a ninety-two year old autokey-type cipher exercise solution codepad
46 30 Jun 2009 Steve Yegge’s Phone-Screen Coding Exercises: A simple set of programming exercises based on a blog entry by Steve Yegge exercise solution codepad
46 30 Jun 2009 Steve Yegge’s Phone-Screen Coding Exercises: A simple set of programming exercises based on a blog entry by Steve Yegge exercise solution codepad
409 22 Jan 2013 Splay Heaps: Yet another implementation of priority queues exercise solution codepad
471 03 Sep 2013   Yet More Bit Hacks: A time-honored tradition, and useful exercise solution codepad
287 11 Nov 2011 Generators: Write functions that yield a value, but can then be re-entered exercise solution codepad
144 25 Jun 2010 Learn A New Language: Solve the exercise of your choice in an unfamiliar language exercise solution codepad
316 21 Feb 2012 Learn A New Language: Solve the exercise of your choice in an unfamiliar language exercise solution codepad
388 06 Nov 2012 Fix Something Annoying: Take control of your computing environment by fixing something that annoys you exercise solution codepad
388 06 Nov 2012 Fix Something Annoying: Take control of your computing environment by fixing something that annoys you exercise solution codepad
457 16 Jul 2013 Vampire Numbers: Numbers x * y that consist of the digits of x and y exercise solution codepad
457 16 Jul 2013 Vampire Numbers: Numbers x * y that consist of the digits of x and y exercise solution codepad
457 16 Jul 2013 Vampire Numbers: Numbers x * y that consist of the digits of x and y exercise solution codepad
208 04 Feb 2011 Excel Columns: Numbers as in Excel column names, A=1, Z=26, IV=256 exercise solution codepad
42 16 Jun 2009 Who Owns The Zebra?: A logic puzzle, solved by embedding a Prolog-like logic system in Scheme exercise solution codepad
359 24 Jul 2012   Zeckendorf Representation: Find the fibonacci numbers that sum to a given number exercise solution codepad
174 08 Oct 2010   Zeller’s Congruence: Calculate the day of the week for a given date exercise solution codepad
365 14 Aug 2012 4SUM: Find four numbers in an array that sum to zero exercise solution codepad
450 18 Jun 2013 3SUM: A classic of computer science: find three numbers in an array that sum to zero exercise solution codepad