But I see it's already been mentioned here in another thread.
Do you rank the problems solved by the user only, or all leetcode problems?
Because I think that a nice thing would be for your tool to first suggest one pb in each category, and then start recommending the category where you're the weakest.
score = ( timeSinceLastAttempt ^ 2 ) * difficulty;
Anything else you'd want factored in?