Remix.run Logo
Project Euler(projecteuler.net)
389 points by swatson741 13 hours ago | 89 comments
SethTro 8 hours ago | parent | next [-]

I wrote Problem 371, https://projecteuler.net/problem=371 , as a high school student in 2012!

I'm so happy to have spent twenty years of my life learning math and solving problems on Project Euler and elsewhere.

am17an 6 hours ago | parent | next [-]

This is one of my favourite problems, I still remember that it has a very real edge case even though I solved it more than 10 years ago. Thank you for the problem!

vhcr 3 hours ago | parent | next [-]

I'm guessing if you only calculate based on the digits, the probability is going to be slightly different than the real one, because you only have a finite number of plates you can choose from.

dpacmittal an hour ago | parent | prev | next [-]

Sounds like the birthday paradox problem. Is it?

knollimar 6 hours ago | parent | prev | next [-]

Can you reuse a plate with 500?

hatthew 5 hours ago | parent [-]

The wording seems to strongly imply no; you need two separate plates with 500 on them.

SethTro 6 hours ago | parent | prev [-]

I'm glad you enjoyed! It was a real game I played when driving around.

stevefan1999 4 hours ago | parent | prev | next [-]

That sounds like a combinatorial problem...alphabets from AAA to ZZZ, numbers from 000 to 999.

That means one of the total sum of possible car plates is 26^3.

Since we want to find pairs (x, y) that x + y = 1000. That means the total sum would also add up sum([1 for x in range(1000) for y in range(1000) if x + y == 1000])/2 since there is a symmetry.

But wait, find the expected number of plates he needs to see for a win. So maybe we need to borrow something from statistics (Possion/chi-squared distribution) or queueing theory...?

Edit: ah I saw the solution, it is a Markov chain.

dekhn 7 hours ago | parent | prev [-]

Interesting- I ask a license plate question (when will california run out of plates in its current serialization format, based on a couple of plates observed in two different years). It's a much simpler question, though (just linear extrapolation).

peterkagey 8 hours ago | parent | prev | next [-]

