MikeMirzayanov's blog

By MikeMirzayanov, 6 years ago, In English

My friends from Harbour.Space and Remy Robotics asked to publish the news. I am excited and glad to do it, because for our community this is a true exclusive offer. In short, they offer to study robotics in Barcelona, paying for your studies and even with a scholarship! It's so cool!

Here is a direct speech from Harbour.Space.

=

Hi Codeforces!

We are excited to announce our new Master’s in Robotics programme scholarship, which will be paired alongside an internship with our partner Remy Robotics! The programme will begin on January 7th, 2019, at our university in Barcelona, Spain.

Harbour.Space’s Robotics programme is the bridge between a personal interest in the world of Robotics, Artificial Intelligence, and a top-level professional future in one of the most exciting and fastest growing fields of technology. Students who enter the programme will either graduate as Control Engineers (theoretical specialists who ensure that robots interact with the environment in safe and effective manner), or CV Engineers (industrial manufacturers of robots, based more on practical experience).

Students will learn the Design and Control for Dexterous Manipulation; Kinematics, Dynamics and Control; Advanced Manipulation Algorithms robots use to physically interact with their world; Dynamic Optimisation for behavioral control; Integrated Intelligence in Robotics: Vision, Language, and Planning which builds upon the cognitive development; Mechanics of Manipulation focusing on using intelligent development of kinematic constraint, gravity, and friction; Manipulation, Estimation, and Control allowing for robots to locomote and navigate the world; Reinforcement learning in Robotics.

SCHOLARSHIP VALUE: €34,900

Apply →

The scholarship includes:

  • Complete coverage of the University tuition fee (€22,900)

  • Living allowance (€1,000 per month during 1 year)

  • Internship at Remy Robotics (20h per week during 1 year)

REQUIRED EDUCATION:

Bachelor's or Master's Degree in Robotics or Computer, Electrical, Mechanical Engineering or related disciplines.

QUALIFICATIONS AND SKILLS:

  • Hands-on robotic programming
  • Ideally experience within the automotive manufacturing sector
  • Knowledge understanding of robot control interface with ancillary equipment
  • Use of robot simulation packages
  • Deep experience with all things robotic, from infrastructure-free autonomy to ROS, computer vision, and machine learning
  • Experience working with robot parts and components, developing robotics devices
  • Ability to concurrently manage multiple diverse and often complex issues and / or projects at the nexus of software, sensors, and hardware

To be selected for this programme, you will need to go through the following steps:

  1. Fill out the given form by the link: https://codeforces.com/userForm/89f420923cb55373
  2. Attend a series of online tests and interviews with our admissions office and partners
  3. Pack your bags for Barcelona!

Full text and comments »

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

By MikeMirzayanov, 6 years ago, In English
Tutorial is loading...

Problem idea: MikeMirzayanov, awoo; prepared by: vovuh.

Tutorial is loading...

Problem idea: MikeMirzayanov, prepared by: MikeMirzayanov.

Tutorial is loading...

Problem idea: MikeMirzayanov, prepared by: awoo.

Tutorial is loading...

Problem idea: vovuh, MikeMirzayanov; prepared by: awoo.

Tutorial is loading...

Problem idea: Errichto, prepared by: Errichto.

Tutorial is loading...

Problem idea: Lewin, prepared by: Lewin.

Tutorial is loading...

Problem idea: Endagorion, prepared by: Endagorion.

Full text and comments »

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

By MikeMirzayanov, 6 years ago, In English

Hello, friends!

I want to discuss separately the negative feedback on the round 505.

I understand, that many participants are disappointed by solutions, which failed on system tests. In fact, the pretests in problems B, D and E turned out to be weak. The problem C also didn’t gone too smoothly, but I don’t see nothing critical.

Surely, this was a flaw in a work of author and coordinator. Unfortunately, such situations sometimes arise and it is difficult to avoid them at all. For these problems, the number of pretests and their type was not looking too weak.

