ahmed_aly's blog

By ahmed_aly, 13 years ago, In English
I don't know which criteria is used to select the problems difficulty. In round 78 DIV 1, almost the last 4 problems were solved by the same number of coders which is about 20 coders, and the first problem was solved by about 200 coders. These numbers don't make sense at all. Also this is not the only contest with this situation, it happened in many contests which was much harder than expected.
Another thing which I pointed before, and it's still exist, the problem stories are pretty long, why should I read more than 50% of the problem statement then I find it's completely useless?!

Codeforces admins, please give more attention to the problems in the contests.
  • Vote: I like it
  • +98
  • Vote: I do not like it

| Write comment?
13 years ago, # |
  Vote: I like it +1 Vote: I do not like it
I agree.
CF team must make the problem descriptions shorter,simpler & bug free.

  • 13 years ago, # ^ |
    Rev. 3   Vote: I like it -18 Vote: I do not like it

    I agree.
    Apple AppStore must make the applications cheaper, simpler & bug free.
  • 13 years ago, # ^ |
    Rev. 2   Vote: I like it +28 Vote: I do not like it

    I agree.

    I think they need more testers. They can easily find problem writers, but as we see the overall quality is quite low in some cases. Finding volunteering testers should not be hard.
    More testers will help in many ways:
    a) Help to make statements shorter and clearer;
    b) Testers should be from different rating categories to measure difficulty of the problems and then the problemset will become balanced and will not be super-hard.
    c) They will write many solutions. As a result, there will be less bugs in tests and also the test set will be "full" - i.e. not just bunch of random tests, but against spectacular wrong ideas.



13 years ago, # |
  Vote: I like it 0 Vote: I do not like it
A certain amount of story adds fun to a problem, and tests one's ability to note the important points in between the less important crap. BUT, I agree here, CF statements are usually too much of surrounding story. Which is "annoying", believe me, and greatly reduces the fun of reading the problem statement.
13 years ago, # |
  Vote: I like it +4 Vote: I do not like it
ahmed_aly is right. Personally for me, it is very depressing to solve only one problem. I think that to participate in 2nd division would be much more interesting.
13 years ago, # |
Rev. 2   Vote: I like it +3 Vote: I do not like it

Also I think that aside from the mostly lengthy and obfuscated descriptions, the main reason that I cannot say CodeForces is better than TopCoder (while it has many advantages) is that sometimes the problems relies too heavily on implementation details to make them more difficult. TopCoder problems tend to have more elegant solutions than CF probs, and while CF has its fair share of brilliant ones, there are a lot which just try to drown you in the sea of trivial implementations.

EDIT: But, I <3 CF nonetheless:)
13 years ago, # |
  Vote: I like it +14 Vote: I do not like it
I start reading problem statements from the first paragraph which has numbers and variable names in it. And I miss nothing :D
13 years ago, # |
  Vote: I like it +1 Vote: I do not like it
I really misses contests which i actually can do something in it , i am very disappointed for leaving each contest even that the coding time still running .... this contest is no exception !!:'(
13 years ago, # |
  Vote: I like it 0 Vote: I do not like it
I guess that the majority of people are not able to solve such math problems as  today's B and C. 
13 years ago, # |
  Vote: I like it -9 Vote: I do not like it
I agree with what ahmed_aly says, few points to share with you:
1- In my opinion it is too hard to create good 7-10 problems with the frequency the contests are running at which leads to low quality problems.
2- For most of the people five problems of ascending difficulty are too many for just a couple of hours, so it turns out that most people won't have the time to even read the last problem (or two!) which may be the most beautiful and required the greatest effort!
3- Another consequence for point 2 above is that one tends to spend very little time on hacking phase.

