DrSwad's blog

By DrSwad, 7 years ago, In English

Hello Codeforces!

We will be hosting the second contest of MathMash today at 1:00 PM (UTC). The round will consist of 10 problems to be solved within 2 hours.

We have learned a lot from our previous contest and hope to use that experience to better organize this one. We didn't expect so many users solving so many problems that quickly. So we added more problems and tried to increase the difficulty of the higher problems a bit.

Also the time-penalty seemed to cost too high considering the actual number of points rewarded for a problem. So we will be increasing the score for each problem in this round.

There was an issue in the contest page which has been fixed now. You won't be rated for the contest even if you are registered but don't submit any answer(also if you don't register you can't submit any answer till the contest ends). And the limit of 20 submissions per problem seemed too high, it has been reduced to 10 now.

I'm also working on a clarification section in the contest page, so that users can ask for any clarification for any problem. Hopefully it'll be ready before the contest. If not, then it'll have to wait for the next round to serve us.

I'm inviting you all to participate in the contest. Hopefully we will have a fun and successful round.

Update: I didn't notice that the previous schedule overlapped with a csa round. I've updated it so that our contest ends before the csa round starts.

Update 2: I feel really sad writing this. The site looks promising, but the timing could not have been worse. With the public exams of my country so near, I am awfully busy trying not to fail(and this exam is really important in my country). It's literally getting impossible to squeeze out more than 2 hours per day to work on the site now, which I need to spend on improving the platform rather than setting up problems. The current admins(my friends) will also be taking that exam. So the site really begs for some collaboration from others to set up the problems for future contests.

From my experience of the last two contests, the whole process of setting up a contest goes as follows:

  1. We first work on finding some "not obvious to code" but interesting and not well-known problems which could be set as the 2000+ points problems for the round. This step requires a lot of time, as we try to avoid getting into trouble for using any National or International Olympiad problems just to be safe and thus have to go really deep looking for these problems. Then we collect the 500-1500 points problems mostly focusing on if they are interesting and appealing rather than if they are vulnerable to codes.

  2. After that we go through the solution of each of the selected problems to verify if the problems and their answers are correct.

  3. There's not much work to do while the contest runs. But when it ends, writing up the editorial takes up a lot of time and effort too.

We were really determined to regularly host contests in every 2 or 3 days interval. But if we can't manage some help now, there might unfortunately be a month-long break in contests.

Till now three awesome people from Codeforces offered to collaborate on the site. But each of the 3 steps above needs more people(particularly step 1). If you would like to join us you can select one or more of the above steps that you would like to collaborate on and kindly
— Find me on Telegram [Username: DrSwad] (most preferred way)
— or find me on Facebook [Username: nayeemulislam.swad]
— or PM me here on Codeforces

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

»
7 years ago, # |
  Vote: I like it +8 Vote: I do not like it

How are the times for the contests determined? They are pretty early for me, I don't know how they stand with other people. Thanks for your work.

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

    I'm really sorry to hear that :( The contest is scheduled considering the locations of our users.

    Currently the convenient time range seems to be 13:00-16:00 UTC. If we go beyond 16:00 UTC we risk losing 70% of our users coming from Asia, as it'll be late night there when the contest ends. And scheduling it earlier then 13:00 UTC will be inconvenient for the users in USA, as it'll be too early in the morning. So 13:00 UTC is the best option we have right now to avoid clashing with the csa contest(which is scheduled at 15:05 UTC).

    The best time to schedule these contests is around 15:00 UTC when it conveniently fits with all of the user locations. But most of the online programming contests are also hosted around that time.

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

delayed?

»
7 years ago, # |
  Vote: I like it +6 Vote: I do not like it

I think we need harder problems tbh :D

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

    I think it will be good to see a solution to problem G which I can read in 2 minutes, not to say come up with.

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

      I didn't completely prove my solution, but I noticed the modulo 2 invariant and modulo 3 invariant (with (2,2)) first.

      Then I noticed that a=2b+1 cannot be mapped (except for (1,0)). So I had 672 possible solutions left, so I just tried it without much thought.

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

        Can you please elaborate your solution ? What is the invariant mod 3 exactly and how to use it to get 672 ?

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

          Observation 1. For (a, b), the sum a + b is invariant mod 2.

          Observation 2. For (a, b), if (a, b) ≡ (2, 2) in mod 3, the number pair before that must be (2, 2) in mod 3, so in fact (2, 2) in mod 3 cannot appear.

          Observation 3. Also, it is easy to see that pairs (2b + 1, b) cannot appear.

          Combining these three not-hard-to-see observations gives us that there are at most 672 sols.

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

            And how to prove there are exactly 672 solutions ?

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

              I didn't try completely proving the problem after the contest :(

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

            I did not understand how to use observation 3 to prove there are at most 672 solutions.

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

              After Observation 1, 2 we get that k ≡ 1, 3 in mod 6.

              For Observation 3, we get that (2018, 1345) is impossible, so combine that to have at most 672 solutions.

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

            Thanks a lot for your kind help and explaining your approach to me :)

»
7 years ago, # |
Rev. 2   Vote: I like it +11 Vote: I do not like it

What is the main reason you consider programming 'cheating' in solving these problems ?

Why not set problems where programming it is not trivial, like Project Euler. My opinion is it should be a website with Project Euler type questions with time limits in contests. Don’t include problems which get trivialised with programming.