Problem B: 9 pretests, there are small and large answers, two tests with answer -1, there are pretests with n = 1 and n = 2, there are four pretests with n = 150000.

Problem D: 14 pretests, among them manual tests and four different generators, few pretests with n = 700, majority of answers is ‘Yes’, but there are ‘No’ as well. In my opinion, too little pretests with ‘No’.

Problem E: 14 pretests. Yes, this problem on VK cup finals contained 10 pretests and caused many systests fails for participants. I have added 4 more tests to pretests from tests, which caused system tests fails for onsite participants. I was very surprised to see, that there were still so many fails after systests.

Summing up, the pretests turned out to be incomplete, but it is hard to say, that it was obvious defect by author or coordinator. Probably it is a combined effect from the problem specifics and the lack of experience of cdkrot as a coordinator.

I haven’t examined all the problems thoroughly, but still round seemed interesting to me. There were no serious fails with statements, bugs in tests and solutions. The system was also working smoothly, without large queue.

Please explain your negative feedback about the round. It will be very valuable to read a reasoned opinion from experienced participants.

Thanks, MikeMirzayanov

Full text and comments »

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

By MikeMirzayanov, 6 years ago, translation, In English

Hello!

I am happy to sum up the results of the draw of prizes in two rounds. Congratulations to the top-10 with the win of a plush Peach!

Total Place Handle Place in 504 Place in 505 Total Score (GP-30)
1 Benq 3 4 110
2 TLE 2 8 107
3-4 Swistakk 1 100
3-4 ko_osaga 1 100
5 Egor 4 9 79
6 DearMargaret 2 75
7-8 Kostroma 3 60
7-8 ksun48 6 13 60
9-10 AwD 5 45
9-10 natsugiri 5 45
11-12 gepardo 11 15 40
11-12 xumingkuan 6 40
13-14 RomaWhite 7 36
13-14 webmaster 7 36
15 Deemo 8 32
16 matthew99 9 29
17-18 kriii 10 26
17-18 yosupo 10 26
19 scott_wu 11 24
20 cz_xuyixuan 18 21 23
21-22 Marcin_smu 12 22
21-22 majk 12 22
23-24 samjia2000 13 20
23-24 sunset 16 26 20
25-26 neal 14 18
25-26 yutaka1999 14 18
27 Radewoosh 15 16
28 pavel.savchenkov 16 15
29-30 Batman 17 14
29-30 fateice 17 14
31-32 000000 27 22 13
31-32 kmjp 18 13
33-34 AndreySergunin 19 12
33-34 Arturgo 19 12
35-36 consecutivelimit 20 11
35-36 mareksom 20 11
37 never_giveup 21 10
38 gisp_zjz 22 9
39-40 __Rolton__ 23 8
39-40 Dmitriy.Belichenko 23 8
41-42 ditoly 24 7
41-42 krismaz 24 7
43-44 jvjhfhg 25 6
43-44 yanQval 25 6
45 M.Mahdi 26 5
46 yfzcsc 27 4
47-48 DEGwer 28 3
47-48 wzporz 28 3
49-50 Alex_2oo8 29 2
49-50 nocriz 29 2
51-52 Ilya_MSU 30 1
52-52 MrDindows 30 1

Full text and comments »

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

By MikeMirzayanov, 6 years ago, translation, In English

Hello, Codeforces.

This is a short blog to introduce you recent updates in Testlib and Polygon.

Testlib

Generate a Permutation

Now, you can easily generate a permutation with codes like this:

Code Result
vector<int> p = rnd.perm(n); Generates 0-indexed permutation of size n
vector<int> p = rnd.perm(n, 1); Generates 1-indexed permutation of size n

Function println

Now, you can easily print space-separated lines in a generator. A println uses cout, thus prefer faster method if you print huge data.

Some examples:

