Блог пользователя i_pranavmehta

Автор i_pranavmehta, 17 месяцев назад, По-английски

Hi coders! I hope you are doing great, My discord server community recently came up with a new ladders which probably is the most updated list available. I'll try to explain how the algorithm behind the ladders works, and how to use it appropriately for maximum growth. I plan on updating it every couple of months so that outdated data is never a problem, specially nowadays when the problems are becoming more tricky with time!

  1. How to access the website? It's free for everyone and can be accessed at ACDLadders

  2. What exactly is ACD Ladders? It's a collection of problems which aren't random but have proven to be helpful to 45k+ codeforces users over the past 16 months (4 quarters).

  3. How were these problems picked? The data of the above mentioned 45K+ codeforces users is analyzed, the past 16 months activities (problems solved and rating increase) is taken into consideration, the data is then broken down into 4 buckets of 4 months each. Then for each bucket if the user has solved significant number of problems and has achieved a growth in rating equal to some preset threshold then the solved problems are taken into consideration. This algorithm is then applied to all the users, which gives us a list of problems along with the number of people it was solved by (AC submits). The problems are then ranked based on their frequency of ACs.

  4. How you should be practicing? Enter your handle in the search bar on the website, you would be provided with the suitable ladder based on your profile (only rating is the deciding factor here), start solving problems from here (the ladder is arranged in descending order of usefulness). if you get stuck on any problem then turn on the tags toggle button from the top so that you can see the topics which are related to it (this often serves as a good hint), if you still however aren't able to solve it then at the bottom of the website there's a link to my discord server which you can utilize to post doubts and get help (this is faster than you can imagine)!

Full disclosure — the code is opensource and you can find the repositories at my github handle -"i-pranav". However it was forked from C2Ladders (both the logic for the ladders and the website), thereafter significant changes were made in both backend and frontend to make it the best product out there!

I would like to hear your views and suggestions on this, always open to tweak algorithm, make changes to the website if it is helpful to the community.

UPDATE1 : the website has been updated, with the following.

  1. local storage for saving the handle (entering handle every time was annoying obviously)
  2. added a loader so as to make it explicit when the website is actually waiting for the data from the API.

UPDATE2: The ladders has been updated with new algorithm, check here

Next updates: 1. local storage for saving the handle [DONE] 2. Loader [DONE] 2. changes in ladder algorithm to make it even more apt. [DONE] 3. button to hide solved problems. 4. Light Theme.

Please let me know if you want any other changes.

  • Проголосовать: нравится
  • +117
  • Проголосовать: не нравится

»
17 месяцев назад, # |
  Проголосовать: нравится +8 Проголосовать: не нравится

orzzz!

»
17 месяцев назад, # |
  Проголосовать: нравится +8 Проголосовать: не нравится

Arigato gozaimasu ❤️

»
17 месяцев назад, # |
  Проголосовать: нравится +5 Проголосовать: не нравится

Much needed with new questions.

»
17 месяцев назад, # |
  Проголосовать: нравится +5 Проголосовать: не нравится

Lets see if i can improve and increase mt rating :) Anyways keep up the good work :)

  • »
    »
    17 месяцев назад, # ^ |
      Проголосовать: нравится +2 Проголосовать: не нравится

    Sure! let's keep this thread updated and let's see how long it takes you to be green :). All the best!

»
17 месяцев назад, # |
  Проголосовать: нравится +5 Проголосовать: не нравится

The updated ladder was so much needed for the community. Let’s start practicing now from this Ladder.

»
17 месяцев назад, # |
  Проголосовать: нравится +5 Проголосовать: не нравится

much needed

»
17 месяцев назад, # |
Rev. 2   Проголосовать: нравится 0 Проголосовать: не нравится

I find the idea similar to C2Ladder.

I'm following C2ladder seriously for my practice (currently working on 1600). I'll parallelly utilize ACD Ladder now.

  • »
    »
    17 месяцев назад, # ^ |
      Проголосовать: нравится +2 Проголосовать: не нравится

    yes I already mentioned that it's forked from c2 ladders, the difference is that the time range is short, problems are updated and the UI is better! I had to do this because I felt problems at c2 ladders were being less prominent and apt.

    • »
      »
      »
      17 месяцев назад, # ^ |
        Проголосовать: нравится +4 Проголосовать: не нравится

      I'm sorry I didn't notice the mention of C2Ladders. Somehow my mind completely skipped it.

      I personally like the UI of C2Ladders better. I feel it's cleaner. Maybe coz I'm already used to it XD. That being said, Thanks for the updated problems list. I'm sure it'll definitely be more relevant.

      • »
        »
        »
        »
        17 месяцев назад, # ^ |
          Проголосовать: нравится 0 Проголосовать: не нравится

        whatever ladder works for you! :) just trying to help as much as I can. All the best!

»
17 месяцев назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится

I think having an A B C.. Ladder would be of great help, as in problem A. problem B. etc like we do in a2oj. Thanks for sharing your ladder with the community!

  • »
    »
    17 месяцев назад, # ^ |
      Проголосовать: нравится +9 Проголосовать: не нравится

    problem with that approach is that the ratings aren't fixed. For example problem D of a easy contest might have same rating as that of a problem C of a hard contest. So there's no clear differentiation

»
17 месяцев назад, # |
  Проголосовать: нравится +5 Проголосовать: не нравится

awesome!

»
17 месяцев назад, # |
  Проголосовать: нравится +6 Проголосовать: не нравится

