muxecoid's blog

By muxecoid, history, 3 years ago, In English

For quite some time I am using codeforces for candidate screening in job interviews.

One common suggestion to improve problem statement clarity is to add examples of invalid inputs to problems with constrains.

For example in 1469A - Regular Bracket Sequence multiple candidates misunderstood the requirement of exactly one '(' and one ')', perhaps because the brace symbol itself was not quoted. Without quotes () looked like a part of sentence to some.

The following examples could be used for such problem to improve clarity

Too many braces

  1
  (())

Not enough braces

  1
  (????????????????

Input overly long

  1337
  .....
  .....
  .....
  • Vote: I like it
  • -36
  • Vote: I do not like it

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

Codeforces is one of the best platforms (compared to codechef or hackerearth) ... the question prompts are complete and apt ... The questions are already properly explained well enough ..

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

    We want to be more of a coding competition rather than reading comprehension competition.

    Any change that switches the focus from reading to coding should be welcome.

    Also codeforces community is extremely toxic. Every blog post which is not an editorial of exceptional quality or a major scientific breakthrough in fundamental algorithmics is getting downvoted.

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

Input overly long

So you are saying you dont understand simple inequalities like t (1≤t≤1000)

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

    Maybe this part is redundant, but the part about braces in problem statement was initially misunderstood by several coders who saw it. Example would help.

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

Question is fine. Coder probably doesn't have much experience with competitive programming questions, and they're also probably stressed out due to interview pressure. So they messed up.

Also, it's best to keep the constraints description exactly how they're right now. It's far more easier and faster to read 1<= n <= 1000, than any overly explicit explanation. The reason the constraints are given in a simple inequality equation, is to prevent mistakes due to language differences. We got coders who speak Japanese, Hindi, Russian, etc. Simple inequality equations are best. They're well understood.

  • »
    »
    3 years ago, # ^ |
      Vote: I like it +3 Vote: I do not like it
    Say no more
  • »
    »
    3 years ago, # ^ |
      Vote: I like it 0 Vote: I do not like it

    I do not have a statistically significant sample, but it happened more than once. You can say that I work in shit company that only gets bad candidates who can not read, but it is only part of the truth.

    It is actually possible to make problem statements significantly more approachable with little extra effort from problem writers and reviewers.

    Unfortunately most of our community is "it worked like this for several years so it must be perfect."

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

      Why not add in the required clarifications to the questions for your interview process?

      Honestly it will give you best ROI on your effort.

      Prepare the new clarifications that would be required for your interview process, and send them to the candidate?

      This way, your interview process satisfies your requirements.

      That would give you the most ROI on your effort, as most likely, things aren't going to change in codeforces or any other competitive programing website. Everyone follows the same format.

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

        Sure I learned my lesson and will add examples of illegal input in future interviews. Because it provides significant improvement to quality of problem statement. However I want to give back to the community and if I have a good idea not just keep it to myself.

        "Everyone follows the same format" is simply not right. That's what topcoder fans said about impeding failure of codeforces in the past long forgotten.

»
3 years ago, # |
  Vote: I like it 0 Vote: I do not like it
Rare image of some people writing blogs like this
  • »
    »
    3 years ago, # ^ |
    Rev. 2   Vote: I like it 0 Vote: I do not like it

    Image of typical codeforces reader downvoting in advance any new entry before reading.

    Yes, yes, Codeforces is perfect circlejerk. Any suggestion is evil by definition.