Code Result
println(5); Print 5 and line break
println(1, 2, 3); Print 1 2 3 (three space separated integers) and line break
println("one", "more", 5.5); Print one more 5.5 (three space separated items) and line break
vector<int> a; ...; println(a); Print vector a (separate elements with spaces) and line break
vector<int> a; ...; println(a.begin(), a.end()); Exactly the same as above
string b[5]; ...; println(b, b + 5); Print array b (separate elements with spaces) and line break

Here is the example of a generator to print a permutation:

#include "testlib.h"

using namespace std;

int main(int argc, char* argv[]) {
    registerGen(argc, argv, 1);
    
    int n = atoi(argv[1]);
    println(n);
    println(rnd.perm(n, 1));
}

Function readInts and similar

Just as a reminder. Use functions readInts/readLongs/readStrictDoubles or readTokens/readLines in a validator to read and validate a sequence of values. To read a size of an array and array itself, use:

int n = inf.readInt(1, 200000, "n");
inf.readEoln();
inf.readInts(n, 1, 1000000, "a");
inf.readEoln();
inf.readEof();

Polygon

Example Problems

I've introduced three example problems. Each Polygon user has READ-access to them. Please, use them as examples how to write a problem in Polygon. They are:

  • example-a-plus-b: simple A+B problem
  • example-almost-upper-bound: simple problem to illustrate non-standard checker (always consider to use readAnswer function like in the example), generators and stress tests
  • example-interactive-binary-search: simple interactive problem on a binary search

Other Small Fixes

  • Allow to upload files (for example, images) as a contest property/file to use them in the statements.ftl. File names should start with 'statements-'.
  • API has been improved to support general description, general tutorial, tags, test groups and points.
  • Show problem ID on the summary box (on the righmost top block).
  • Replace UTF-8 typographic characters to their ASCII equivalent (for example, replace em dash — with ---).
  • Caching issue has been fixed. Previously, it could show RJ on tests even if the reason has been fixed.

Thanks to fcspartakm for implementing most features in Polygon.

Full text and comments »

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

By MikeMirzayanov, 6 years ago, translation, In English

Hello, Codeforces!

As many of you I'm not really satisfied how the round 497 has ran. KAN is not working on Codeforces this month, he is out of the city. It was a first round coordinated by arsijo. I liked his enthusiasm and work he did. But it happened, it wasn't an example of a well-prepared round.

The main issues are as follows:

  • The problem statement in the problem A wasn't clear enough (actually, it didn't contain any mistakes, just wasn't easy to understand).
  • The improper example to illustrate the problem B (no mistake here, but it has confused some users).
  • I really didn't like the statement of the problem D2D/D1B. I agree it wasn't good. Again it didn't contain any mistakes, but it was hard to understand it quickly. Also I did the incorrect announcement (but it was fixed quickly).
  • The incorrect behavior of the interactor in the problem D2E/D1C (Time Limit Exceeded/Idleness Limit Exceeded on too many queries instead of Wrong Answer).
  • The huge gap in the difficulty between the D2C and the D2D.

Right now, I'm really do not sure, should the round be a rated or not. What is your opinion about it? The current idea of the writers and the coordinator to make it unrated for whose, who got incorrect verdict on D2E/D1C.

Anyway, I'd like to say “thanks” to the problem writers, testers and the coordinator arsijo. They really tried to make a good round. I hope to see more rounds from Skyglow and coordinated by arsijo. I'm sure they made proper conclusions from the round.

Thanks, MikeMirzayanov

UPD: Thank you for sharing your opinion. The round is rated.

Full text and comments »

Tags 497
  • Vote: I like it
  • +270
  • Vote: I do not like it

By MikeMirzayanov, 6 years ago, translation, In English
Tutorial is loading...
Code in C++ for details
Tutorial is loading...
Code in C++ for details
Tutorial is loading...
Code in C++ for details
Tutorial is loading...
Code in C++ for details
Tutorial is loading...
Code in C++ for details
Tutorial is loading...
Code in C++ for details
Tutorial is loading...
Code in C++ for details

Full text and comments »

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