I solved a couple of problem from the ladder 1200. I have to say...This is the by far the best training tool I have found on codeforces. The UI is awesone, and responsivity of all functionality is at the same level. First of all, it allows you escaping from the mess of the codeforces problemset, and also, it actually suggest you problems which are useful and in line with the current meta, not some very old 1500 from years ago which feels like modern 800 and doesnt really teach you anything. Main issue with problemset is that when I filter by submissions I just get old thrash problems. This doesn't happen with this ladder. Thank you very much i_pranavmehta!

  • »
    »
    17 месяцев назад, # ^ |
      Проголосовать: нравится 0 Проголосовать: не нравится

    Thanks a lot! Glad to hear that our efforts have been successful at helping you! I hope this website helps you grow and achieve your goal in the most joyful way possible!

    Happy coding!

»
17 месяцев назад, # |
  Проголосовать: нравится +1 Проголосовать: не нравится

with due respect to you, for few days im doing a2oj and their prblem is nice with new concept , gd use of ds, so now if u recommend us to do this then why we should do? i know you know far better than me your guidance will surely help me, thank you.

  • »
    »
    17 месяцев назад, # ^ |
      Проголосовать: нравится +2 Проголосовать: не нравится

    the simple reason is that nowadays you won't see problems similar to what you used to see 10 years ago. Everyone learnt the basic DSA over the years, the problems are much more constructive in my opinion. I could be wrong here but the data suggests otherwise! I hope that answers!

    • »
      »
      »
      17 месяцев назад, # ^ |
      Rev. 2   Проголосовать: нравится 0 Проголосовать: не нравится

      very true nowdays problems are more adhoc and constructive but few good coders suggest me suggest to solve a2oj comes with various topic, so implementing skill will be more vast by doing this i guess, and indian LGM pikel_rik suggest it to doing this but i believe success varies person to person. so you might be right, Thanks for your guidance. btw your graph is amazing with 300+ solve and CM,great.

»
17 месяцев назад, # |
  Проголосовать: нравится +6 Проголосовать: не нравится

I liked the idea of acd ladder.. Excellent work i_pranavmehta I hope it helps me in reaching blue soon

^_^

»
17 месяцев назад, # |
  Проголосовать: нравится +6 Проголосовать: не нравится

Hoping that I will able to increase my rating.

Thankyou and keep the good work on..

»
17 месяцев назад, # |
Rev. 2   Проголосовать: нравится 0 Проголосовать: не нравится

All-ready part of this(A code daily) by i_pranavmehta community. Lets mark my comment up. so that we can see how much it takes to bring me blue.

»
17 месяцев назад, # |
  Проголосовать: нравится +6 Проголосовать: не нравится

what does the frequency next to each problem mean?

  • »
    »
    17 месяцев назад, # ^ |
      Проголосовать: нравится +2 Проголосовать: не нравится

    The number of valid coders (there's a condition for categorising a user as valid) who have solved this problem.

    The condition for categorising any user as valid takes into account the number of problems solved and the amount of growth the person saw.

»
17 месяцев назад, # |
  Проголосовать: нравится +7 Проголосовать: не нравится

Huge respect!

»
17 месяцев назад, # |
  Проголосовать: нравится +5 Проголосовать: не нравится

much needed ,hope to become specialist soon with ACD Ladders .Thank you so much ❤️

»
16 месяцев назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится

i_pranavmehta

Can you please tell me if the questions sorted by difficulty in any sense? If yes, how so i.e ascending difficulty or descending ?

  • »
    »
    16 месяцев назад, # ^ |
      Проголосовать: нравится +2 Проголосовать: не нравится

    each ladder contains problems of same difficulty for example, ladder "800" contains problems with difficulty rating =800, within a ladder the problems are sorted based on the number of times they were solved by people who saw a growth.

»
16 месяцев назад, # |
Rev. 2   Проголосовать: нравится +7 Проголосовать: не нравится

I hope it brings positive changes to increase my rating.

Great Work i_pranavmehta

:)Glad to see your suggestions so that I can improve.

»
16 месяцев назад, # |
  Проголосовать: нравится +7 Проголосовать: не нравится

Too good and more useful. Thanks for this!

»
16 месяцев назад, # |
  Проголосовать: нравится +5 Проголосовать: не нравится

Well, Are you and your team also using these ladders?

»
16 месяцев назад, # |
  Проголосовать: нравится +5 Проголосовать: не нравится

Feature request.

  1. Add light theme and theme toggle button. (Because not everyone is a fan of dark theme)

  2. Add a button to hide solved problems.

  • »
    »
    16 месяцев назад, # ^ |
      Проголосовать: нравится +2 Проголосовать: не нравится

    Thanks for the suggestions.Both of your suggestions seem useful to me, we'll try to incorporate them ASAP :).

»
16 месяцев назад, # |
  Проголосовать: нравится +7 Проголосовать: не нравится

Awesome !

»
16 месяцев назад, # |
Rev. 2   Проголосовать: нравится 0 Проголосовать: не нравится

Based on my observation, it appears that you have solved only 300 problems and active for only max 15 days in a row.

In order to progress further on the ladder, could you kindly provide information on the number of problems, categorized by their respective ratings, that a user should aim to solve?

  • »
    »
    16 месяцев назад, # ^ |
      Проголосовать: нравится 0 Проголосовать: не нравится

    the problems you should practice depend on your current rating, the difficulty I generally suggest is +200 for example if you are at 1000 then solve problems of difficulty (1200), this also is the same formula which the ladders use for recommendation once you enter your handle.

    Yes I have not been too active here due to lack of time as I run a discord community wherein I along with several others help each other in doubts, this in turn gives me a lot of practice! and codeforces wasn't the first platform I started coding at (though I love it). I have solved more than 2500 problems as a whole I guess (LC, CF, CC, GFG all included).

»
14 месяцев назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится

thank you for this

»
11 месяцев назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится

How many problems do you recommend to get comfortable with each rating?