So to wrap up, I suggest limiting the number of problems per round to four! IMO this will lead to better quality problem sets and also enable contestants to solve/hack more.
  • 13 years ago, # ^ |
      Vote: I like it -6 Vote: I do not like it
    Totally agreed. It would be better to have fewer number of "well thought out" problems, instead of badly presented bigger set of it. I suggest limiting a problem set to 3-4 problems.

    Plus, it would be nice to have not just a translator to look at the problem statements, but someone with background in both algorithmic puzzles and writing, to actually work through the problem statements as an "editor", gauging the quality of presentation of the problem, cutting down on too much story and leaving a concise problem statement behind.
    • 13 years ago, # ^ |
      Rev. 2   Vote: I like it +27 Vote: I do not like it

      Funny thing, people in TC want to increase the number of problems, whilst you want to reduce it. 
      I disargee with this idea. In most rounds all the problems are solved, not necessarily by one contestant, but it gives you more possibilities. You don't have to solve all the problems, you can choose what you like. 
      Also there are many hacks in some rounds and in some there are less. It is your strategy when to start hacking instead of solving.
      As regards problems, I don't think that they are of bad quality. Maybe descriptions are a bit too long, but how the smaller number of problems could solve the issue? If there are more problems, an author has to make a bigger effort to prepare longer descriptions, so if there were less problems, descriptions could be even longer :P
      Assuming, I think that Codeforces contests are very good, and this one was an exception, when most of the contestants solved only one problem. Maybe if the problem B had been chosen properly, the number of successful submissions would be higher.
      • 13 years ago, # ^ |
          Vote: I like it 0 Vote: I do not like it
        • 13 years ago, # ^ |
            Vote: I like it -6 Vote: I do not like it
          No idea what happened to my comment there. It was a relatively long one. Can't reproduce right away. The gist was that less problems ==> more time to improve wording quality of the problems, as effort is required to shorten a piece of writing, and not in putting in more irrelevant and less fun story into it.
      • 13 years ago, # ^ |
          Vote: I like it +4 Vote: I do not like it
        "Funny thing, people in TC want to increase the number of problems, whilst you want to reduce it."

        There must be a balance between three things:
        1- The number of problems.
        2- The difficulty level.
        3- The amount of time available.
        I don't believe this balance currently exists in Codeforces contests!

        "In most rounds all the problems are solved, not necessarily by one contestant, but it gives you more possibilities."

        This would be true if more than one problem has roughly the same difficulty level, but it doesn't give you "more possibility" in most cases to give up on one problem just to try solving a harder one!

        "It is your strategy when to start hacking instead of solving."

        This is true with both 4 or 5 problems, however if there is only 4 problems then strategies which give more time to hacking will be much more used.

        "how the smaller number of problems could solve the issue? "

        Smaller number of problems means more time the author can spend on each problem enhancing the description, testing, thinking about alternative solutions, eventually leading to a better problem quality.
        • 13 years ago, # ^ |
            Vote: I like it +1 Vote: I do not like it
          Maybe there should instead of 5 levels of difficulty have 1 low level, 2 mid level (similar difficulty) and then 2 high level so that way there is more choice and people who are of lower skill level can have more fun. I really like having more problems on codeforces. Actually my favorite rounds have been the 6 problem ones! these seemed to have more parallel level difficulty problems so I could compete with those and then try the tougher ones later. Also I miss separate div1 and div2 rounds. These parallel matches seem to take away from the learning driven problems that make up div 2. I felt like I could learn more from old div 2 rounds than I can from these modern split rounds. 
13 years ago, # |
Rev. 3   Vote: I like it -21 Vote: I do not like it

There are some questions about which users are discontent with CodeForces (problemset, inadequacy of some rules, lack of help, forums, wiki etc). There were attempts to draw admins' attention to those points, but up to now they have little or none effect.

In present situation it seems that CodeForces administration is satisfied, disregarding all problems. I suppose they like the state of being "less professional" and "less organized" community than TopCoder.

It could appear that goals which were targeted by CF-team are hit for now (these goals could include some education experiment, gaining some funny experience, self-promotion/advertizing or drawing finances from sponsors - I do not mean any evil purposes though).

It looks like now CF is in some stagnation phase, and I suppose that later it could divert even in some frustration (or total annihilation of resource).