By MikeMirzayanov, 6 years ago, In English

Hello!

This time decided to fill myself in the shoes of the problem writers. It is very exciting! My challenge was to prepare a round in one day. It's really incredible pleasure to surrender to my passion and all day just work on problems!

Despite the fact that in total I've wrote 8 problems, I made it in time. Initially, I prepared 7 problems, but two of them were found to be used before (thank you, 300iq and cdkrot for poining it) and I removed them and wrote a new problem.

Codeforces Round 496 (Div. 3) will start on 09.07.2018 18:35 (Московское время). You will be offered 6 problems with expected difficulties to compose an interesting competition for participants with ratings up to 1600. Probably, participants from the Div. 1 not be at all interested by this problems. And for 1600-1899 the problems will be quite easy. However, all of you who wish to take part and have rating 1600 or higher, can register for the round unofficially.

The round will be hosted by rules of educational rounds (extended ACM-ICPC). Thus, during the round, solutions will be judged on preliminary tests, and after the round it will be a 12-hour phase of open hacks. I tried to make strong tests — just like you will be upset if many solutions fail after the contest is over.

You will be given 6 problems and 2 hours to solve them.

Remember that only the trusted participants of the third division will be included in the official standings table. As it is written by link, this is a compulsory measure for combating unsporting behavior. To qualify as a trusted participants of the third division, you must:

  • take part in at least two rated rounds (and solve at least one problem in each of them),
  • do not have a point of 1900 or higher in the rating.

Regardless of whether you are a trusted participant of the third division or not, if your rating is less than 1600, then the round will be rated for you.

Many thanks to the testers: kevinsogo, 300iq, cdkrot, arsijo and adedalic. You really helped to make this round!

Good luck!

UPD 1: The round is over. Thank you for participation!

Official Top-5 (trusted only)

Unofficial Top-5 (+ untrusted)

UPD 2: The editorial is available by the link.

Full text and comments »

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

By MikeMirzayanov, 6 years ago, translation, In English

Hello, Codeforces!

I offer you also to join testing of HTTPS support. Just visit to https://codeforces.com/ and start to use the website through HTTPS.

I am aware of some minor issues: mails still refer to the HTTP version of the website, Facebook does not merge likes for HTTP and HTTPS. Have you noticed anything else? Write a comment!

And thanks to Let's Encrypt for the certificates. Now with wildcards!

Full text and comments »

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

By MikeMirzayanov, 6 years ago, translation, In English

Hello!

Codeforces Round 481 (Div. 3) will start on May/13/2018 12:05 (Moscow time). It will be the second Div.3 round in the history of Codeforces. You will be offered 7 problems with expected difficulties to compose an interesting competition for participants with ratings up to 1600. Probably, participants from the first division will not be at all interested by this problems. And for 1600-1899 the problems will be too easy. However, all of you who wish to take part and have rating 1600 or higher, can register for the round unofficially.

The round will be hosted by rules of educational rounds (extended ACM-ICPC). Thus, during the round, solutions will be judged on preliminary tests, and after the round it will be a 12-hour phase of open hacks.

Remember that only the trusted participants of the third division will be included in the official standings table. As it is written by link, this is a compulsory measure for combating unsporting behavior. To qualify as a trusted participants of the third division, you must:

  • take part in at least two rated rounds (and solve at least one problem in each of them),
  • do not have a point of 1900 or higher in the rating.

Regardless of whether you are a trusted participant of the third division or not, if your rating is less than 1600, then the round will be rated for you.

The problem are written by me and fcspartakm. Many thanks to testers AGrigorii, BigBag, nhho and Sert!

Good luck!

UPD 1: Thank you for participation. Problem tutorials have been published.

UPD 2: Congratulations to the winners! Top-5 (official standings):

Full text and comments »

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

By MikeMirzayanov, 6 years ago, In English

Hello, Codeforces!

