gs15120's blog

By gs15120, history, 5 years ago, In English

I feeled my rating and skill is stuck.

When I looked at my rating graph, I found it was just haning around about 2050 to 2150 average.

Every one says to be good, solve more problems, but I have solved almost every 2100~2400 (often 2500 and 2600) in div1,2 contests for last 1 year.

I think I am in some trouble. What can I do?

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

| Write comment?
»
5 years ago, # |
Rev. 3   Vote: I like it -126 Vote: I do not like it

Take my opinion with a grain of salt because I'm not even close to your rating, but don't you think you didn't become red because you weren't fast enough? Like I'm not even able to reach pupil because I'm not fast enough.

Edit — Ah shit here we go again, got downvoted without anyone caring to explain what did I say wrong?Lemme guess, is it because what I said doesn't really help him because its just another way of saying solve more problems -_-

  • »
    »
    5 years ago, # ^ |
      Vote: I like it +49 Vote: I do not like it

    Speed matters much less when you get to higher ranks, and it's more can you solve problem (I am not purple-orange because I can't solve fast enough, I haven't solved C on div1).

    • »
      »
      »
      5 years ago, # ^ |
        Vote: I like it +33 Vote: I do not like it

      I see, thank you for clearing my misunderstanding!

»
5 years ago, # |
  Vote: I like it +52 Vote: I do not like it

Personally, I very rarely use codeforces for practice, and instead almost only practice oi. I know I'm just under your rating, but I think this is true of many people higher than me that I feel cf is great for practice contests but practicing oi exposes you to many more techniques and forces you to think longer, while cf is often a single short trick for each problem until you get to very high level, so I think you should try some different sources and read editorials of harder problems more to see new techniques and implement those too.

