Difficulty Levels per Problem.

Announcements, comments, ideas, feedback, and "How do I... ?" questions
Post Reply
pleasant.timepass

Difficulty Levels per Problem.

Post by pleasant.timepass »

At some point in the past, I would not have made this suggestion, as we would not like to overload the Project Euler Team. But, given the amount of effort that has been put into the website, maybe this request/suggestion might have a chance of being approved.

Background: For example, take problem 585, it is at a difficulty level of 38. So, computing F(5000000) is pretty hard and only 211 members have solved it at that difficulty even after the problem has been around for more than 9 years. (At some point hk mentioned that reducing parameter of the problem to computing F(50000) would completely change the problem, maybe in the sense that with some semi-intelligent brute-force the F(50000) could be computed).

So, my suggestion is for each problem can we have different difficulty levels, so instead of just solving Problem 585 for a difficulty level of 38, (only if you solve the problem at level 38 will you get credit for solving the problem); maybe we compute F(50000) and get the answer verified at Project Euler Website itself (and console ourself saying we got to 50000 at least :)) . This will definitely reduce the requests for verification of answers for lesser parameters of the problem.

For problems where it makes sense, instead of a single textbox for the answer, we could have two textboxes, one for the parameters you solved the problem with (for 585, 1 <= N <= 5000000), and another textbox for the answer obtained. On submit, you will get a right or wrong message. Only if N = 5000000 will you get credit for solving the problem.
User avatar
euler
Administrator
Posts: 5095
Joined: Sun Mar 05, 2006 4:49 pm
Location: Cheshire, England
Contact:

Re: Difficulty Levels per Problem.

Post by euler »

It's an interesting suggestion, but don't most problem statements usually contain a test case? It might be that some problems would benefit from an additional higher valued test case, but the amount of work involved in revisiting problems would probably make this prohibitive. I'll pass on this idea.
Image
impudens simia et macrologus profundus fabulae
pleasant.timepass

Re: Difficulty Levels per Problem.

Post by pleasant.timepass »

Additional testcases might be enough, it is just that sometimes the testcases are for too small a parameter and the problem is for too large a parameter.
User avatar
euler
Administrator
Posts: 5095
Joined: Sun Mar 05, 2006 4:49 pm
Location: Cheshire, England
Contact:

Re: Difficulty Levels per Problem.

Post by euler »

I guess this could go one of two ways. 1) If a naive brute force approach could solve the additional test case it could lull solvers into a false sense of assurance that with the right tweaks it could get to the problem parameter. 2) If the additional test case is outside the realms of that brute force approach it could encourage a rethink.

But doesn't identifying that the problem parameter is outside the realms of a brute force approach already achieve this goal? And if you crack the additional case with a rethink, you've probably designed an algorithm that is going to have solved for the actual problem parameter too. Plus, as the power of computers increase, what was once out of the realms of brute force ten years ago might be child's play to a modest computer today.
Image
impudens simia et macrologus profundus fabulae
pleasant.timepass

Re: Difficulty Levels per Problem.

Post by pleasant.timepass »

This is where I think we could people-source this situation. For example, for problem 585, we could productively solve for N = 50000 without being able to achieve N = 5000000. So, for each problem could we reach out to problem solvers who have solved more than 500 problems and ask them to suggest a few intermediate testcases that someone who might not be able to solve the full problem could still productively solve and feel good about their efforts. Or in the 'Problem Clarification Board: the solvers who are struggling to solve the problem, could request for correct answers for N = 20000, N = 30000 etc as data-points and these could be added to the problem statement. This way on a per-problem basis we will have data-points to help solvers solve the problem at their level of comfort.

At some point the past I remember there was very strong opposition to even asking for answers for lesser parameters of the problem. The argument being: solvers should figure out whether their programs are correct for lesser parameters all by themselves. What if some solvers are more than happy to solve a problem for lesser parameters and call it a day? Right now, problems in the class-of-PE585, I don't even look at them. If these very hard problems had answers available for lesser parameters, then we could make an attempt and check whether our attempts were correct.
User avatar
hk
Administrator
Posts: 12831
Joined: Sun Mar 26, 2006 10:34 am
Location: Haren, Netherlands

Re: Difficulty Levels per Problem.

Post by hk »

Pim.pg?
Image
War ruins the life and health of untold numbers of innocent children.
pleasant.timepass

Re: Difficulty Levels per Problem.

Post by pleasant.timepass »

Yes, hk. I am Vamsikrishna Kalapala == pim.pg == pim.mfs == vamsikal == vamsikal2 == vamsikal3 == pim.mfs.0 == pim.mfs.a == pleasant.timepass.