Recently I've started to receive a lot of messages with the ask to delete an account. I'm thinking how to implement this feature. What content should be hidden after it: posts? comments? solutions? How it implemented in Facebook and other social networks? Are there any generally accepted norms about account deletion?

Waiting for you ideas in comments.

Full text and comments »

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

By MikeMirzayanov, 6 years ago, translation, In English

Hello, Codeforces!

It's time for news. I hope you will enjoy!

  • We reduce the rating bound for the orange color. Thus, now the orange rating (and the Master title) will start from 2100 rating units.

  • The lower bound of the rating for legendary grandmasters is increased to 3000 rating units. Thus, right now in the community, 14 participants meet this requirement. Real legends!

  • For rounds like "Div. 2 Only" the upper bound of the rating for official participation is increased. Now everyone whose rating is less than 2100 (i.e., before masters) will be able to register for such rounds to participate officially, their rating will be updated based on the results of the round. We do not plan to increase the complexity of Div. 2 rounds. Practice shows that the problems of such rounds are interesting and useful for participants "below the orange".

  • For parallel Div. 1 and Div. 2 rounds we don’t change the rating bound between divisions. So Div. 1 edition of the round continue to include participants with the rating from 1900 and above.

  • As an experiment, we plan to host rounds of simplified complexity (Div. 3). In such rounds, the official results will include participants with ratings less than 1600. We plan to include in these rounds simple training problems that will help beginner participants to gain skills and to get new knowledge in a real contest. Since even in the Div. 2 rounds regularly some Div. 1 users register new account and take high place, we also expect such unsportsmanlike behavior in the Div. 3 rounds. We will exclude from the official standings of Div. 3 rounds and put in a separate rooms all those who can’t be reliably called to be a real participant. Accounts that materially participated in less than 2 rating rounds (materially means solved at least one problem there) before the start of the Div. 3 rounds, and those who have ever gained 1900 or more rating units will not get into the official standings and will be assigned to separate rooms. However, this does not mean that there is no rating recalculation for them. Thus, the rating will be updated for all users whose rating is strictly less than 1600 at the time of the start of a round. Perhaps we will experiment with the definition of who should be considered a reliable Div. 3 participant. And thanks to VLamarca for the post about idea of Div.3 rounds!

Updating the boundaries of ratings and changing colors is not an instantaneous process. For this reason, the website may still have outdated information for some time. We are working to apply the announced changes during the day.

I hope you enjoy this news.
MikeMirzayanov

Full text and comments »

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

By MikeMirzayanov, 6 years ago, translation, In English

Hello!

This blog post is about the end of the crowdfunding campaign dedicated to the 8th anniversary of Codeforces. Everything worked out. Hooray!

For us, it is very important to support not only in terms of the collected budget, but as a powerful indicator that Codeforces is important to you. It was very pleasant to read words of gratitude and congratulations. Thank you!

We received more than 1000 donations from community members from around the world. For 45 days we've collected more than $60000 dollars. The collected funds will allow us to continue to move forward, to please you with new contests and improvements of the system.

I am happy to report that starting in May 2018, we will be able to slightly increase rewards for problem writers.

Round type USD Rubles
Div 1 + Div 2 $250+*$150=$400 26000 rub
Div 2 $125+*$75=$200 13000 rub

We tie the money paid in rubles to the Central Bank of Russia exchange rate, rounded to the closest sum in rubles divisible by 5 (according to the rules of mathematical rounding). The table shows the values that were up-to-date when this post was published. An asterisk marks the bonus that is given if the round is prepared in time and without major issues in problems.

In addition, the collected funds will help to increase a reward of the problem coordinators KAN and [user:gritikan]! Guys, you're doing a very important job, thank you for that!

Improvement of Codeforces hardware has already been launched, which will help improve the stability of the system and keep up with the growth of the audience.

To all those of you who are expecting a gift from us (certificate, T-shirt, hoodie), I remind that it is necessary to fill in or update the information in the profile about the delivery address. Please do not delay this!

Thank you again for your support!

MikeMirzayanov

Full text and comments »

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