I'm also a believer in the Chinese way of learning and practicing many data structures, and even if cf doesn't use many, I think it helps your thinking ability and is worth learning and practicing harder problems with them.

  • »
    »
    5 years ago, # ^ |
      Vote: I like it +51 Vote: I do not like it

    What is the chinese way/belief of learning and practicing DS?

    • »
      »
      »
      5 years ago, # ^ |
        Vote: I like it +1 Vote: I do not like it

      SuperJ6 doesn't seem to have read my question yet so can someone (hopefully chinese) answer my question please? I'm curious to know and I've waited 3+ days hoping for a reply...

      • »
        »
        »
        »
        5 years ago, # ^ |
        Rev. 3   Vote: I like it +5 Vote: I do not like it

        Tbh I don't know what you mean. It's exactly what I said, many Chinese people practice many data structure problems, nothing more than that. I remember hearing some saying along the lines of ' data structures make up for lack of thinking skill' by someone emphasizing this, which I think is funny saying but also true at times, and I think practicing data structures is interesting and helps you see interesting thought processes when learning how they work that can be applied on other problems. If you want some resources, here's a copy paste of one dm where I listed some:

        Some Chinese OJs that are popular are luogo.com.cn (bjoi?), lydsy.com (bzoj), and loj.ac (loj). You can search for data structure problems on those, or some have filters, but what I think the best thing to do is go on csdn.net, a popular Chinese blog site, and search for advanced data structure problems from one of those ojs using the name in parentheses, because then you get to see what other people think are the most useful problems, along with get editorials. Probably it isn't necessary as you can get fine English sources for most things, but Chinese websites do offer some problems with more advanced data structures than I can find in English, so it's at least something to check out.

        Note: I am not Chinese, so if there is some Chinese secret, let me know ;)

  • »
    »
    5 years ago, # ^ |
      Vote: I like it -7 Vote: I do not like it

    What is oi?

    • »
      »
      »
      5 years ago, # ^ |
        Vote: I like it +3 Vote: I do not like it

      OI referers to Informatics Olympiads in general

  • »
    »
    5 years ago, # ^ |
      Vote: I like it 0 Vote: I do not like it

    Where can I practice ioi problems ?

  • »
    »
    5 years ago, # ^ |
      Vote: I like it +90 Vote: I do not like it

    Completely disagree with your first point. There are quality OI problems indeed, but there are many more braindead ones, same as in any general type of competition like that. Practicing for OI only will also limit what you'll learn, looking at OI bois that shiver just by seeing a problem has strings as input/has a title that sounds like flow even though if you took your time to read the problem unbiased it's probably not even that topic (sounds familiar? hi people that say mathforces for any contest that has at least 1 problem with mod 1e9 + 7 even though the problem probably isn't math)

    To get "exposed to many more techniques" you should try ICPC, OI and short contests because that way you practice at every kind of problem :D I also feel like your second point should be data structures AND algorithms, gotta be ready for whatever shit the contest brings to you.

    • »
      »
      »
      5 years ago, # ^ |
        Vote: I like it +11 Vote: I do not like it

      I think by OI problems he meant problems with subtasks (that have points). It's easier to solve a hard OI problem, because you can try to solve it part by part. It's also giving you a stress solution most of the time. In an ICPC style task you are aiming for the full solution from the very start, which is obviously harder.

      • »
        »
        »
        »
        5 years ago, # ^ |
          Vote: I like it +12 Vote: I do not like it

        Contests with problems where subtasks are interesting and the full task is significantly different, not just by "use LCA + virtual tree or some known algorithm that you might know or not to solve this faster" kind of things are somewhat rare. Don't put IOI quality problems together with normal OI stuff.

        • »
          »
          »
          »
          »
          5 years ago, # ^ |
            Vote: I like it +2 Vote: I do not like it

          Well, I can't tell for every OI in the world, so I am judging by Russian OI. There are actually a lot of good problems in ROI and other Olympiads in Russia, I have acquired a lot of skills (writing stupid brute-force solutions, thinking about a problem step by step). And also stupid problems like "solve it faster" are a good practice for everyone.

          • »
            »
            »
            »
            »
            »
            5 years ago, # ^ |
              Vote: I like it +3 Vote: I do not like it

            Where do you find ROI? I looked and could only find 2018 in cf gym, and would love to know an oj to try them.

            • »
              »
              »
              »
              »
              »
              »
              5 years ago, # ^ |
                Vote: I like it +21 Vote: I do not like it

              I am afraid not. There is an all Russian judge where you can practice, but the statement is only available in Russian language. And Google translating does not worth your time.

    • »
      »
      »
      5 years ago, # ^ |
        Vote: I like it +5 Vote: I do not like it

      There are too many ICPC-style competition and each of them has too many problems. I feel it’s hard to filter what is good or not. And they are less consistent (ex: CERC 2017 and 2018 have radically different quality)

      Also something really good about OI is that they generally foster long-term thinking, so if you have ICPC problem and OI problems of same quality, it’s better to encourage them doing the latter because they help them to solve harder things in their life. ICPC problems are generally not posed for this purpose (although Snark’s New Year Contest changed the culture a bit)

      For techniques, I think “exposed to techniques” are good and we should learn more about other’s approaches. But for OI they are not expected to “use” the technique but “invent” such kind of them. Anyway, yes, to be exposed at various stuff, solve from various sources.

    • »
      »
      »
      5 years ago, # ^ |
      Rev. 2   Vote: I like it 0 Vote: I do not like it

      Don't get me wrong I think you should do all types of contest as that exposes you to the most things, but I agree with ko_osaga that I find it much harder to filter out good problems from bad in ICPC, because they have to produce more problems and more end up not great quality (of course doing the more prestigious regions and wf kind of fixes that), but mainly it seemed like the op had only been doing codeforces and oi is a much more drastic change from what he'd been doing, so I think he should try more of those.

      Also I very much disagree oi will limit what you learn. The only big thing oi doesn't really have that others do is flow. I wish they had more (any?) flow, but for example I've seen more hard string problems, not just constructive stuff using strings, in oi than cf.

»
5 years ago, # |
  Vote: I like it +66 Vote: I do not like it

Look how more successful people are coding and adapt something from their styles. Your coding style is really bad even for a competitive programmer.

  • »
    »
    5 years ago, # ^ |
      Vote: I like it +30 Vote: I do not like it

    What were the key points which led you to claim/believe his/her coding style to be bad?

    • »
      »
      »
      5 years ago, # ^ |
        Vote: I like it +83 Vote: I do not like it

      Code

      int a,b,c,d,i,k,n,m,e,dx[10]={1,0,-1,0,1,1,-1,-1},dy[10]={0,1,0,-1,1,-1,1,-1};
      

      Sure, why not, let's start our code with declaring 10 one-letter global variables.

        scanf("%d",&e);
        for(int tt=1;tt<=e;tt++)
        {
          scanf("%d",&a);
          k=a;
          for(int t=1;t<=a;t++)
          scanf("%d",&o[t]);
          for(int t=1;t<=a;j[t]=0,t++)
            scanf("%d",&l[t]);
      

      And use them later in a way that doesn't reflect any names from the statement.

      • »
        »
        »
        »
        5 years ago, # ^ |
          Vote: I like it +32 Vote: I do not like it

        I'd like to add something as someone that usually helps people debug something if they ask along with their train of thought behind the solution: I'd open his code and close immediately or just browse through the main bug-prone things to make a vague comment like "have you checked your seg tree?" because it has no spaces, that + these variables makes that wall of code almost unreadable and ugly to debug (for me, maybe you could call it personal preference).

  • »
    »
    5 years ago, # ^ |
      Vote: I like it -6 Vote: I do not like it

    It's not that bad, I hardly think it would make a difference.

    • »
      »
      »
      5 years ago, # ^ |
        Vote: I like it +145 Vote: I do not like it

      It is that bad and I really think it will make a difference

»
5 years ago, # |
  Vote: I like it +13 Vote: I do not like it

Sad story bro.

I kinda feel the same, but I'm hopeful. I find it helpful to solve problems I am not comfortable with, as it broadens my coding and solving skills. Maybe you should do the same. And also you should try to examine how to show the best performance (I'm talking about your best performances on the previous contests).

»
5 years ago, # |
  Vote: I like it +230 Vote: I do not like it

If you can solve problems you couldn't solve a year ago, you're doing fine. Otherwise, change something about your practice.

  • »
    »
    5 years ago, # ^ |
    Rev. 2   Vote: I like it -15 Vote: I do not like it

    :(

  • »
    »
    5 years ago, # ^ |
    Rev. 3   Vote: I like it +24 Vote: I do not like it

    I may be offtoping a bit, but wanna say you are absolutely right. I felt like I stuck too and couldn't even get to the finals this year (lol), even though I've been practicing a lot.

    But recently I opened a task list from Um_nik with problems from timus and realized that I became able to solve problems that were absolutely unsolveable two years ago.

    Now I think that even if my rating isn't growing that fast, I can at least enjoy solving those problems and learn new concepts.

    I feel happy with that :)

    • »
      »
      »
      5 years ago, # ^ |
        Vote: I like it 0 Vote: I do not like it

      What task list are you talking about though?

      • »
        »
        »
        »
        5 years ago, # ^ |
          Vote: I like it +21 Vote: I do not like it

        I don't have a list without my notes, but this is my copy of it: link.

        Not sure if this list is public, so if Alex wants me to remove a link, I'll close a public access.

        • »
          »
          »
          »
          »
          5 years ago, # ^ |
            Vote: I like it +36 Vote: I do not like it

          Nah, it's fine.

          A bit of background: I was trying to help my then teammate Kronecker to grasp necessary concepts usual for CP. He had a very strong math background and was progressing very fast. It's nothing fancy, just some problems from Timus chosen by some weird criteria like "I think it is useful to solve this problem".

          • »
            »
            »
            »
            »
            »
            5 years ago, # ^ |
              Vote: I like it +11 Vote: I do not like it

            I always wondered if high level competitors had some kind of list of good problems, that they enjoyed and they consider a good source for growth in cp. It would be nice if other's had this kind of lists. Thanks for making it. Are the problems there sorted by difficulty? Are this mainly not that hard problems that use some kind of trick or algo ?

            • »
              »
              »
              »
              »
              »
              »
              5 years ago, # ^ |
                Vote: I like it +27 Vote: I do not like it

              I think they should be sorted by Timus "difficulty" which may not coincide with my views on the subject but should be fine as a guideline.

              I wouldn't say that these are not hard. I think that in the end problems wouldn't be easy even for high red.

              Please don't ask to asses the difficulty "in terms of CF" or otherwise, I don't want to.

              About the first part: I actually tried to make a list of problems I liked very much. But it is not the same as "good source for growth in cp". Growth comes from learning technics which may be better done on more standard problems.

              • »
                »
                »
                »
                »
                »
                »
                »
                5 years ago, # ^ |
                  Vote: I like it 0 Vote: I do not like it

                Yeah but there are lot's of problems that don't require any algo or DS and it's solution is made from observations and math may be (but not the math math xdd), and to be able to solve these kind of problems you need to solve some good problems that don't really require techniques. Also (just giving an example) you can get very high rating in codeforces by solving only these kind of problems during contests and of course some based on known algo's and DS'es. OI problems also don't really need advanced techniques or math.

    • »
      »
      »
      5 years ago, # ^ |
        Vote: I like it 0 Vote: I do not like it

      You're just trying to come up with excuses for yourself instead of admitting you suck

    • »
      »
      »
      5 years ago, # ^ |
        Vote: I like it +18 Vote: I do not like it

      Wow, even mentioning my name leads to downvoting.

»
5 years ago, # |
  Vote: I like it +83 Vote: I do not like it

This blog remembered me that I am stuck for 5 years...

»
5 years ago, # |
  Vote: I like it +20 Vote: I do not like it

I'm heading towards that "get stuck on orange for a year" as well TT

»
5 years ago, # |
  Vote: I like it +34 Vote: I do not like it

I don't have that trouble of being stuck. Wish you will escape from being stuck too!

»
5 years ago, # |
  Vote: I like it +13 Vote: I do not like it

You should believe in yourself. Don't loose hope. You will definitely improve.

Also just take some inspirations from KrK. You can check out his profile on various platforms. He is my motivation.

  • »
    »
    5 years ago, # ^ |
      Vote: I like it +41 Vote: I do not like it

    Wow, I am glad to hear this!

    • »
      »
      »
      5 years ago, # ^ |
        Vote: I like it 0 Vote: I do not like it

      Wow, you was stuck long... How did you escape?

»
5 years ago, # |
  Vote: I like it +50 Vote: I do not like it

Being stuck in the same rank or rating range doesn't necessarily mean not improving. Rating is a measure of relative skill, not absolute. Staying in the same rating could just mean improving at the same rate everyone else is improving. At the higher ranks, everyone is much more serious practicing, and thus, the higher you get, the harder it is to rank even higher.

»
5 years ago, # |
  Vote: I like it +1 Vote: I do not like it

I think you should practise div 1 problems exclusively, since div.2 problems' difficulties are not that accurate after 2100.

It may sound harsh, but if you use only CF for practice, I don't think you have solved enough problems to be stable 2200+. Number of problems required to reach a specific rating varies between people. I know users who have solved more problems in 2100-2700 than you, but have less max rating than you (e.g. link).

  • »
    »
    5 years ago, # ^ |
      Vote: I like it 0 Vote: I do not like it

    May be I'm just not yet :) Do you know who whet solved very many before he/she became red?

    • »
      »
      »
      5 years ago, # ^ |
        Vote: I like it +21 Vote: I do not like it

      If CF is your main source of practice, I think you need to solve this many problems to become stable red. But this number varies from person to person.

  • »
    »
    5 years ago, # ^ |
      Vote: I like it 0 Vote: I do not like it

    So, can you please share some platforms for practicing, and your approach of practicing ? I feel like there are way too many places to practice, but I do not know what works best. Have a nice day, bro.

    • »
      »
      »
      5 years ago, # ^ |
        Vote: I like it +5 Vote: I do not like it

      If I know it, I will never write such like this post. I think a good platform, it can give you the difficulty of problems, filter which problem is good, see the solutions. That's why I usually use codeforces.

      My approach is just participating every div2,div1 contest and solve till difficulty 2400~2600

    • »
      »
      »
      5 years ago, # ^ |
        Vote: I like it +12 Vote: I do not like it

      'What works best' differs from person to person. Use at least atcoder besides codeforces. I think I am good in typical / standard problems, but not so good in observation based adhoc problems, hence I am trying atcoder now. Atcoder problems' difficulty can be found here.

      General strategy for everyone is solving problem in difficulty in which you are not fully comfortable, but which is not so hard for you. If you can solve 7/10 random problems of a certain difficulty within reasonable time, you should move to higher difficulty.

»
5 years ago, # |
  Vote: I like it -42 Vote: I do not like it

I am stuck for 1 year too.What can I do?

  • »
    »
    5 years ago, # ^ |
      Vote: I like it -28 Vote: I do not like it

    I think you can take top10 and go to IGM in next contest.

  • »
    »
    5 years ago, # ^ |
      Vote: I like it -27 Vote: I do not like it

    I dont think you are stuck. You are red and i mean being stuck at read is not really a thing, because you are already very high. Just do what you have been doing and you will improve constantly.

»
5 years ago, # |
Rev. 2   Vote: I like it 0 Vote: I do not like it

I've woundered what is a difficult problem and how can I improve myself to solve it

For my experience, almost very hard problems satisfies one of at least one of these. 1. It makes hard to figure out which algorithm I have to use. 2. It is hard to use even I know what to use(ex, what should I put at parameters at dp?) 3. a little changed from formal (ex, easy at tree->dag,tree+1 edge graph )

And to slove those, as everyone says, I need to solve moremoremoremore. You are right guys ;)