Basically, I want to have a good time solving problems of moderate difficulty so that I feel like I am achieving something. At some point hacatu mentioned, PE is for people who want to basically struggle for the Aha moment. I am clearly not one of those. Right now, I am using Project Euler problems to practice 'Standard Pascal ISO 7185:1990' for timepass. It would be nice if Project Euler allowed for someone who does not care about the Aha moment to still have a good time at the website. Tongue-in-cheek: Why do Math/Computing have to be a struggle?

My guess is the Project Euler Team's response would be: We put in quite a bit of effort into the difficulty levels etc. If you want moderately difficult problems, enough of such problems are available, enjoy. That is not a bad answer to the request. The only thing is by sticking to the easy problems we may be missing out on some math like the fact that nested square roots can be de-nested. Laffer Curve of Problem Difficulty: Too easy problems: people will not care too much, too difficult problems: not enough people out there to take on the challenge. We need to find just the right difficulty problems so lot of people can enjoy the problems.

Also: from a psychology perspective, right now a third-party the Project Euler Problem Development Team is setting a challenge (either you are up to it, or you are not). Isn't it accepted psychology when it comes to learning etc. that you want to be a little bit better today than you were yesterday? Of course, we do not want to be Emmanuel Lasker and only pick challenges we know we can relatively easily overcome. The bottom line is: why not let the subject decide at what level they want to challenge themselves and make that incremental next step toward becoming more proficient in Math/Computing.

Finally: it is almost impossible for any one person to solve all of the Project Euler problems, so, start with problems at level 0, finish them all, move to level 1, finish them all, until you move to level 'n' where you might run into problems you cannot solve, and that is your limit. Does the Project Euler team believe that someone who cannot solve all of the problems at level 'n' could potentially solve problems at level 'n+k' where 'k > 0' if they persisted/struggled for the 'Aha' moment? (What about 'k >> 0'?).
CynthiaZirabi
Posts: 1
Joined: Mon Jul 29, 2024 10:23 am

Re: Difficulty Levels per Problem.

Post by CynthiaZirabi »

pleasant.timepass wrote: Sat Feb 28, 2026 6:47 pm Finally: it is almost impossible for any one person to solve all of the Project Euler problems, so, start with problems at level 0, finish them all, move to level 1, finish them all, until you move to level 'n' where you might run into problems you cannot solve, and that is your limit. Does the Project Euler team believe that someone who cannot solve all of the problems at level 'n' could potentially solve problems at level 'n+k' where 'k > 0' if they persisted/struggled for the 'Aha' moment? (What about 'k >> 0'?).
Not part of the staff, but that last question is a definitive yes. There is a level 9 problem I've been stumped on for ages and the highest level I've solved everything on is 7, but I have solved multiple problems at every single difficulty level (minus the newly formed level 39 which only contains one problem right now) and there have been problems in the 30+ range that I threw one look at and knew how to solve. So the levels are more like general guidelines, not an objective indicator if a specific individual can solve the problem. I very much encourage looking at all the "too hard" problems anyway, because due to personal knowledge / preferences they might actually be solvable anyway.
pleasant.timepass
Posts: 15
Joined: Mon Mar 09, 2026 4:38 pm

Re: Difficulty Levels per Problem.

Post by pleasant.timepass »

First of all, the Project Euler Team put a lot of effort into the difficulty levels, then, making accounts private by default so that members who choose to have "unrealistic solve rates" can still be members at Project Euler without affecting the public tables is good for some members. While this may be obvious to everyone, still to state it explicitly: Project Euler is a website of challenges. For some reason the Project Euler Team prefers members solve the problems on their own, instead of forming groups of members that solve problems together. So, if it is just you + Internet + Generative AI trying to solve the problems, my conclusion is: pick the problems you are currently comfortable with and try solving them. The reason being: a third-party the Project Euler Problem Development Team is setting the problems, and you may or may not be the intended audience for every problem on Project Euler.

To continue further: I just took a look at Project Euler problem 120 and was able to solve it on the back of a piece of paper. Twelve years ago, when I started out with Project Euler, I remember completely missing the mathematics that allows us to solve the problem without brute-force. What happened in between was that I got myself a copy of 'Elementary Number Theory' 7th edition by David M. Burton and worked through first 7 chapters of the book. So, in that sense Project Euler served its purpose, it encouraged me to learn more mathematics, and this helped me appreciate/solve Problem 120. Now, my personal opinion is: do we really need problems like 585 that only 211 people have solved in over 9 years to spur people to learn more mathematics? Then again, Project Euler Team may counter with, we are a big umbrella website for different people with different interests ranging from world-champions like Gennady, to 700+ problem solvers like hacatu (who want to think long and hard about very difficult problems), to someone like you who is more than happy to get by with problems of moderate difficulty.
Post Reply