I wrote Problem 619 (https://projecteuler.net/problem=619) which was published on 2018-01-27 and solved by 474.

The problem was based on 2013 Putnam Exam problem A2 (https://kskedlaya.org/putnam-archive/2013.pdf) which I took at the end of undergrad.

I got an email six years later (in November 2024) telling me they accepted the problem:

Greetings!

Please excuse the email. It's quite possible that you are no longer active at Project Euler, but we are currently trying to retrospectively acknowledge contributors of problems.

You were identified as being involved with Square subsets [619 m] in Sep-17.

If you would like to be added as a verified contributor, please reply to this email and provide the username you currently use at projecteuler.net. Please note that contributor usernames will not appear publicly, rather they will be used internally to unlock new contributor awards we are introducing.

Regards,

Project Euler Team

webo 7 hours ago | parent | next [-]

I was curious if LLMs are good for this problem. ChatGPT-5.1-Thinking one-shotted a correct Python script without any library use (https://pastecode.io/s/jg6ggxpm).

Claude Opus failed to solve after trying for a while.

whimsicalism 7 hours ago | parent | next [-]

project euler problems are likely in the RL corpora

mvdtnz 6 hours ago | parent | prev [-]

First of all, don't do this. No one cares. Secondly obviously every Euler solution is going to appear in the training data many times over. It's no surprise at all that an LLM can regurgitate data that was given to it.

kragen 6 hours ago | parent [-]

I thought it was interesting, and I wouldn't be surprised if Euler solutions weren't in the training data, especially for the later problems like this one.

kami23 2 hours ago | parent [-]

I appreciate you trying it! So at least I care.

I used to do these in college to procrastinate my homework. I always had the most difficulty with the problems that required data structures I wasn't exposed to previously and ended up making really complicated solutions that were inefficient as hell, but fun nonetheless.

I might give them a try with golang now that it's my preferred language. I used to do them in python as that was our intro language.

kragen 2 hours ago | parent [-]

Perhaps you meant to reply to webo? I'm not sure what you think I might have been trying.

LTL_FTC 2 hours ago | parent | prev [-]

Were you also one of Dr. Kedlaya’s students? Or just used that link? I was in an undergrad course of his and really enjoyed it. Such a smart guy.

BeetleB 9 hours ago | parent | prev | next [-]

Ha! I did a lot of these around 2007-2008. I solved the first 100 or so ones. Solving these were more fun than any other programming problems site I've seen. I quit it when I realized I was spending 4+ hours per problem - I couldn't justify the time.

Beyond a certain point, most required some knowledge of elementary number theory.

goalieca 9 hours ago | parent | next [-]

Same timeline for me! This was my great procrastination side quest during grad school. I learned haskell and a bit of ocaml working on these. Functional languages are extremely well suited to these kinds of problems.

coef2 9 hours ago | parent | prev [-]

I agree with you. About a decade ago, I got really tired of coding interview prep. I somehow ended up getting into Project Euler and worked through the first 100 problems. It was a great way to learn a bit of number theory and regain my interest in programming.

Gormisdomai 11 hours ago | parent | prev | next [-]

This website was a part of my education as a computer scientist and seeing it here again I'm curious for the full story of how this site was made. Who made it, what do they do now, is it part of a broader project they have?

There is only very basic info here: https://en.wikipedia.org/wiki/Project_Euler

observationist 11 hours ago | parent | next [-]

https://archive.is/iEQxy

This article is excellent. It mentions the creator, Colin Hughes, and the story behind the project, but it boils down to a passion project for him.

campbel 10 hours ago | parent | prev [-]

Back in early 2000s, before hackerrank and similar coding sites, this is what my professors recommended for training programming skills.

weird-eye-issue an hour ago | parent [-]

Yeah my HS CS teacher recommended it but I don't think it was ever required

unkulunkulu 10 hours ago | parent | prev | next [-]

The most fun on this site is solving a problem and then having your mind blown by solutions in Apl/j/k and trying to guess what they mean without knowing anything about those languages

taeric 9 hours ago | parent | next [-]

Even better than the crazy languages, is seeing some fundamental math used to prevent having to do a ridiculously expensive search.

That said, raw brute force often did far better than you'd like to admit.

debatem1 8 hours ago | parent [-]

The biggest thing I learned from PE was that neither elegant theory nor brute force had a monopoly on successful optimization strategies. It's been something I've carried with me ever since and has over and over again proven its value.

A real gem of a resource.

omegaham 9 hours ago | parent | prev [-]

See also Uiua, a newcomer to the "extremely cool but completely incomprehensible language" family!

leosanchez 20 minutes ago | parent | prev | next [-]

Since this is still on HN frontpage. Does anyone suggest any math books to help solve these problems. I am pretty sure you can't solve problems above 50 without strong maths background.

siddboots 5 minutes ago | parent [-]

Concrete Mathematics is probably the best single book that you could read to prepare you for some the problems beyond the first 50. It’s extremely fun, and also mathematically serious. A large portion of PE problems are exactly in the cross sections of number theory, combinatorics, and computation that is covered in this book.

https://en.wikipedia.org/wiki/Concrete_Mathematics

Imnimo 9 hours ago | parent | prev | next [-]

These are both a lot more fun, and a lot more educational than leetcode problems. Strongly recommend for anyone looking for practice problems when learning a new language or whatever.

thornewolf 11 hours ago | parent | prev | next [-]

I have done Project Euler very sporadically since high school. To date I've only done problems 1-54. Despite this, I think the website was a big contributor to my love of programming. I found it before knowing about leetcode and I think it prepared me well. I think I owe Project Euler a decent %-age of my eventual entry into Software Engineering as a field.

ljlolel 10 hours ago | parent [-]

Ditto!

Also a great way to learn a new programming language is to try project Euler problems with it.

pveierland 7 hours ago | parent | prev | next [-]

What's really neat is that most of the problems are so compact that you can just read about the full problem, then spend hours and days thinking about possible solutions.

I created a PDF version that I keep on my Remarkable for puzzling: https://github.com/pveierland/project_euler_offline

varyherb an hour ago | parent | prev | next [-]

Project Euler spurred my love for math and programming when I was 15. I got through the first few with pencil and paper and then quickly realized I was going to need to learn how to program. Got started with Java (in Eclipse) and then moved on to Python. I feel like it completely changed the trajectory of my life.

kekqqq 8 hours ago | parent | prev | next [-]

No one tells you that they delete inactive accounts. I used to have over 300 solved problems htere. Now it is all gone, all the effort, but the skill remained of course.

inasio 8 hours ago | parent | next [-]

A few years back (10 maybe?) they had a disk crash, and there was a notice that for people with 100 or more problems solved they'd do an extra effort to recover their solutions and add you back, not sure if it was only posted on the main website. I was lucky to get my account back at the time

cgh an hour ago | parent | prev | next [-]

I still have the code for the first 50 problems in GitHub. The last commit was thirteen years ago. I don’t know why I checked these in rather than treating them as throwaway code like I did for so many other things, but I’m glad I did as I’m sure my PE account is gone now too.

doodpants 8 hours ago | parent | prev | next [-]

So, I gather that you treated your solutions as throw-away code, rather than keeping them? Kind of surprising, considering that some problems build off of each other, or otherwise benefit from sharing code; you never know when the code for one solution could be useful later. For example, a prime number generator/tester is necessary for many of the problems.

(I have all my solution code, in source control no less, so if I ever lost my account, I could just run them all and re-enter the solutions.)

yogsototh 8 hours ago | parent | prev | next [-]

I remember there were data loss, but my account appears to have been recovered. You may try to login again, and with luck, like me you will get back your history.

Loocid 6 hours ago | parent | prev [-]

How long before they start deleting? I haven't logged in for 5 years and my account is still there.

nik9000 10 hours ago | parent | prev | next [-]

I ranked on that once! I was like the 23rd person to do one of the new problems one time. Just about as low as you can rank. It was a fun puzzle but you had to be awake at a funky time to do it.

seeknotfind 30 minutes ago | parent | prev | next [-]

Thousand of hours on this. Love it.

meken 9 hours ago | parent | prev | next [-]

One of my best memories was in undergrad there was one semester in 2013 where half a dozen of my CS classmates and I competed to try and solve the most Project Euler problems. We had a leaderboard and everything.

I saw first hand how much faster my friend’s Java solutions were than my Python solutions.

Good times.

akudha 8 hours ago | parent | prev | next [-]

Are there other similar sites? I remember this one, for bioinformatics

https://rosalind.info/problems/list-view/

sega_sai 7 hours ago | parent | prev | next [-]

There is a somewhat similar idea behind "Ponder This" by IBM https://research.ibm.com/haifa/ponderthis/index.shtml They post a problem every month and in the end post a solution. I used to spend a bit too much time on those.

hintymad 6 hours ago | parent [-]

The difference is that Ponder This is harder than the average problems in Euler Project, and requires higher level of mathematical maturity.

ketanmaheshwari 10 hours ago | parent | prev | next [-]

I solved a few using AWK, fun: https://github.com/ketancmaheshwari/projecteuler

mjcohen 4 hours ago | parent [-]

Did you use the regular version or the one with multiple-precision values?

matthewaveryusa 10 hours ago | parent | prev | next [-]

I attribute project euler for instilling the playful enjoyment of writing programs in college while I was studying electrical and computer engineering. I owe my career to it!

Sparkle-san 11 hours ago | parent | prev | next [-]

Like many others here, Project Euler was foundational in my education and growth as a programmer.

Leonhard Euler himself is an incredible figure and arguably the most prodigious contributor to mathematics throughout history. So much so that people started naming things discovered by him after the next person to have proved them.

https://en.wikipedia.org/wiki/List_of_topics_named_after_Leo...

dhbradshaw 3 hours ago | parent | prev | next [-]

Project Euler was what I used to get comfortable with my two main languages -- first python and then rust.

I loved to solve it and then look through all the different solutions and find pretty ideas and idioms.

davidhariri 9 hours ago | parent | prev | next [-]

I learned so much from this site- including that so much education comes from being prompted to ask the right questions.

RandyOrion 3 hours ago | parent | prev | next [-]

After opened https://projecteuler.net/ I got

403 Forbidden Request forbidden by administrative rules.

Note: I didn't know and open this website until now.

kragen 2 hours ago | parent [-]

Well, that sucks!

schlauerfox 6 hours ago | parent | prev | next [-]

I love a good puzzle solving club. Some of my favorites: https://www.themastertheorem.com/ https://en.wikipedia.org/wiki/Perplex_City https://en.wikipedia.org/wiki/MindTrap

zkmon 10 hours ago | parent | prev | next [-]

A great one of my favorite websites of the past. Wonder how they are coping with the issue of their users using AI to solve problems.

bee_rider 23 minutes ago | parent | next [-]

It is a mostly single player game, if users want to cheat they are only cheating themselves really, right?

Schiphol 10 hours ago | parent | prev [-]

I suppose I wonder how those users are coping with having the robots do all the stuff instead of them doing some of the stuff.

phil-pickering 8 hours ago | parent | prev | next [-]

I think a hat-tip is due to freeCodeCamp for introducing Project Euler (along with Rosetta Code) to a new generation of programmers:

https://www.freecodecamp.org/learn/project-euler/#project-eu...

bre1010 11 hours ago | parent | prev | next [-]

I discovered project euler as a novice programmer in high school around 15 years ago. I loved how solving a problem unlocks a secret forum only available to other solvers. I would spend hours reading through everyone's prior solutions and trying to understand them. One guy had tagged his profile as "haskell" but would always provide his solutions in ruby which threw child-me for quite a loop (I actually thought ruby and haskell were the same language for some time)!

codexb 10 hours ago | parent | prev | next [-]

Wow, I can't believe this is still around! I'm glad to see artifacts from the past like this are still out there on the internet.

Makes me miss Google CodeJam though.

pkoird 9 hours ago | parent | prev | next [-]

I remember it vaguely but there used to be a badge awarded for being among the first 100 people to solve the problem. I was obsessed with getting that badge to the point that I spent obscene amount of time solving the-then recently released problem even when the following day was my final exams. I did manage to get that badge though. This was circa 2013. Fun times!

DiabloD3 6 hours ago | parent | prev | next [-]

So, to remind myself, Euler's name is pronounced more like Oiler, right?

nimih 6 hours ago | parent [-]

That's how I was taught, and Wikipedia agrees (and even provides audio clips alongside the IPA and English phonetic transcriptions).

theoldgreybeard 10 hours ago | parent | prev | next [-]

I love running euler problems when trying to learn the basics of a new programming language. I have a small collection of programs in like 10 different languages that I keep around as a reference for things because I always try to use language-specific features to solve the problems, and then I reference them as examples.

gregdeon 9 hours ago | parent [-]

Wow. You reminded me of a computer engineering class years ago where we wrote assemblers and emulators for a simple architecture. I tested mine by writing a solution for one of the first Project Euler questions!

theoldgreybeard 4 hours ago | parent [-]

I still have my Oberon-2 compiler from my compilers class and a handful of Euler questions I used to test it.

senderista 8 hours ago | parent | prev | next [-]

So much more fun than leetcode. OTOH, unlikely to help you in an interview.

callc 10 hours ago | parent | prev | next [-]

I too owe had my love for programming captured through project Euler. I am immensely grateful to my maths prof who introduced me to it.

I also love looking back at my old PE code and having absolutely no idea what it doing. No comments, no docs, no notes. From a different era.

0x1ch 10 hours ago | parent | prev | next [-]

I remember visiting Project Euler back in 2013/14 or so. Was really my first introduction to programming exercises as youngin. Probably did fifteen or so of them before ADHD kicked in though. A small gem on the web.

aiahs 9 hours ago | parent | prev | next [-]

I did a lot of these when I was around 15-16 and it solidified for me my interest in CS but in general abstract thinking and problem solving. Great site.

sizzzzlerz 10 hours ago | parent | prev | next [-]

i was a euler fanatic some years ago reaching problems in the 500s albeit, skipping problems along the way. at that point, too many problems required a deeper math background than i possessed so i abandoned it. what amazed me was that others composed solutions that solved problems in mere milliseconds that brute force approaches would still be running when the universe cooled to absolute zero.

rbongers 10 hours ago | parent [-]

I only reached the 100s back in the day. What amazed me was that it seemed like every problem had a paper solution, when it would take any computer algorithm thousands or millions of computations to solve the same problem.

rufus_foreman 8 hours ago | parent [-]

I played around with some of the easier problems, my favorite was a couple times when starting with the obvious brute force solution in code and then refactoring and simplifying it iteratively ended up getting me the paper solution.

theotherpablo 7 hours ago | parent | prev | next [-]

Anyone else having problems registering? or is my solution to Problem Zero wrong...

theotherpablo 7 hours ago | parent | prev | next [-]

Anyone else having problems registering or is my solution wrong?

butifnot0701 5 hours ago | parent | prev | next [-]

The leetcode before leetcode. Hail.

medbar 8 hours ago | parent | prev | next [-]

very surprised this project is still releasing problems weekly - I remember this being up when I was in high school. maybe I'll pick it up again since I only did the first ~30 or so back then.

philiplu 8 hours ago | parent [-]

Not only are they still releasing problems weekly, they have a long backlog of problems waiting for release. I submitted a problem back in April 2024, and it didn't get published until October 2025 (problem 963). There's an excellent core development team that works with problem-submitters to get problems tuned up for Project Euler.

darylteo 9 hours ago | parent | prev | next [-]

How I learnt about prime number sieves.

Good prep for Advent of Code in 2 weeks.

shaunxcode 9 hours ago | parent | prev | next [-]

this is how you end up getting into APL/array langs for sure.

rajandatta 5 hours ago | parent [-]

Second this ... have been writing some solutions in Kap, an APL like variant. It's stunning to see 20+ idiomatic solutions in one screen as many problems can be solved in a compact manner. The elegance really reminds one of why we fell in love with Programming in the first place

anthk 9 hours ago | parent | prev | next [-]

Thanks for reminding me this; I'd try to solve them both in Scheme (s9fes) and JimTCL.

nurettin 9 hours ago | parent | prev | next [-]

2007 I remember writing one-liner ruby solutions up to 100.

sbmthakur 10 hours ago | parent | prev | next [-]

Hackerrank also used to host(still has?) PE problems with additional test cases.

graycat 11 hours ago | parent | prev | next [-]

Glanced at the exercises. It appears that two of them have numbers arranged in a triangle and ask for a longest path.

Hmm. Given such a triangle, let m be the largest number in the triangle. For each x in the triangle, replace it with m - x. For the resulting triangle, solve it to give the shortest path using one of the well known network shortest path algorithms.

thaumasiotes 7 hours ago | parent [-]

> Hmm. Given such a triangle, let m be the largest number in the triangle. For each x in the triangle, replace it with m - x.

By the time you've actually done these two steps, you could have already finished the problem with a dynamic programming approach.

(Starting from the bottom row and working upward, replace each cell in the row with the length of the longest path from itself to the bottom, which you can know by checking which of its two children has the longer path associated.)

fortranfiend 7 hours ago | parent | prev [-]

fake frustration yet another thing named after euler.