»
5 years ago, # |
  Vote: I like it +9 Vote: I do not like it

Can you elaborate your daily problem solving routine?

  • »
    »
    5 years ago, # ^ |
      Vote: I like it 0 Vote: I do not like it

    I used to solve 1 set of atcoder ARC with difficulty yellow~red in one day. Someone said ARC 58~90 is good but I cannot do more because I have done all. I'm planning codeforces contest+upsolving+oi but I'm not sure how much can I do on oi problems. I havn't solved much

    • »
      »
      »
      5 years ago, # ^ |
        Vote: I like it +18 Vote: I do not like it

      Well my question isn't really about which problems you solve, but how do you spend time on each problem, like

      • How often you are stuck
      • How long do you think of a solution while not seeing editorial
      • In general how long it takes to solve one problem

      (I'm sorry, these are very hard questions to answer)

      • »
        »
        »
        »
        5 years ago, # ^ |
          Vote: I like it +8 Vote: I do not like it

        stuck:I think 60~70% when I solve div1 c

        with out editorial: about a hour

        time: div1 b:25min~50min?, div1 c(+editorial):50~120min?

        It was not that hard to answer because I'm stuck in this position for a year TT

»
5 years ago, # |
  Vote: I like it +3 Vote: I do not like it

Maybe I'm currently lower than your level but this might help. I believe that solving a problem isn't really about how you AC it but it is about how you come to that solution. I try to adjust my mindset each time I solve a problem so that even if I'm not on the right track I still need to put myself into the right direction. And by practicing more (may be closer to my inspiration), you might become red one day so best of luck.

»
5 years ago, # |
  Vote: I like it 0 Vote: I do not like it

You probably get into it(rating) too much.