- Published on
Project Euler
- Authors
- Name
- Nicolas Justin
- @onicolasjustin
What is the Project Euler?
Project Euler is a series of challenging math/computer programming problems that will require more than just mathematical understanding to solve.
While math will help you come up with elegant and efficient methods, the use of a computer and programming skills will be needed to solve most problems.
Who are the problems for?
The intended audience include students whose curiosity goes beyond the traditional curriculum, seeking enriching challenges, adults whose training was not predominantly in the area of Mathematics, but who find fascination in subjects related to it.
In addition, professionals determined to keep their problem-solving skills and their affinity for Mathematics at the forefront.
As of the date of this publication or its last update, Project Euler has a remarkable community, surpassing 1,250,000 million registered members, who have solved at least one problem.
Additionally, registered members represent 220 locations around the world, and are collectively using 112 different programming languages to solve problems.
Can anyone solve the problems?
The range of challenges presents variations in difficulty, and for many, the experience is an inductive cascading learning process. In other words, solving a problem opens doors to new concepts, which in turn allow solving previously inaccessible challenges. Therefore, the dedicated participant will advance gradually but steadily, overcoming the proposed problems one by one.
Project Euler exists to encourage, challenge, and develop the skills and enjoyment of anyone with an interest in the fascinating world of mathematics.
About this series
In order to improve my math/computer programming problem solving skills, I will start a series of posts where each one will be the presentation, solution and explanation of a problem.
What challenges have already been resolved?
All the challenges below were taken from the Project Euler and freeCodeCamp archives, whenever I solve a problem I will update this list.
Problems 1 to 100
In this first set of challenges, you will use mathematical concepts like the Fibonacci sequence, prime number theory, and combinatorics to write efficient algorithms to solve these problems.
- Problem 1: Multiples of 3 and 5
- Problem 2: Even Fibonacci Numbers
- Problem 3: Largest prime factor
- Problem 4: Largest palindrome product
- Problem 5: Smallest multiple
- Problem 6: Sum square difference
- Problem 7: 10001st prime
- Problem 8: Largest product in a series
- Problem 9: Special Pythagorean triplet
- Problem 10: Summation of primes
- Problem 11: Largest product in a grid
- Problem 12: Highly divisible triangular number
- Problem 13: Large sum
- Problem 14: Longest Collatz sequence
- Problem 15: Lattice paths
- Problem 16: Power digit sum
- Problem 17: Number letter counts
- Problem 18: Maximum path sum I
- Problem 19: Counting Sundays
- Problem 20: Factorial digit sum
- Problem 21: Amicable numbers
- Problem 22: Names scores
- Problem 23: Non-abundant sums
- Problem 24: Lexicographic permutations
- Problem 25: 1000-digit Fibonacci number
- Problem 26: Reciprocal cycles
- Problem 27: Quadratic primes
- Problem 28: Number spiral diagonals
- Problem 29: Distinct powers
- Problem 30: Digit n powers
- Problem 31: Coin sums
- Problem 32: Pandigital products
- Problem 33: Digit cancelling fractions
- Problem 34: Digit factorials
- Problem 35: Circular primes
- Problem 36: Double-base palindromes
- Problem 37: Truncatable primes
- Problem 38: Pandigital multiples
- Problem 39: Integer right triangles
- Problem 40: Champernowne's constant
- Problem 41: Pandigital prime
- Problem 42: Coded triangle numbers
- Problem 43: Sub-string divisibility
- Problem 44: Pentagon numbers
- Problem 45: Triangular, pentagonal, and hexagonal
- Problem 46: Goldbach's other conjecture
- Problem 47: Distinct primes factors
- Problem 48: Self powers
- Problem 49: Prime permutations
- Problem 50: Consecutive prime sum
- Problem 51: Prime digit replacements
- Problem 52: Permuted multiples
- Problem 53: Combinatoric selections
- Problem 54: Poker hands
- Problem 55: Lychrel numbers
- Problem 56: Powerful digit sum
- Problem 57: Square root convergents
- Problem 58: Spiral primes
- Problem 59: XOR decryption
- Problem 60: Prime pair sets
- Problem 61: Cyclical figurate numbers
- Problem 62: Cubic permutations
- Problem 63: Powerful digit counts
- Problem 64: Odd period square roots
- Problem 65: Convergents of e
- Problem 66: Diophantine equation
- Problem 67: Maximum path sum II
- Problem 68: Magic 5-gon ring
- Problem 69: Totient maximum
- Problem 70: Totient permutation
- Problem 71: Ordered fractions
- Problem 72: Counting fractions
- Problem 73: Counting fractions in a range
- Problem 74: Digit factorial chains
- Problem 75: Singular integer right triangles
- Problem 76: Counting summations
- Problem 77: Prime summations
- Problem 78: Coin partitions
- Problem 79: Passcode derivation
- Problem 80: Square root digital expansion
- Problem 81: Path sum: two ways
- Problem 82: Path sum: three ways
- Problem 83: Path sum: four ways
- Problem 84: Monopoly odds
- Problem 85: Counting rectangles
- Problem 86: Cuboid route
- Problem 87: Prime power triples
- Problem 88: Product-sum numbers
- Problem 89: Roman numerals
- Problem 90: Cube digit pairs
- Problem 91: Right triangles with integer coordinates
- Problem 92: Square digit chains
- Problem 93: Arithmetic expressions
- Problem 94: Almost equilateral triangles
- Problem 95: Amicable chains
- Problem 96: Su Doku
- Problem 97: Large non-Mersenne prime
- Problem 98: Anagramic squares
- Problem 99: Largest exponential
- Problem 100: Arranged probability
Problems 101 to 200
In this set of challenges, you will build upon the skills you learned in the first part of the course and use more advanced concepts like vector computation, Pascal's pyramid, and the RSA algorithm to solve these problems efficiently.
- Problem 101: Optimum polynomial
- Problem 102: Triangle containment
- Problem 103: Special subset sums: optimum
- Problem 104: Pandigital Fibonacci ends
- Problem 105: Special subset sums: testing
- Problem 106: Special subset sums: meta-testing
- Problem 107: Minimal network
- Problem 108: Diophantine Reciprocals I
- Problem 109: Darts
- Problem 110: Diophantine Reciprocals II
- Problem 111: Primes with runs
- Problem 112: Bouncy numbers
- Problem 113: Non-bouncy numbers
- Problem 114: Counting block combinations I
- Problem 115: Counting block combinations II
- Problem 116: Red, green or blue tiles
- Problem 117: Red, green, and blue tiles
- Problem 118: Pandigital prime sets
- Problem 119: Digit power sum
- Problem 120: Square remainders
- Problem 121: Disc game prize fund
- Problem 122: Efficient exponentiation
- Problem 123: Prime square remainders
- Problem 124: Ordered radicals
- Problem 125: Palindromic sums
- Problem 126: Cuboid layers
- Problem 127: abc-hits
- Problem 128: Hexagonal tile differences
- Problem 129: Repunit divisibility
- Problem 130: Composites with prime repunit property
- Problem 131: Prime cube partnership
- Problem 132: Large repunit factors
- Problem 133: Repunit nonfactors
- Problem 134: Prime pair connection
- Problem 135: Same differences
- Problem 136: Singleton difference
- Problem 137: Fibonacci golden nuggets
- Problem 138: Special isosceles triangles
- Problem 139: Pythagorean tiles
- Problem 140: Modified Fibonacci golden nuggets
- Problem 141: Investigating progressive numbers, n, which are also square
- Problem 142: Perfect Square Collection
- Problem 143: Investigating the Torricelli point of a triangle
- Problem 144: Investigating multiple reflections of a laser beam
- Problem 145: How many reversible numbers are there below one-billion?
- Problem 146: Investigating a Prime Pattern
- Problem 147: Rectangles in cross-hatched grids
- Problem 148: Exploring Pascal's triangle
- Problem 149: Searching for a maximum-sum subsequence
- Problem 150: Searching a triangular array for a sub-triangle having minimum-sum
- Problem 151: Paper sheets of standard sizes: an expected-value problem
- Problem 152: Writing one half as a sum of inverse squares
- Problem 153: Investigating Gaussian Integers
- Problem 154: Exploring Pascal's pyramid
- Problem 155: Counting Capacitor Circuits
- Problem 156: Counting Digits
- Problem 157: Solving the diophantine equation
- Problem 158: Exploring strings for which only one character comes lexicographically after its neighbour to the left
- Problem 159: Digital root sums of factorisations
- Problem 160: Factorial trailing digits
- Problem 161: Triominoes
- Problem 162: Hexadecimal numbers
- Problem 163: Cross-hatched triangles
- Problem 164: Numbers for which no three consecutive digits have a sum greater than a given value
- Problem 165: Intersections
- Problem 166: Criss Cross
- Problem 167: Investigating Ulam sequences
- Problem 168: Number Rotations
- Problem 169: Exploring the number of different ways a number can be expressed as a sum of powers of 2
- Problem 170: Find the largest 0 to 9 pandigital that can be formed by concatenating products
- Problem 171: Finding numbers for which the sum of the squares of the digits is a square
- Problem 172: Investigating numbers with few repeated digits
- Problem 173: Using up to one million tiles how many different "hollow" square laminae can be formed?
- Problem 174: Counting the number of "hollow" square laminae that can form one, two, three, ... distinct arrangements
- Problem 175: Fractions involving the number of different ways a number can be expressed as a sum of powers of 2
- Problem 176: Right-angled triangles that share a cathetus
- Problem 177: Integer angled Quadrilaterals
- Problem 178: Step Numbers
- Problem 179: Consecutive positive divisors
- Problem 180: Rational zeros of a function of three variables
- Problem 181: Investigating in how many ways objects of two different colours can be grouped
- Problem 182: RSA encryption
- Problem 183: Maximum product of parts
- Problem 184: Triangles containing the origin
- Problem 185: Number Mind
- Problem 186: Connectedness of a network
- Problem 187: Semiprimes
- Problem 188: The hyperexponentiation of a number
- Problem 189: Tri-colouring a triangular grid
- Problem 190: Maximising a weighted product
- Problem 191: Prize Strings
- Problem 192: Best Approximations
- Problem 193: Squarefree Numbers
- Problem 194: Coloured Configurations
- Problem 195: Inscribed circles of triangles with one angle of 60 degrees
- Problem 196: Prime triplets
- Problem 197: Investigating the behaviour of a recursively defined sequence
- Problem 198: Ambiguous Numbers
- Problem 199: Iterative Circle Packing
- Problem 200: Find the 200th prime-proof sqube containing the contiguous sub-string "200"
Problems 201 to 300
In this set of challenges, you will continue to build upon the skills you learned earlier and use concepts like the binomial theorem, Hamming numbers, and the Collatz sequence to further develop your math and problems solving skills.
- Problem 201: Subsets with a unique sum
- Problem 202: Laserbeam
- Problem 203: Squarefree Binomial Coefficients
- Problem 204: Generalised Hamming Numbers
- Problem 205: Dice Game
- Problem 206: Concealed Square
- Problem 207: Integer partition equations
- Problem 208: Robot Walks
- Problem 209: Circular Logic
- Problem 210: Obtuse Angled Triangles
- Problem 211: Divisor Square Sum
- Problem 212: Combined Volume of Cuboids
- Problem 213: Flea Circus
- Problem 214: Totient Chains
- Problem 215: Crack-free Walls
- Problem 216: Investigating the primality of numbers of the form 2n2-1
- Problem 217: Balanced Numbers
- Problem 218: Perfect right-angled triangles
- Problem 219: Skew-cost coding
- Problem 220: Heighway Dragon
- Problem 221: Alexandrian Integers
- Problem 222: Sphere Packing
- Problem 223: Almost right-angled triangles I
- Problem 224: Almost right-angled triangles II
- Problem 225: Tribonacci non-divisors
- Problem 226: A Scoop of Blancmange
- Problem 227: The Chase
- Problem 228: Minkowski Sums
- Problem 229: Four Representations using Squares
- Problem 230: Fibonacci Words
- Problem 231: The prime factorisation of binomial coefficients
- Problem 232: The Race
- Problem 233: Lattice points on a circle
- Problem 234: Semidivisible numbers
- Problem 235: An Arithmetic Geometric sequence
- Problem 236: Luxury Hampers
- Problem 237: Tours on a 4 x n playing board
- Problem 238: Infinite string tour
- Problem 239: Twenty-two Foolish Primes
- Problem 240: Top Dice
- Problem 241: Perfection Quotients
- Problem 242: Odd Triplets
- Problem 243: Resilience
- Problem 244: Sliders
- Problem 245: Coresilience
- Problem 246: Tangents to an ellipse
- Problem 247: Squares under a hyperbola
- Problem 248: Numbers for which Euler's totient function equals 13!
- Problem 249: Prime Subset Sums
- Problem 250: 250250
- Problem 251: Cardano Triplets
- Problem 252: Convex Holes
- Problem 253: Tidying up
- Problem 254: Sums of Digit Factorials
- Problem 255: Rounded Square Roots
- Problem 256: Tatami-Free Rooms
- Problem 257: Angular Bisectors
- Problem 258: A lagged Fibonacci sequence
- Problem 259: Reachable Numbers
- Problem 260: Stone Game
- Problem 261: Pivotal Square Sums
- Problem 262: Mountain Range
- Problem 263: An engineers' dream come true
- Problem 264: Triangle Centres
- Problem 265: Binary Circles
- Problem 266: Pseudo Square Root
- Problem 267: Billionaire
- Problem 268: Counting numbers with at least four distinct prime factors less than 100
- Problem 269: Polynomials with at least one integer root
- Problem 270: Cutting Squares
- Problem 271: Modular Cubes, part 1
- Problem 272: Modular Cubes, part 2
- Problem 273: Sum of Squares
- Problem 274: Divisibility Multipliers
- Problem 275: Balanced Sculptures
- Problem 276: Primitive Triangles
- Problem 277: A Modified Collatz sequence
- Problem 278: Linear Combinations of Semiprimes
- Problem 279: Triangles with integral sides and an integral angle
- Problem 280: Ant and seeds
- Problem 281: Pizza Toppings
- Problem 282: The Ackermann function
- Problem 283: Integer sided triangles for which the area / perimeter ratio is integral
- Problem 284: Steady Squares
- Problem 285: Pythagorean odds
- Problem 286: Scoring probabilities
- Problem 287: Quadtree encoding (a simple compression algorithm)
- Problem 288: An enormous factorial
- Problem 289: Eulerian Cycles
- Problem 290: Digital Signature
- Problem 291: Panaitopol Primes
- Problem 292: Pythagorean Polygons
- Problem 293: Pseudo-Fortunate Numbers
- Problem 294: Sum of digits - experience #23
- Problem 295: Lenticular holes
- Problem 296: Angular Bisector and Tangent
- Problem 297: Zeckendorf Representation
- Problem 298: Selective Amnesia
- Problem 299: Three similar triangles
- Problem 300: Protein folding
Problems 301 to 400
Here you will continue to flex your mathematical and algorithmic skills as you use concepts such as combinatorial game theory, bitwise operations, and Golomb's self-describing sequence to develop efficient solutions to these problems.
- Problem 301: Nim
- Problem 302: Strong Achilles Numbers
- Problem 303: Multiples with small digits
- Problem 304: Primonacci
- Problem 305: Reflexive Position
- Problem 306: Paper-strip Game
- Problem 307: Chip Defects
- Problem 308: An amazing Prime-generating Automaton
- Problem 309: Integer Ladders
- Problem 310: Nim Square
- Problem 311: Biclinic Integral Quadrilaterals
- Problem 312: Cyclic paths on Sierpiński graphs
- Problem 313: Sliding game
- Problem 314: The Mouse on the Moon
- Problem 315: Digital root clocks
- Problem 316: Numbers in decimal expansions
- Problem 317: Firecracker
- Problem 318: 2011 nines
- Problem 319: Bounded Sequences
- Problem 320: Factorials divisible by a huge integer
- Problem 321: Swapping Counters
- Problem 322: Binomial coefficients divisible by 10
- Problem 323: Bitwise-OR operations on random integers
- Problem 324: Building a tower
- Problem 325: Stone Game II
- Problem 326: Modulo Summations
- Problem 327: Rooms of Doom
- Problem 328: Lowest-cost Search
- Problem 329: Prime Frog
- Problem 330: Euler's Number
- Problem 331: Cross flips
- Problem 332: Spherical triangles
- Problem 333: Special partitions
- Problem 334: Spilling the beans
- Problem 335: Gathering the beans
- Problem 336: Maximix Arrangements
- Problem 337: Totient Stairstep Sequences
- Problem 338: Cutting Rectangular Grid Paper
- Problem 339: Peredur fab Efrawg
- Problem 340: Crazy Function
- Problem 341: Golomb's self-describing sequence
- Problem 342: The totient of a square is a cube
- Problem 343: Fractional Sequences
- Problem 344: Silver dollar game
- Problem 345: Matrix Sum
- Problem 346: Strong Repunits
- Problem 347: Largest integer divisible by two primes
- Problem 348: Sum of a square and a cube
- Problem 349: Langton's ant
- Problem 350: Constraining the least greatest and the greatest least
- Problem 351: Hexagonal orchards
- Problem 352: Blood tests
- Problem 353: Risky moon
- Problem 354: Distances in a bee's honeycomb
- Problem 355: Maximal coprime subset
- Problem 356: Largest roots of cubic polynomials
- Problem 357: Prime generating integers
- Problem 358: Cyclic numbers
- Problem 359: Hilbert's New Hotel
- Problem 360: Scary Sphere
- Problem 361: Subsequence of Thue-Morse sequence
- Problem 362: Squarefree factors
- Problem 363: Bézier Curves
- Problem 364: Comfortable distance
- Problem 365: A huge binomial coefficient
- Problem 366: Stone Game III
- Problem 367: Bozo sort
- Problem 368: A Kempner-like series
- Problem 369: Badugi
- Problem 370: Geometric triangles
- Problem 371: Licence plates
- Problem 372: Pencils of rays
- Problem 373: Circumscribed Circles
- Problem 374: Maximum Integer Partition Product
- Problem 375: Minimum of subsequences
- Problem 376: Nontransitive sets of dice
- Problem 377: Sum of digits, experience 13
- Problem 378: Triangle Triples
- Problem 379: Least common multiple count
- Problem 380: Amazing Mazes!
- Problem 381: (prime-k) factorial
- Problem 382: Generating polygons
- Problem 383: Divisibility comparison between factorials
- Problem 384: Rudin-Shapiro sequence
- Problem 385: Ellipses inside triangles
- Problem 386: Maximum length of an antichain
- Problem 387: Harshad Numbers
- Problem 388: Distinct Lines
- Problem 389: Platonic Dice
- Problem 390: Triangles with non rational sides and integral area
- Problem 391: Hopping Game
- Problem 392: Enmeshed unit circle
- Problem 393: Migrating ants
- Problem 394: Eating pie
- Problem 395: Pythagorean tree
- Problem 396: Weak Goodstein sequence
- Problem 397: Triangle on parabola
- Problem 398: Cutting rope
- Problem 399: Squarefree Fibonacci Numbers
- Problem 400: Fibonacci tree game
Problems 401 to 500
In this final set of challenges, you will need draw upon everything you learned up to this point and use advanced concepts like unitary divisors, the Kaprekar routine, and much more to solve these complex problems.
- Problem 401: Sum of squares of divisors
- Problem 402: Integer-valued polynomials
- Problem 403: Lattice points enclosed by parabola and line
- Problem 404: Crisscross Ellipses
- Problem 405: A rectangular tiling
- Problem 406: Guessing Game
- Problem 407: Idempotents
- Problem 408: Admissible paths through a grid
- Problem 409: Nim Extreme
- Problem 410: Circle and tangent line
- Problem 411: Uphill paths
- Problem 412: Gnomon numbering
- Problem 413: One-child Numbers
- Problem 414: Kaprekar constant
- Problem 415: Titanic sets
- Problem 416: A frog's trip
- Problem 417: Reciprocal cycles II
- Problem 418: Factorisation triples
- Problem 419: Look and say sequence
- Problem 420: 2x2 positive integer matrix
- Problem 421: Prime factors of n^15+1
- Problem 422: Sequence of points on a hyperbola
- Problem 423: Consecutive die throws
- Problem 424: Kakuro
- Problem 425: Prime connection
- Problem 426: Box-ball system
- Problem 427: n-sequences
- Problem 428: Necklace of Circles
- Problem 429: Sum of squares of unitary divisors
- Problem 430: Range flips
- Problem 431: Square Space Silo
- Problem 432: Totient sum
- Problem 433: Steps in Euclid's algorithm
- Problem 434: Rigid graphs
- Problem 435: Polynomials of Fibonacci numbers
- Problem 436: Unfair wager
- Problem 437: Fibonacci primitive roots
- Problem 438: Integer part of polynomial equation's solutions
- Problem 439: Sum of sum of divisors
- Problem 440: GCD and Tiling
- Problem 441: The inverse summation of coprime couples
- Problem 442: Eleven-free integers
- Problem 443: GCD sequence
- Problem 444: The Roundtable Lottery
- Problem 445: Retractions A
- Problem 446: Retractions B
- Problem 447: Retractions C
- Problem 448: Average least common multiple
- Problem 449: Chocolate covered candy
- Problem 450: Hypocycloid and Lattice points
- Problem 451: Modular inverses
- Problem 452: Long Products
- Problem 453: Lattice Quadrilaterals
- Problem 454: Diophantine reciprocals III
- Problem 455: Powers With Trailing Digits
- Problem 456: Triangles containing the origin II
- Problem 457: A polynomial modulo the square of a prime
- Problem 458: Permutations of Project
- Problem 459: Flipping game
- Problem 460: An ant on the move
- Problem 461: Almost Pi
- Problem 462: Permutation of 3-smooth numbers
- Problem 463: A weird recurrence relation
- Problem 464: Möbius function and intervals
- Problem 465: Polar polygons
- Problem 466: Distinct terms in a multiplication table
- Problem 467: Superinteger
- Problem 468: Smooth divisors of binomial coefficients
- Problem 469: Empty chairs
- Problem 470: Super Ramvok
- Problem 471: Triangle inscribed in ellipse
- Problem 472: Comfortable Distance II
- Problem 473: Phigital number base
- Problem 474: Last digits of divisors
- Problem 475: Music festival
- Problem 476: Circle Packing II
- Problem 477: Number Sequence Game
- Problem 478: Mixtures
- Problem 479: Roots on the Rise
- Problem 480: The Last Question
- Problem 481: Chef Showdown
- Problem 482: The Incenter of a Triangle
- Problem 483: Repeated Permutation
- Problem 484: Arithmetic Derivative
- Problem 485: Maximum Number of Divisors
- Problem 486: Palindrome-containing Strings
- Problem 487: Sums of Power Sums
- Problem 488: Unbalanced Nim
- Problem 489: Common Factors Between Two Sequences
- Problem 490: Jumping Frog
- Problem 491: Double Pandigital Number Divisible by 11
- Problem 492: Exploding Sequence
- Problem 493: Under the Rainbow
- Problem 494: Collatz Prefix Families
- Problem 495: Writing "n" as the Product of "k" Distinct Positive Integers
- Problem 496: Incenter and Circumcenter of Triangle
- Problem 497: Drunken Tower of Hanoi
- Problem 498: Remainder of Polynomial Division
- Problem 499: St. Petersburg Lottery
- Problem 500: Problem 500!!!
For now, these are the problems I want to solve and post here, I will update the list as I solve them.
References
Thanks for reading this far and see you in the upcoming posts! 👋
Happy coding! 🚀