MikeMirzayanov's blog

By MikeMirzayanov, 13 years ago, translation, In English

Now we have Java 7 in the list of supported languages. It seems it is temporary — Java 6 and Java 7 are here in the same time. As since we will be sure that Java 7 supported correctly and it works fine, we will say "Good bye" to Java 6. We are using Oracle JDK/JRE, current version 1.7.0_3.

Full text and comments »

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

By MikeMirzayanov, 13 years ago, translation, In English

Hi everybody!

Let me remind you that on the 3rd of March, at 20:00 the first qualification round of the VK Cup 2012 championship will start.

You need to participate in at least one qualification round to make it to Round 1. Contestants who gain a score equal to the 800-th place finisher score or greater will advance to the Round 1. If you won't participate in the Qualification Round 1 or if you failed to advance to Round 1 by its results, than that's not a problem — you can have a try at the Qualification Round 2 on March, 9.

At each qualification round you will find a few simple problems, roughly ordered by the increasing complexity. During the qualification rounds the problems are judged only on pretests and system testing will take place after the end of the qualification round (round continues for 24 hours). The pretests do not cover all possible cases of input data, test your programs carefully! The qualification rounds have no hacks or decreasing values of the problems.

The round will last for 24 hours, but it does not mean that we encourage you to spend all this time solving of problems. We hope that most participants will cope with the problems (or with most problems) in a shorter period of time. This duration of the round is chosen so that each participant could find a convenient time to participate.

Before the end of the round it is strictly forbidden to publish the problem statements/solutions/any thoughts and ideas about them elsewhere. It is forbidden to talk about the problems, discuss the statements and so on. Be honest and let the best men make it into Round 1. When the Qualification Round is over, you can discuss the problems and solutions.

You can register for the round at any time up to its end. Yes, we had a false start with registration of the qualification. We haven't switched on the Championship participant registration check function. If someone managed to register to the round on the 2nd of March, please do it again.

The results of the round will not affect the rating, non-competitive participation in the round is not allowed. However, all tasks will go to the archive after the end of the round.

Best of luck and enjoy solving the problems!

UPD: The round is over. 12907 submissions to be judged on system tests!

UPD 2: System testing completed, the final results are available.

Full text and comments »

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

By MikeMirzayanov, 13 years ago, translation, In English

Overview

The VK Cup Championship is an open computer programming competition that is held by VK, Codeforces and Saratov State University. VK is the largest European social network with more than a 100 million active users. The Championship Final Round will be held in July in St. Petersburg. Top 50 contestants of the Round 3 will be invited to the Finals, with trip expenses covered by the organizing committee.

Eligibility

You are young and you like to solve programming problems? Then this championship is for you! Anyone meeting the following criteria is eligible to compete in the VK Cup:

  • must be at least 14 years and at most 23 complete years of age (by the moment of registration);
  • current employees of VK and/or members of organizing committee/jury are ineligible to participate in the VK Cup;
  • must be eligible for participation in Codeforces contests.

Thus, the intended audience of the championship are mainly high school and university students. To participate in the championship, you have to register beforehand.

Only individuals are allowed to take part in the Championship. No teams, no joint discussions and etc.

Full text and comments »

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

By MikeMirzayanov, 13 years ago, translation, In English

Showing an example:)

I've added 2010-2011 Petrozavodsk Winter Training Camp, Saratov State U Contest into the Codeforces::Gym. The contest was held by Saratov State University on Petrozavodsk Winter Camp year ago. This contest was also used as a stage of the Karelia Cup and the Open Cup.

Note

The contest has a complexity of 5 stars and it is recommended to teams are not below the level of ACM-ICPC World Finals.

The problem authors — the jury of ACM-ICPC Saratov Subregional Contest:

  • Mike Mirzayanov
  • Dmitry Matov
  • Natalia Bondarenko
  • Dmitry Klenov
  • Dmitry Stepanenko
  • Stanislav Pak
  • Roman Alekseenkov

Incidentally, it takes about 15 minutes to add the contest, the process was simple and transparent :)

Full text and comments »

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

By MikeMirzayanov, 13 years ago, translation, In English

Since almost every member of the community Codeforces know how to write programs, we decided to abandon the wysiwyg HTML editor, and introduce a geek method. Of course, technical texts will gain much more convenient, and text will look uniform.

Now we use modified Markdown as a markup language for blog posts and comments. Since we use an additional extensions, we called markup simply Codeforces Markup. Codeforces custom tags are available in the editor, I will publish a description of the rest here a little later. In a few words it looks like simplified previous version — double square brackets are replaced by single square bracket.

In addition, we improved typography posts and comments.

See description Markdown using the links:

Here's a short list of features:

  1. insert user handle (use ~tourist);
  2. italic and bold;
  3. inline code — return a == 0 ? b : gcd(b % a, a); (place it between `);
  4. numerated, unnumerated and nested lists;
  5. headers;
  6. autocorrection hyphens with dashes;
  7. smart URL detection (makes them to be links) http://codeforces.me/;
  8. tables and images;
  9. source code highlighting;
  10. "smart" quotes;
  11. separate paragraphs with a blank lines;
  12. special Codeforces tags;
  13. insert photos like [photoalbum:PicasaPublicAlbumURL];
  14. and much more!

I recall that on Codeforces implement preview, so you do not need crazy experiments on the Markdown in comments:)

MikeMirzayanov

Full text and comments »

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

By MikeMirzayanov, 13 years ago, translation, In English

On January, 27 we summed up the results and rewarded the laureates. They are:


tourist
The Best Codeforces Participant 2011

Ripatti
The Best Codeforces Problemsetter 2011

Alex_KPR
The Best Codeforces Blogger 2011
  • The Best Codeforces Participant 2011: Gennady tourist Korotkyevich. We've recounted the rating taking only the 2011 rounds into consideration. Gennady topped the table well ahead of everybody else! You can follow the link to track his success on Codeforces contests.
  • The Best Codeforces Problem Writer 2011: Artem Ripatti Ripatti. In 2011, Artem prepared about 10 rounds on Codeforces and proved to be an author of interesting problems as well as a responsible partner. We are grateful to Artem for the help to the project and we hope for further collaboration.
  • The Best Codeforces Blogger 2011: Alexander Alex_KPR Kouprin. Alexander's blog (mostly in Russian) frequently delighted readers with interesting posts. His reports on the Russian Code Cup, the ACM-ICPC finals, Petrozavodsk training camp aroused interest not only in regular readers but also attracted some new ones. Thank you!

The Codeforces project thanks all participants and post authors for the interest towards the project. But we want to say our special thanks to all problem authors!

MikeMirzayanov

Great news! I've received congratulations to the winners from Thomas Cormen (thank you!). Here is the full text:

Mike,

My apologies for the delay in responding. It has been an exceptionally busy term for me, teaching our new introductory course in Python (I'm learning the language along with my students), supervising our senior capstone project course, and chairing our department. You may post the following statement on your website:

Congratulations to Gennady "tourist" Korotkyevich (Best Codeforces Participant 2011), Artem Ripatti (Best Codeforces Problem Writer 2011), and Alexander "Alex_KPR" Kouprin (Best Codeforces Blogger 2011). Although Mike Mirzayanov hinted that we might be in for a change this year, I was not too surprised to see that "tourist" took the top participant spot once again. I applaud the winners and everyone else who takes part in Codeforces.

Tom Cormen
Professor and Chair
Dartmouth College Department of Computer Science
http://www.cs.dartmouth.edu/~thc/
Twitter: @thcormen

Full text and comments »

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

By MikeMirzayanov, 13 years ago, translation, In English

Not so long ago in the English Wikipedia has been added to the article about Petr Mitrichev (Petr). Currently, there is a discussion of this article for removal due to the lack of significance. Here is a quote from the discussion: "I don't see how Petr is notable in Wikipedia standards. What makes him different from the hundreds or maybe even thousands of others who are on a similar level as him at competitive programming?".

By the way, there is the article about Reid Barton, the outstanding contestant from US. Who is more valuable for the history?

It would be nice if those who is familiar with the rules of Wikipedia, added to the discussion to support Petr.

By the way, the article actually seems incomplete and not disclosing the success of Peter. Maybe someone will undertake to improve?

Comments?

Full text and comments »

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

By MikeMirzayanov, 13 years ago, translation, In English

Today we open a new project Codeforces::Gym, it will be started on January 19, 08:00AM. 30 minutes later, оn Thursday, January, 19, 2012 08:30 (UTC) the testing training contest will be started. The duration of the training is 3 hours. We invite you to join us! As all the trainings in Codeforces::Gym it will be held according ACM-ICPC rules.

As it will be a training, we will use problems from some programming contest (thank you, authors!). Please do not take part in the training, if you've seen these problems. Do not spoil training to other members. Thank you for your understanding.

Please use the official project tracker to report about bugs and feature requests.

Full text and comments »

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

By MikeMirzayanov, 13 years ago, translation, In English

We've made it! Or in any case, we are at least very close to it.

On January 19, 2012 at 12:00 we open a sub-project called "Gym". In short, its goal is to enable the Codeforces coders not only to participate in competitions and discuss them, but also to train and coach easily.

In fact, despite the wide diversity of online judges in the world, a well thought-out training service system does not exist. So, the expectations from this system are:

  1. Collection of online contests, composed mainly of the past official contests.
  2. Opportunity to integrate the final standings of past contests in the online contests to be able to train "against" the official participants.
  3. Opportunity to participate in the training at any time whatsoever, without fear that something breaks down and the server will fall. In short, reliability.
  4. Opportunity to write virtual contests and to solve the problems in a practice mode.
  5. Opportunity to participate both individually and as part of a team.
  6. Opportunity to keep the team while changing the team members.
  7. Opportunity to view various statistics and participation history, the possibility to compile and publish reports on selected participants/contest.
  8. Opportunity for a coach to add an online contest by him/herself, if this contest still does not exist. The process should be simple, reliable and maximally automated. The opportunity to parse the final standings of the past contests. The opportunity to add the attempts of the official participants to an online contest.
  9. Opportunity to view tests or other players' solutions for those who have solved the problem.
  10. Opportunity to find the training to one's taste, i.e. selecting by parameters.

The Codeforces Project:: The training aims to meet all these requirements. Already, nearly everything of the above list is available and whatever is not, will be available.

Full text and comments »

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

By MikeMirzayanov, 13 years ago, translation, In English

Hi everybody.

This change will not probably be among the most popular ones but nevertheless, vote counting rules and voting rules in general are going to change. Why? There are several reasons. The main is that we decided to give up the +2/-1 strategy that used to favor authors. This balance worked fine in the Coderofces's initial stage of development. However, it now leads to overrating many uninformative posts. Moreover, such rating is not valid. Thus, a positive vote and a negative vote now have the same value and the total rating sign now represents the actual attitude of the community members to the post or a comment.

Also, as Codeforces is a professional community of those who is interested in sports programming, it was decided to consider the participants' professional achievements. Thus, the value of a participant's vote now is delapnds on the participant's authority and the authority is determined by the rating. At this point I have to mention that the participant's authority is not influenced by his/her contribution. The votes' values do not differ dramatically: despite the fact that the red participants are 15+ times less that the blue ones, their votes' values differ less than their numbers.

We've introduced additional fraud detection heuristics (some of them had been used on Codeforces). These new strategies make it impossible to cheat in various ways or carry out a grudge, they make reverse engineering systems more complicated and influence some other stuff now and then. The exact details of the vote counting rules are not disclosed but the main principles are given above.

Of course, the change in vote counting will trigger considerable changes in some participants' contributions. I guess that's the indicator of the character of the votes' distribution and the voters' authority. All votes will be recounted that will lead to change in contribution.

MikeMirzayanov

Full text and comments »

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

By MikeMirzayanov, 13 years ago, translation, In English

Hello

We've scheduled Codeforces Testing Round #4 on January, 3 15:00 (UTC). It will be non-rated event, just to test system before important Codeforces Round #100. The round duration is 1 hour and it will contain just two problems. I do not promise something interesting and exciting, but as a small warm-up will be nice :)

I'll be glad to see you on the round,
MikeMirzayanov

The testing is successfully completed. Thank you for participation. I hope you like this sprint.

Full text and comments »

Announcement of Codeforces Testing Round 4
  • Vote: I like it
  • +92
  • Vote: I do not like it

By MikeMirzayanov, 13 years ago, translation, In English

Codeforces project congratulates everybody who is into sport programming with New Year! A New Year is not just an increment of a year. Let this day be a starting point to your new achievements, accomplishments and success. Codeforces wishes you to find out by the end of 2012 that all your resolutions have been a success! We wish you to have interesting problems, nice solutions, correct code and more and more of beautiful green messages  Accepted.

As well as in the previous year, we enable handle change for ten days. The handle change is available from the "Settings  Handle" tab from your profile page. Handle change will be disabled on January 10, so don't lose the moment!

Happy New Year, Happy New Coding!
MikeMirzayanov

Full text and comments »

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

By MikeMirzayanov, 13 years ago, translation, In English

Hi everybody!

The calendar shows the end of December — the year 2011 is about to end. It was an eventful and exciting time for us. You can find pictures below summarizing 2011 in comparison to 2010. In a nutshell, we've made it! We have grown in all parameters! This result is the shared victory of the well-united team. My special thanks go to the VK (VKontakte) and specifically — to Pavel Durov. The programmers' community and its development really matters to them. I want to thank the authors of the problems: preparing contests is tough and you are a significant help to the Codeforces project and to the whole community.

So, comparing the ending 2011 year and the 2010 year in pictures goes like this:

Codeforces users' growth throughout the Codeforces history (by months)

Full text and comments »

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

By MikeMirzayanov, 13 years ago, translation, In English

Hello, everybody.

New Year Holiday is a time of miracles and gifts! Quite by chance the 100th Codeforces round coincided with this wonderful moment.

So, January 4 at 15:00 (UTC) the anniversary Codeforces Round 100 will have place. Yes, we say goodbye to the word Beta in round titles :)

It will be a combined round, that is, participants Div1, Div2 and newcomers will compete with one set of problems. To make it interesting for each participant we plan to expand the round to 6 problems.

The most important thing: the best hundred participants of the 100th round will receive an exclusive Codeforces t-shirt!

Happy new year!
Codeforces Team

Full text and comments »

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

By MikeMirzayanov, 13 years ago, translation, In English

Informal unrated contest Codeforces Testing Round #3 is scheduled on December, 2 (Friday), 15:00 (UTC). We will test the latest innovations on Codeforces that they do not affect the contests. If not, we will fix it quickly :) So, this round will take place "as is", no warranty about it.

Problems for the round may be famous to someone, but I'll try to make them such not for any of you. It will be 3-4 problems, as quite simple and something more tricky. The contest duratiuon is 1 hour.

I say thanks in advance to all those who will come and test the system. Thank you!

MikeMirzayanov

Full text and comments »

Announcement of Codeforces Testing Round 3
  • Vote: I like it
  • +81
  • Vote: I do not like it

By MikeMirzayanov, 13 years ago, translation, In English

The ACM-ICPC Northeastern European Regional Contest 2011 is over. Congratulations to the winners! I especially want to mention the team that will represent our region on the World Finals in Warsaw:

  1. SPb NRU ITMO 1 (Kapun, Kever, Nigmatullin) — 1-st place, champions
  2. Moscow SU 1 (Fedorov, Kaluzhin, Rogulenko) — 2-nd place
  3. Belarusian SU 1 (Bahdanau, Pisarchyk, Sobol) — 3-rd place
  4. Saratov SU 2 (Ivanov, Kuznetsov, Rakhov)
  5. SPb SU 1 (Andreev, Boykiy, Fondaratov)
  6. Moscow IPT 1 (Dlugach, Gimadeev, Shishkin)
  7. Ural FU 1 (Dolgorukov, Schelkonogov, Soboleva)
  8. Altai STU 1 (Silin, Uvarov, Yesipenko)
  9. Ufa SATU (Lezhankin, Mazgarov, Ripatti)
  10. Nizhny Novgorod SU (Lyulkov, Shmelev, Vadimov)
  11. Belarus SUIR 2 (Berezhnov, Brukau, Ropan)
  12. Udmurt SU (Abizyaev, Kibardin, Urbanovich)
  13. Latvian U 2 (Kalinicenko, Vihrovs, Vilcins)
  14. Kazakh-British TU 3 (Aitbayev, Satylkhanov, Almakhan)
  15. Tomsk SU 1 (Chadnov, Kolupaev, Afanasev)
  16. Volgograd STU (Agafonov, Chalyshev, Zhorin)

Codeforces wishes all future World Finals participants the success in preparing for the competition and good results in the final!

Full text and comments »

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

By MikeMirzayanov, 13 years ago, translation, In English

Hello!

On Friday, November 25 at 19:00 I'm waiting you on the Codeforces Beta Round #95 (Div. 2). This round is prepared by me. It is not easy to prepare a round, but it is always useful and interesting. By my example, I want to hint to top participants that rounds of famous people — it's always interesting!

Apart from me RAD, Nickolas and Delinur were doing work on the round. Moreover, Edvard still do not know, but very soon I will ask him to solve this round as a tester:)

It will be unusual round because you will find six problems. It's a little experiment — I hope that it will help each participant to find interesting problems to themselves.

I believe that the out-of-competition participants from Div.1 will have some fun solving the round.

The problem scoring is: A - 500, B - 1000, C - 1500, D - 2000, E - 2500 and F - 2500.

Good luck!

MikeMirzayanov

UPD. The competition has ended. Here are the results. First place was taken by the representative of China — liuq901. Congrats! It was nice to see such interest to the contest. Thank you for your participation!

Unfortunately, I do not have the opportunity to write a tutorial. If you deal with it I will be grateful.

Full text and comments »

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

By MikeMirzayanov, 13 years ago, translation, In English

Hello.

I want to share a great joy of my family. On the night of the 8th to 9th November, a little girl named Tanya Mirzayanova was born. Of course, now the reasons of round shifting are obvious :)

While Tanya less than a day from the birth, but she has gave great impressions of joy to her parents — me and my wife Kate aka LLLike. And how many more to come!

A few years later Tanya Mirzayanovа will read this post, and I'll tell her: "Look Tanya, how many good and intelligent people from different corners of the Earth congratulate you!" :)

Happy and contented,
MikeMirzayanov

UPD: Thank you all for your congratulations! I did not expect to read so many warm and wonderful comments. A number of pluses proves the eternal truth: "Children are flowers of life". Thank you!

Full text and comments »

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