shauncodes's blog

By shauncodes, history, 11 months ago, In English

UPDATE 2:


Saving codeforces questions for revision and upsolving is now live on the website.

  1. Sign in with google so that no one else has access to your personal revision list. Sign in with google

  2. Link your account to your codeforces handle by submitting a compilation error within 60 seconds. Linking account

  3. Now you have access to create and edit your upsolve list. Add problems by just pasting a codeforces problem link and it will fetch the problem for you! Upsolve list

UPDATE 1:


There has been an overwhelming response from users worldwide, and I am very grateful for the same. I also received valuable feedback from a lot of you, and have tried implementing changes in the recommendations being made for every user.

Based on your feedback the recommendation model has now been improved (took a lot of tinkering). You might notice a slight change in the order/types of problems being recommended to you compared to before. Here are the statistics on the changes I have implemented: Improved statistics

Original post


I'm currently a pupil on Codeforces, and like many others at this stage, I've always struggled with choosing the right problems to solve. There are a lot of great problemsets/ladders/sheets out there, but most of the time I find myself wondering what should I solve next?

Jumping between problems that are either too easy or way too hard -- I wanted something that could understand my current level, know what I'm weak at, and recommend problems that would genuinely help me grow — not just based on rating, but also based on me.

That was my motivation to build CF Recommender. It analyzes your Codeforces submissions and gives you a list of problems (Tailored to your real performance): Problem Recommendation

Focused on topics you struggle with:

Balanced in difficulty — not too easy, not discouragingly hard

Just open the tool, enter your handle, and it’ll do the rest.

Why I’m sharing this

This project was born from my own frustration — but I know I’m not the only one who feels this way. So I’d love it if you could try it out and tell me:

  1. Did the recommendations feel useful?
  2. Did it help you focus better?
  3. If you find any bugs or missing functionalities

Marking the link again here: https://cfrecommender.vercel.app/

Whether you’re a newbie or an expert looking to practice smarter, I’d be grateful if you gave it a shot and let me know what you think — either here in the comments or through the feedback option in the tool.

  • Vote: I like it
  • +82
  • Vote: I do not like it

»
11 months ago, hide # |
 
Vote: I like it 0 Vote: I do not like it

Wow this actually looks really cool! What algorithm did you use to calculate the strength of a topic area? Do you incorporate time to solve problems, number of wrong submissions, etc. in each tag?

»
11 months ago, hide # |
 
Vote: I like it 0 Vote: I do not like it

Looks really cool! Would 100% use this

»
11 months ago, hide # |
 
Vote: I like it 0 Vote: I do not like it

This is amazing. I want to learn how to build sites like this

  • »
    »
    11 months ago, hide # ^ |
     
    Vote: I like it 0 Vote: I do not like it

    Haha, thank you so much... I take that as a huge compliment..

    Let me know how you find the website useful!

»
11 months ago, hide # |
 
Vote: I like it 0 Vote: I do not like it

really insane, well done

»
11 months ago, hide # |
 
Vote: I like it 0 Vote: I do not like it

tqsm for making this, I am also struggling to find the right questions :)!!

Sometimes I feel that the questions in some of the ladders are too old and do not reflect current problems in cf contests nowadays, does your site recommend new ones more?

  • »
    »
    11 months ago, hide # ^ |
     
    Vote: I like it 0 Vote: I do not like it

    Glad it can be of use to you! It recommends the ones that are best for you... New and old problems isn't a factor it considers since it checks what you need to practice the most! Though -- the idea is fair, might add a custom feature for this.

    Thanks so much! Also do leave some feedback after using it...

»
11 months ago, hide # |
Rev. 2  
Vote: I like it +3 Vote: I do not like it

Good stuff, the recommended problems are very nice too.

Although, are the weak topics just the topics on cf on which I have the least problems solved on? Another way you could tweak is by taking an average AC to submission rate for each topic and then recommending the lowest ones, while excluding those topics which have <20ish submissions, such as string suffix structures or MITM

  • »
    »
    11 months ago, hide # ^ |
     
    Vote: I like it +6 Vote: I do not like it

    Thank you so much for the kind words! Also, the weak topics do consider the problems least solved, but also some other factors like your current level, past levels etc. Formulating a good heuristic for weak topics was something I was struggling on... Tried the heuristic you suggested but it wasn't working well for higher rated users.

    Will work more on it though! Thanks a lot, do leave some feedback too!

