Hello everyone, as I said before, due to the problem with LeetCode, the topic of LeetCode on the weekend was cancelled, so I will write some algorithm problems of other topics for you. Currently, codeForces, a well-known programming competition platform abroad, is selected. It is famous in the competition circle, for ordinary college students may not know much. So this article is a brief introduction to codeForces and how it can be used.
Link: codeforces.com
Introduction of codeforces
A brief introduction to codeForces, codeForces is located in the country of MAO, which is the most programmed country in the universe. It is said to have been originally maintained by a group of university students in Russia and features codes and problem solutions that are open to the public. Everyone can look at other great code, which is very open source spirit.
A great feature of CodeForces is the wide variety of topics, which can be found at all levels of difficulty. And the topic is very interesting, often thinking trap more, that is, thinking questions more. The investigation of data structure and algorithm is relatively weak, and more often it is to tell you what algorithm to use and you don’t know how to do it…
Another big feature of CodeForces is that it has its own upper subsystem, which basically holds online algorithm contests once or twice a week. The average competition lasts about two hours and is free to enter if you sign up for an account. I remember when you first entered a competition you were given an initial score of 1500 points, and then you were given points or points less depending on how well you did in the competition. As the players of different levels of strength and strength, so it opened several levels (DIV), the players of different levels face different difficulties, so as to ensure that everyone can participate happily.
This is an important part and will be discussed in detail later.
The basic function
This is the banner on the home page. Let’s pick a few more important ones to introduce.
TOP
The first is Top, which basically contains some materials, blogs and problem solving released by Daniel. For example, the figure below is a great sorting of some algorithms and data structure of the classic problem sorting.
This inside dry goods or a lot of, but because it is a foreign website, so obviously must be all In English. But don’t be afraid, you’re all tech guys, and most of you are not native. I don’t use very obscure words to describe a problem or an algorithm, so it’s pretty easy to understand. In addition, now the online translation function is very developed, I did not have any pressure when my English was poor, so you do not worry.
contest
The second important section is contest, which includes online contests that are ongoing and have been held in the past.
For example, the picture above shows the current schedule of the competition. There will be a register button for the upcoming competition, allowing everyone to register.
The div in parentheses after the competition name indicates the difficulty level, with DIV1 being the highest difficulty. A rating of 1900 or above is required to register. Div2 difficulty will be much easier, basic learning algorithm and data structure can go in to do one or two questions. The first two questions in DIV2 basically did not involve any algorithms, but mainly tested thinking. Usually, we’ll look at some algorithms and data structures after we get to problem C.
This picture is the match held before, we can also click into practice, it also provides replay function, can simulate the situation of the match at that time.
gym
Gym in English means “gym”. As the name suggests, it can be understood as exercises.
Gym column under the general is some professional competition questions and ACM exercises, and contest questions than gym questions inside the difficulty will be greater. There will also be topics on various algorithms and data structures. Although it seems to be more difficult, the questions inside are also differentiated, not every question is difficult, even if the level is generally can do one or two.
The more commonly used functions of the home page are these, and there are some functions such as group, ladder, calendar, etc., because it is not very commonly used, there is no further details here.
The game
Finally, a few words about matches in CodeForces, which is the core function it started with.
Matches in CodeForces typically have six questions, and with only two hours to play, it’s hard to do all six. I could basically do three, and the rating wouldn’t go down. The system will have an expectation of your performance based on your current rating, and your final rise or fall is the difference between your actual performance and this expectation. A novice might get a higher score by doing two questions, but if you’ve got a high rating now and you’ve done two questions, you’re definitely down.
During the competition, we can see how many people pass each question in real time, which helps us to choose the question. Generally speaking, the more simple the topic, but there are exceptions, such as some questions hidden some traps, although simple, but many people did not expect to hang on the top, this is often the case.
When we compete, there is often a situation that we still have time after we have done three questions, but we can’t come up with the following questions at the moment. What do you do when you have more time? You can look at other players’ codes. We can see that there is a column called Room, and the system will randomly assign rooms during the match. You can look at the code of other people in the same room who have passed the same problem.
Codeforces will only test a small number of stats during a match, the actual test session will take place after the match. So the code that passed the test in the competition only passed the small data verification, and it is very likely that there are hidden problems that have not been discovered. Once you pass this problem, you can look at other people’s code, analyze it for problems, and if you find bugs, construct a data hack to hack out his submission. You will be rewarded with points for successful hacks.
You can double-click on someone else’s commit history to read their code. At the late stage of the game, after we had done almost all the questions we could do, we entered the stage of intense and stimulating mutual hack. In all honesty, this is a lot more fun than just a quiz.
In the past, our ACM training team often played codeForces games together at night. Sometimes when we saw our teammates in the same room, we would pay attention to each other’s recent situation and hack each other. I have to say that it is still very interesting to miss it now.
So that’s it for CodeForces. If you’re interested in algorithms, try it out and you’ll find it fun.
I sincerely wish you all a fruitful day. If you still like today’s content, please join us in a three-way support.
Original link, ask a concern
This article is formatted using MDNICE
– END –