By MikeMirzayanov, 6 years ago, translation, In English

April 19, 15:35 (UTC) the VK Cup 2018 - Wild-card Round 2 will start.

Participants are invited to achieve progress in solving an unusual problem. VK Cup teams which were advanced to the Round 2 (and didn't advance to the Round 3) will take part in VK Cup 2018 - Wild-card Round 2 officially. In addition, this round will be open to the public for unofficial participation for everybody. Registration will be open for the whole round duration.

The round will be one week long. After the end latest submission (with positive score) of each participant will be judged on system tests.

Good luck!

Full text and comments »

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

By MikeMirzayanov, 6 years ago, translation, In English

Hello Codeforces!

On April 10, 14:35 UTC Educational Codeforces Round 42 will start.

Series of Educational Rounds continue being held as Harbour.Space University initiative! You can read the details about the cooperation between Harbour.Space University and Codeforces in the blog post.

This round will be rated for Div. 2. It will be held on extented ACM ICPC rules. After the end of the contest you will have one day to hack any solution you want. You will have access to copy any solution and test it locally.

You will be given 7 problems and 2 hours to solve them.

The problems were prepared by me and Alex fcspartakm Frolov.

We'd like to thank Nikolay KAN Kalinin, Grigory vintage_Vlad_Makeev Reznikov, Vladimir vovuh Petrov for the testing and help in preparing the round.

Good luck to all participants!

UPD: Some information from Harbour.Space U

The third Hello Programming Bootcamp finished as teams from around the world learned, competed, and got to know each other in the cities of Kollam and Moscow.

“I'm positively surprised with the level and number of Indian teams. I believe when following a systematic and regular training schedule — they will certainly attend top world records in programming” says Mike MikeMirzayanov Mirzayanov.

The results of the India boot camp are as follows:

We would like to congratulate the top teams from the India side in both divisions A and B — and especially recognise division A’s winner: Team SDV — Vasily platypus179 Alferov, Vaibhav gvaibhav21 Gosain, Motasem Motarack AL-Kayed sponsored by Social Discovery Ventures, and winners of the Educational Codeforces Round 39.

The division A winners are: Team SDV (platypus179, gvaibhav21, Motarack), TheVindicators (IIIT Kharagpur) (pranjal.ssh, Chenghiz), DomiNUS (NU of Singapore) (vodanhna, darknsux, minh141198).

The division B winners are: BEU Programmers (Baku Engineering University) (mahmud2690, Mamedov, fuck_coderinuse), Penza State University (Fortin, WooDeND, Key_J) and Sab_lite_hai (IIT(BHU),Varanasi) (Enigma27, Dsingh_24, nitishk24).

All results from India side
All results from Russia side

From the ever present in ACM World Finals city of Moscow, to the new-comer on the world stage city of Kollam — Hello India x Russia Programming Bootcamp showcased heart, passion, and a universal drive towards a better competition.

“It's the first time I participate at Hello ACM-ICPC Bootcamp in Asia and I admire local hospitality and students motivation. Everyone seems to be eager to learn, participants stay very late upsolving the contest problems and revising the topics they were thought during the day” states Gleb GlebsHP Evstropov, The Coordinator of the Programming Committee.

The latest in world finals simulation training would not be possible without the bronze sponsorship of VTB, the institute with the most extensive international network of any Russian bank, boasting more than 30 banks and financial companies in more than 20 countries.

Fill out this form and we will keep you up to date on our next boot camp!

UPD: Tutorial

Full text and comments »

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

By MikeMirzayanov, 6 years ago, translation, In English

Hello!

As an allowed language on Codeforces and Polygon C++17 has been added. The compiler we use is 32-bit mingw64 version 7.2.0 (later will be updated when new versions are released). We are using a patch from halyavin to speed up I/O when using scanf/printf (for more details, read here). The exact used distribution can be installed on Windows from our package manager called PBOX using the link http://pbox.me/packages/mingw-w64-7

The exact compilation command line is:

g++.exe -static -DONLINE_JUDGE -Wl,--stack=268435456 -O2 -std=c++17 -o %name%.exe %1 2>compilation.log

Wish you successful solutions in C++17,
MikeMirzayanov

Full text and comments »

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

By MikeMirzayanov, history, 6 years ago, In English

Hi!

After the Educational Codeforces Round 35 (рейтинговый для Див. 2) the system marked some solutions as plagiarism by mistake. It counts submitted twice solutions of the same participant as a plagiarism. Sorry about it. Day ago I rolled back punishment and judged such submissions as normal. Now I'm fixing the ratings. In 2-3 hours some rating changes will be reverted and applied back. The same with NY magic. Temporarily magic is unavailable now. It will be back soon!

The changes will affect ~10 people.

MikeMirzayanov

Full text and comments »

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

By MikeMirzayanov, 7 years ago, translation, In English

Happy New Year, Codeforces!

I hasten to wish the whole community (and including me) correct programs, sudden insights, beautiful ideas and interesting problems!

I hope that you have met the new year at least as fun as I am. Have you had enough sleep after New Year's Eve? This year, the traditional post summarizing the past year, I sat down to write only on January 1, 2018. I hope that I will not have to sum up the whole year.

This post is important to me, since it draws a line to all the work done by the Codeforces team and the entire community in 2017. Many thanks to the team: all of the achievements listed below are the result of joint efforts. We did an excellent job! The community must know its heroes. In 2017, MikeMirzayanov, KAN (problem coordinator), vintage_Vlad_Makeev (second problem coordinator), netman (ex-second problem coordinator), kuviman (developer), fcspartakm (developer), SladeThe (developer) and gKseni (manager). Great contributions were provided by the students of the Saratov University: BledDest, awoo, vovuh, and Perforator — educational rounds, trainings in Codeforces::Gym and help in the development. I radiate the rays of gratitude to problem writers and testers: you create interesting content for many thousands of programmers from all over the world. Many thanks to all those who helped with the special projects, wrote interesting posts and good comments. All together, we were able to make Codeforces better!

So, let's move on to the results. It seems to me, this year again has something to brag about.

Full text and comments »

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

By MikeMirzayanov, 7 years ago, translation, In English

Do you already have a New Year's mood?

And we have traditional gifts!

Change handle feature

Hurry! Only until the 10th of January, you can change your handle (but only once)! Note that it will be possible to roll back the changes or change the handle again only after a year. Be careful what you wish for.

You can change your handle to the new one which wasn't used before by anybody or which was used by you before. The links to a profile page with old handle would automatically redirect to the actual profile.

This year we have an improvement. If you took part in at least 10 rounds you can request handle of an inactive participant. It means that the participant should have a period of activity on Codeforces of at most 30 days, this period should be in 2012 or earlier. The inactive participant can’t have posted comments, messages and so on. It can’t take part in more than 2 contests. It will be automatically renamed and informed by email. If you can’t change handle to others, it means that some requirement doesn’t meet. Please do not ask me to do something with it. I’m not Santa Claus.

Talking about handles I always reminisce the following story. Once a user wrote me the message: "Please change my handle from I_love_Valya to I_love_Sveta, as I no longer love Valya ..."

New Year's masquerade of colors and ranks

Traditional magical tab has appeared in the profile setting. Happy New Year!

Full text and comments »

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

By MikeMirzayanov, history, 7 years ago, translation, In English

Hello, Codeforces!

I want to test the system before the rated rounds based on Technocup stage, to be sure that everything works as expected.

I invite you to take part in Testing Round 14 (Unrated). It will start soon, on December, 22, 11:05:00 (UTC). It will be unofficial unrated round. The duration is 90 minutes.

Pretests are unusually weak to trigger more hack.

Thank you,
MikeMirzayanov

UPD: Thank you for participation. I didn't notice any bugs. It seems we are ready for new rounds!

Full text and comments »

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