»
11 months ago, hide # |
 
Vote: I like it 0 Vote: I do not like it

Checked it out on mobile. Looks neat, nice UI. However the proficiency measurement lacks accuracy, topics that many people of x rating can do, but you do little of should count as weak proficiency. In my instance I do few do problems (actually I tend to avoid pure dp), yet it considers dp a strength. Though there may be a different reason for this.

Many problems which have both the greedy and dp tags should not contribute to dp proficiency imo, because most people do it with greedy, the do could just be a pref sum or something.

Other than that cool idea and project!

  • »
    »
    11 months ago, hide # ^ |
     
    Vote: I like it 0 Vote: I do not like it

    Yes you're right... But it's actually hard to analyze thousands of submissions of a user and see what method they used to solve a question that might have both greedy and dp tags... That would require a lot of processing haha

»
11 months ago, hide # |
 
Vote: I like it 0 Vote: I do not like it

why's it showing authentication error?

»
11 months ago, hide # |
 
Vote: I like it 0 Vote: I do not like it

it's cool

can you please teach me how to make such things?

»
11 months ago, hide # |
 
Vote: I like it 0 Vote: I do not like it

Looks real deal!

»
11 months ago, hide # |
Rev. 2  
Vote: I like it 0 Vote: I do not like it

Wow this is really cool, It was really helpful, Thanks. can you share your github handle?

»
11 months ago, hide # |
Rev. 2  
Vote: I like it 0 Vote: I do not like it
Not Enough Data

We don't have enough data yet to analyze your weak areas accurately. Please solve more problems and check back later for personalized recommendations.

I have 600+ submissions bruh

Edit: It is working now

»
11 months ago, hide # |
 
Vote: I like it 0 Vote: I do not like it

Great tool! Could you add a feature to recommend problems for multiple users?

It’d be super helpful for group or pair practice. Thanks!

»
11 months ago, hide # |
 
Vote: I like it 0 Vote: I do not like it

Really helping me!! Can you please do something so that i can keep myself logged in it is logging me out after every hour or so.

  • »
    »
    11 months ago, hide # ^ |
     
    Vote: I like it 0 Vote: I do not like it

    Hi, that has been done to prevent attacks and is a security feature, I know it's a hassle but one that can't be avoided :) Hope the tool works out well for you!

»
11 months ago, hide # |
 
Vote: I like it 0 Vote: I do not like it

i want to know how it works. actually i am confused i don't even study graph still its shows proficiancy in graph 60%

  • »
    »
    11 months ago, hide # ^ |
     
    Vote: I like it 0 Vote: I do not like it

    It must be that some of the questions you solved with some other method also had the tag graphs in it...

    • »
      »
      »
      11 months ago, hide # ^ |
       
      Vote: I like it 0 Vote: I do not like it

      so it do analysis based on the tags of solved question not the actual analysis on the submission code which may or may not include that tag. its impresive that u can do that, and it may help

»
11 months ago, hide # |
 
Vote: I like it 0 Vote: I do not like it

i am new to cp, ig i'll give it a try

»
11 months ago, hide # |
 
Vote: I like it 0 Vote: I do not like it

Nailed the UI/UX , skill map is very good too

Really good work

»
11 months ago, hide # |
 
Vote: I like it 0 Vote: I do not like it

It looks insane. Thanks a lot !! Will surely try it out.

»
11 months ago, hide # |
 
Vote: I like it 0 Vote: I do not like it

Have to say it looks promising, would love to add this to my practice routine, thanks a lot!

»
11 months ago, hide # |
 
Vote: I like it 0 Vote: I do not like it

Looks really nice , I would definitely use it.

»
11 months ago, hide # |
 
Vote: I like it 0 Vote: I do not like it

The UI looks nice and the idea is great, will definitely use

Wonder what algorithm you use lol

»
10 months ago, hide # |
 
Vote: I like it 0 Vote: I do not like it

Auto comment: topic has been updated by shauncodes (previous revision, new revision, compare).

»
10 months ago, hide # |
 
Vote: I like it 0 Vote: I do not like it

Auto comment: topic has been updated by shauncodes (previous revision, new revision, compare).