I suppose that CF possibly should start some community-driven process of modernization if admins are too busy to manage it themselves. Or admins should hire some dedicated personnel to work instead of them.
  • 13 years ago, # ^ |
      Vote: I like it +20 Vote: I do not like it
    Recently was the final of first "Codeforces open" tournament, the site is more stable during contests, they introduced country and city rating. I don't think it looks like stagnation. The service is in beta still and there are many things, that hasn't been done yet, but it doesn't mean that nobody does nothing about the site. I am sure a lot of work is constantly put, to improve Codeforces' quality.
    • 13 years ago, # ^ |
      Rev. 2   Vote: I like it -6 Vote: I do not like it

      Besides making some notes about "what we really need" I also wrote to CF admins offering my help (professional and free help, I suppose). I never received answer.

      "site is more stable"
      "more" is not the correct measure I suppose. Site is working slow enough, I am sorry.
      "they introduced country and city rating"
      Big deal! It is few hours work for a smart second-year student. CF need far more.
      • 13 years ago, # ^ |
          Vote: I like it +4 Vote: I do not like it
        I'm not asking why you didn't write your own Codeforces, with blackjack and whatever you want. I'm just stating that you didn't. Doesn't matter if it was lack of time, inspiration, resources, talent, desire or anything else. You proposed to help admins. They didn't respond. Okay. But don't tell how much effort (not time or people or skills alone) it takes to do what has been done. You didn't write your own Codeforces.
        • 13 years ago, # ^ |
          Rev. 3   Vote: I like it 0 Vote: I do not like it

          "Doesn't matter if it was lack of time, inspiration, resources, talent, desire or anything else."

          Oh yes, I am surely not as talented as CF creators. Other problem is that if I start "my own Codeforces" as open-source project, I would need people's help (testers, web-designers and problemist's) and I fear that if people would help me, there would begin (in case I would be successful) some nasty concurrency with CF (because of necessity to share human resources). And I think that right for now there are not much of these "resources" for CF alone. Am I wrong?

          I greatly dislike idea of trying to compete CF. I like CF and I want to see its best times in the future.
          • 13 years ago, # ^ |
              Vote: I like it +13 Vote: I do not like it
            I honestly don't know what human resources you may possibly need to share with CF, but yes, I think you're wrong - one more CF would surely be awesome.

            Also, not starting something because of problems that may appear if it gets successful is kind of new idea to me:)
            • 13 years ago, # ^ |
                Vote: I like it 0 Vote: I do not like it
              one more CF would surely be awesome.

              Funny... But I think that you are wrong too... However I have just written you private message. I want to know your opinion on potential "alternate CF"... If you have chance to answer, I would be thankful. ;-)

              I honestly don't know what human resources you may possibly need to share with CF


              Do you really think we need resource created and driven by only one man without testers, problemists and possibly sponsors? I know a lot of resources which were dead before they were born just because of wrong management ideas... ;-)
13 years ago, # |
  Vote: I like it -8 Vote: I do not like it
Despite "very long stories" in every problem, I was able to quickly understand each of them (though my algorithmic skills are quite poor).
  • 13 years ago, # ^ |
      Vote: I like it 0 Vote: I do not like it
    Russian statements will be quite easy to understand as you are Russian. What about if you switch to the "lack" English statements. Would you feel the same? i don't think so. :)
13 years ago, # |
  Vote: I like it 0 Vote: I do not like it
Only two contest in this month :(.
13 years ago, # |
  Vote: I like it -19 Vote: I do not like it

Sometimes riding a bicycle is hard.
13 years ago, # |
  Vote: I like it +5 Vote: I do not like it
I think we all agree not to be disappointed if something going wrong in this contest (only if you read the paragraph before registering to the contest)
13 years ago, # |
  Vote: I like it 0 Vote: I do not like it
Another thing I notice is not really related to problems that much, but still I think worth a thought: there seem to be an invisible wall between Div I and Div II. In Div I, if you have a rating less than 1700-1800, if you solve two problems fast enough, you would expect a 100+ rating increase; while in Div II, if you solve A B C (Div I A) D (Div I B) in one hour, and your rating is more than 1600, you are not likely to have a rating increase of more than 70. I do miss those mixed division matches a lot, since I believe they can not only break the wall here, but also help to train mid-level contestants better. Of course, separated divisions contest is better suited for high- and low-level contestants, but I think a mixed match one month or so would be useful, and since it only has 5 problems, the quality can be more easily assured.