pwned's blog

By pwned, 21 month(s) ago, In English

Hi everyone! I've noticed that the difficulty of Div2As has slightly increased. In my opinion, this creates a skewed result, as people who intend to join may not be able to solve the first problem. Then, they may end up leaving without submitting anything. As a result, the difficulty rating of Div2As largely depends on the number of fakesolves; i.e. those who fail main tests or end up FSTing.

A harder Div2A also gives a slight disadvantage to those who join and only get A, as the pool of people competing are the ones who are more likely to solve A.

In addition, a hard Div2A scares lower rated coders away from Div2, which shouldn't be the case as the competition is also for them.

Therefore, I humbly suggest problemsetters to make simpler Div2As for more inclusive participation.

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

| Write comment?
»
21 month(s) ago, # |
  Vote: I like it +274 Vote: I do not like it

Completely agree! And not only div2, div1 too. Problem A should be as submitbait as possible so people don't leave contest because of not being able to solve A fast enough, thus giving a huge disadvantage those who have been able to solve it. Since now they are last, whereas in reality they would have been in front of those who left.

  • »
    »
    21 month(s) ago, # ^ |
      Vote: I like it +204 Vote: I do not like it

    Or we can just use the Atcoder rated / unrated registration system :)

    • »
      »
      »
      21 month(s) ago, # ^ |
        Vote: I like it +36 Vote: I do not like it

      Best! Because people leave the problems without solving them, which leads to a decrease in problem rating, now 1000 rated problems become 800 because only those who submit are included while calculating the rate.

    • »
      »
      »
      21 month(s) ago, # ^ |
        Vote: I like it +29 Vote: I do not like it

      Yeh, many people (including myself) may not fulfill the contest after seeing Problem A too hard (even if it isn't as hard as we thought), and it may cause the rating unreal.

»
21 month(s) ago, # |
  Vote: I like it -39 Vote: I do not like it

Please look into this! MikeMirzayanov

»
21 month(s) ago, # |
  Vote: I like it +3 Vote: I do not like it

Completely agree. This is a mistake I've done when I started out. And I am seeing many of my peers do it because of hard div2A. And I also feel like the balance should be maintained. Or else many people who can solve A but not B are going to face a hard time.

»
21 month(s) ago, # |
  Vote: I like it +65 Vote: I do not like it

In div1s some cannot solve A and leave the contest unrated... and others solve A just before the contest end with a rating decrease. Making div1A easier can improve this situation.

»
21 month(s) ago, # |
  Vote: I like it 0 Vote: I do not like it

Well, if we can expect a trivial A, then people might use pattern "If a cannot solve B I will quit.", and check B before submitting A. Actually I am doing this since months.

The problem would be better solved by the Atcoder rated / unrated registration system as stated by others above.

  • »
    »
    21 month(s) ago, # ^ |
    Rev. 2   Vote: I like it +86 Vote: I do not like it

    I think there is a negligible amount of people who do that.

    • »
      »
      »
      21 month(s) ago, # ^ |
      Rev. 2   Vote: I like it 0 Vote: I do not like it

      In cf this will work against you, every minute you hold submission for A you lose points. Not a feasible approach

      I have been doing that on leetcode for some time, only submitting when I passed samples for 3 problems out of 4, if I can’t pass a 3rd problem I don’t submit at all

»
21 month(s) ago, # |
  Vote: I like it +27 Vote: I do not like it

Sometime: "I solved A problem late, maybe I should not enter the contest, I should submit it after the contest".

»
21 month(s) ago, # |
  Vote: I like it -36 Vote: I do not like it

If you are tired, you can go home or cry.

Habib

»
21 month(s) ago, # |
Rev. 2   Vote: I like it +215 Vote: I do not like it

Full support.

There is another point here: solving one problem mentally commits you to the contest. I think such psychological concerns should not be ignored. Several experienced organizers, I remember snark for example, have said that each contest should have a "gift" that almost all contestants can easily solve. Even though it may seem that a problem that everyone solves quickly doesn't change anything, it in practice means a better and more enjoyed contest by everyone. I find it kind of baffling how easily this advice is ignored these days.

Also I think many A-s make the mistake of trying to be very clever that are simple once you see something, but that often means the problems aren't so easy. There are certain problems that seem obvious once you know the solution, but that can lead to a bad assessment of its difficulty.

»
21 month(s) ago, # |
  Vote: I like it +58 Vote: I do not like it

I completely agree.

When atcoder came up with their Rated/Unrated system, I wasn't sure if the system would work. But as the time went, I realized that it was the best thing that happened. I wish that system can be replicated on codeforces as well.

  • »
    »
    21 month(s) ago, # ^ |
    Rev. 2   Vote: I like it 0 Vote: I do not like it

    I understand the rated/unrated thing on Atcoder, but why should it be on Codeforces? You will lose points already if you submit late in contest, unlike Atcoder where the points were fixed no matter when you submitted. The late strategy is even worse for cf style educational rounds.

    So the late submission thing may only favor you on Codeforces, when you can also solve harder problems.

    That being said, I think the only thing that makes sense is reducing the difficulty of the first problem, which may also result in the server slowing down in the first couple of minutes of the contest.

    pigmike

    • »
      »
      »
      21 month(s) ago, # ^ |
        Vote: I like it +14 Vote: I do not like it

      When you mark beforehand that the contest is rated for you, you won't skip the round because A/B took you too long to solve.

      • »
        »
        »
        »
        21 month(s) ago, # ^ |
        Rev. 2   Vote: I like it 0 Vote: I do not like it

        Idk, but whatever time leverage given to choose rated/unrated (e.g. 5 minutes used on Atcoder, which may be increased since cf has more users) should be enough time to determine if you won't be able to solve Div2A, or if you should skip.

        • »
          »
          »
          »
          »
          21 month(s) ago, # ^ |
            Vote: I like it 0 Vote: I do not like it

          It's also the case for div 1. And I think you would need to choose whether it's rated/unrated for you before the start. I don't know for sure how it's on AtCoder, but that's how I think it would be good on Codeforces.

  • »
    »
    21 month(s) ago, # ^ |
      Vote: I like it 0 Vote: I do not like it

    What if you decide you can't make it to the contest, after having thought previously that you were going to be able to? Then solving no problems would leave you with a rating that doesn't represent your skill

    • »
      »
      »
      21 month(s) ago, # ^ |
        Vote: I like it 0 Vote: I do not like it

      You can unregister, at least on Codeforces.

      • »
        »
        »
        »
        21 month(s) ago, # ^ |
          Vote: I like it 0 Vote: I do not like it

        Is that a thing? How does one do that?

        • »
          »
          »
          »
          »
          21 month(s) ago, # ^ |
            Vote: I like it 0 Vote: I do not like it

          You open the list of participants in the contest you registered, and find yourself. There is an 'X' button to unregister. You can select the 'friends' tab to find yourself easily.

    • »
      »
      »
      21 month(s) ago, # ^ |
        Vote: I like it 0 Vote: I do not like it

      I register 10 mins before contest on atcoder

»
21 month(s) ago, # |
  Vote: I like it -29 Vote: I do not like it

As for me, recent round were easier than half year ago.

Btw, if you can't solve div2A problem — go to div3. If you can't solve div1A — it's div1 round, what did you expect from it? It must be hard even for experienced people.

  • »
    »
    21 month(s) ago, # ^ |
      Vote: I like it +35 Vote: I do not like it

    Problem is when you can solve, not when you cannot

    • »
      »
      »
      21 month(s) ago, # ^ |
        Vote: I like it -26 Vote: I do not like it

      Indeed. But if you can solve every problem, is there any sense in those problems?

  • »
    »
    21 month(s) ago, # ^ |
      Vote: I like it +35 Vote: I do not like it

    I expect Div 1 A not to be a 1900 problem so that people can have more time to solve other problems.

    • »
      »
      »
      21 month(s) ago, # ^ |
        Vote: I like it -30 Vote: I do not like it

      Can't agree, as it was stated above, "it's div1 round, what did you expect from it?" Imo div1A should not be <1600. Like, I don't want to somehow offend you, but if you're not able to solve a 1900 rated problem fast enough, there's no sense for you to try solving other problems. I understand 1900 rated problems taking a lot of time for div2 users, but in div1 I think it should take you <10 minutes to solve, no?

      TimDee

      • »
        »
        »
        »
        21 month(s) ago, # ^ |
          Vote: I like it -22 Vote: I do not like it

        Funny how blue has opinion on div. 1 problems.

        Marinush

        • »
          »
          »
          »
          »
          21 month(s) ago, # ^ |
          Rev. 2   Vote: I like it 0 Vote: I do not like it

          Nobody asked yours.

          lis05

          • »
            »
            »
            »
            »
            »
            21 month(s) ago, # ^ |
              Vote: I like it -28 Vote: I do not like it

            Not to be upsetting but it would be optimal if you commented only when you had something trully useful to add to the conversation.

            Marinush

            • »
              »
              »
              »
              »
              »
              »
              21 month(s) ago, # ^ |
              Rev. 2   Vote: I like it +10 Vote: I do not like it
              Hail Marinush
              Thanks
          • »
            »
            »
            »
            »
            »
            21 month(s) ago, # ^ |
              Vote: I like it +1 Vote: I do not like it

            Nobody asked yours too.

            BlindingKnight

    • »
      »
      »
      21 month(s) ago, # ^ |
        Vote: I like it 0 Vote: I do not like it

      OK. Let's take a look at some recent div2A over the past 4 months.

      1900 1500 1600 1300 1600 1100 1600 1300

      I see no other problems harder than 1600, do you? I guess, that 1900pts problem was just an "accident" that happens sometimes. There are no reasons to make div1A easier.

      • »
        »
        »
        »
        21 month(s) ago, # ^ |
          Vote: I like it 0 Vote: I do not like it

        We don’t say all div1 As should be made easier, we say that this accidents shouldn’t happen.

        • »
          »
          »
          »
          »
          21 month(s) ago, # ^ |
            Vote: I like it 0 Vote: I do not like it

          It was just 1 problem in the last 4 months, these "accidents" are very rare. Honestly, your Div1A argument is totally pointless.

          • »
            »
            »
            »
            »
            »
            21 month(s) ago, # ^ |
              Vote: I like it +11 Vote: I do not like it

            From the things I noticed while testing rounds these accidents are made on purpose, and I think it's wrong. Also even 1600 may be too much

            • »
              »
              »
              »
              »
              »
              »
              21 month(s) ago, # ^ |
                Vote: I like it -9 Vote: I do not like it

              1600 is too much? You do realize most/all Div1 rounds have Div2 rounds in parallel, and reducing the difficulty of Div1A/Div2C just makes the first few problems in Div2 too easy, which may result in "speedforces".

              • »
                »
                »
                »
                »
                »
                »
                »
                21 month(s) ago, # ^ |
                  Vote: I like it 0 Vote: I do not like it

                Last three(with already rated problem) div2-only rounds have C difficulties of 1400, 1100 and 1200.

                • »
                  »
                  »
                  »
                  »
                  »
                  »
                  »
                  »
                  21 month(s) ago, # ^ |
                    Vote: I like it 0 Vote: I do not like it

                  and do those seem right to you? why should a Div2C problem be 1100 rated? it doesn't make sense to me

                • »
                  »
                  »
                  »
                  »
                  »
                  »
                  »
                  »
                  21 month(s) ago, # ^ |
                    Vote: I like it 0 Vote: I do not like it

                  You say it will cause a disaster, i give an example that we have those all the time and somehow live. 1100 may be too little, but it's <1600

                • »
                  »
                  »
                  »
                  »
                  »
                  »
                  »
                  »
                  21 month(s) ago, # ^ |
                  Rev. 2   Vote: I like it -6 Vote: I do not like it

                  Rounds with C>=1600 rated have balanced solves distribution. In those rounds doesn't happen thing like C has 5000 solves and D has 200. In rounds with too easy C always happens that many CMs or high experts appear to be below pupils and specialists.

                  Yes, it happens in rounds with >=1600 C, but way less and less frequently.

  • »
    »
    21 month(s) ago, # ^ |
      Vote: I like it +18 Vote: I do not like it

    The biggest problem I see is telling people participating in div2 contests to move to div3 contests when a) div3 contests are less frequent, b) people who only solve div2A are still at a disadvantage when more people back out, c) people are still discouraged when they are unable to solve a single problem from a div2 contest (at least people know div1 contests are hard, people come into div2 contests thinking they're just average), and most importantly, d) it's one problem that's already meant to be rated 800, there's literally no consequence to making it an easier 800.

    I agree that div 1A is probably fine as is, I do disagree with the 1900 div1A but that's just an exception to what's generally been in the right difficulty range most contests.

»
21 month(s) ago, # |
  Vote: I like it +13 Vote: I do not like it

I completely agree. I'm helping fresh students get into competitive programming, and recommended them to come to Codeforces and start with 800-difficulty problems, but then I find that the recent 800-difficulty problems are waaaaaaaaaaaaaay harder than the old 800-difficulty problems.

For example, problems like 1712B - Woeful Permutation really should not be rated at 800. I know this is a B problem, but I think the 800 rating only arose because 1712A - Wonderful Permutation induced a lot of quits, which I also don't think should be 800 either.

I'm aware that you can sort the problems by number of solves instead, but I feel that newer problems have better quality than older problems (along with later trends like test cases and input sizes that reflect modern performance in the judging environment). Number of solves is biased towards older problems due to their age, and this becomes compounded further when people sort by number of solves to start practicing.

  • »
    »
    21 month(s) ago, # ^ |
    Rev. 2   Vote: I like it 0 Vote: I do not like it

    It is ridiculous that 1712B is only 800

    It matches the number of solvers though. But it only makes me question this number as well

»
21 month(s) ago, # |
  Vote: I like it 0 Vote: I do not like it

Maybe have it so that if you enter the contest page (the page with the problems), and you registered before hand, then the round is rated even if you don't submit. That way if you registered and forgot about the contest or something, you will still be fine.

  • »
    »
    21 month(s) ago, # ^ |
      Vote: I like it +3 Vote: I do not like it

    Everybody would check problems without logging in

    • »
      »
      »
      21 month(s) ago, # ^ |
        Vote: I like it +10 Vote: I do not like it

      I meant something where you can't see the problems unless you are logged in and enter the contest page.

  • »
    »
    21 month(s) ago, # ^ |
      Vote: I like it 0 Vote: I do not like it

    The way atcoder does it solves most issues.

    There you decide some minutes before the contest to be rated by registering for rated participation. You can also choose to be not rated.

»
21 month(s) ago, # |
  Vote: I like it -7 Vote: I do not like it

Just make people write div3-4 instead. Or go practice coding somewhere else

»
21 month(s) ago, # |
  Vote: I like it +27 Vote: I do not like it

Another suggestion: div2As should not be about guessing from sample input (as it frequently is nowadays)

  • »
    »
    21 month(s) ago, # ^ |
      Vote: I like it +21 Vote: I do not like it

    I don't agree. I have set round for codeforces, the coordinator requires 2a to be a little difficult and interesting, if the sample is not strong, it is almost impossible. A complete sample is an effective way to reduce the difficulty value. Generally speaking, I am used to designing samples to ensure that almost everyone can slove 2a smoothly.

  • »
    »
    21 month(s) ago, # ^ |
      Vote: I like it +16 Vote: I do not like it

    I agree, but not only div 2 A-s. A lot of easy problems try to be "clever" and "simple once you see it", but the consequence is that a lot of these problems are in practice guessed by most participants who don't have any idea why their solution works. At this rate I'm worried that we are teaching beginners that CP is about guessing. After all, there are already plenty of greys who tell other greys that an "observation" means "looking at input/output pairs and noticing an apparent pattern".

»
20 months ago, # |
  Vote: I like it -11 Vote: I do not like it

why dont you go and do your div3,4s newbies

»
20 months ago, # |
  Vote: I like it -16 Vote: I do not like it

We need harder As, even division 1 As are too trivial. They should be at least 2000 rated.

Marinush

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

I completely agree with this. Div2 A being too difficult affects the accuracy of ratings. I also think Div1 A should be easier for the same reason.