Competitive Programming – What and Why?
Competitive programming is a sports where programmers are given tasks and they have to solve them in a certain perirod of time. So, actually It’s a brain storming. Programming meaning commanding the computers for doing some tasks. Programming is an important part of today’s technology. So, competitive programming is nothing but a way of learning how to program computers where the amazing parts are having fun with learning and compete with others.
Gradually, competitive programming is becoming popular day by day. As this problem solving skill helps to learn a new framework or a new technology or a tool very fast and efficiently. It helps to learn a new thing easier. It’s like a training for brain to know how to solve a problem or how to think about a problem. So, giant tech companies are also giving much importance to this skill.
There are various renowned competitions in competitive programming. These competitions are hold through out the year. These competitions have different formats. Some are online contests which are conducted through internet in a website. Participants submit their solutions from home and some are offline contests which are organized in a specific venue and participants have to attend the competition from there.
So, Let’s look at some of the famous programming competitions.
ICPC means International Collegiate Programming Contest. It’s the most prestigious programming contest all over the world in competitive programming. This contest is hold among the students of different universities of the world and it’s a team contest. According to rules, every team has three members. Universities form their teams from students. ICPC has several stages. As a result, through out the world many regions are divided. Firstly, there is a preliminary contest in every region which is a online contest. Then selected teams participate in regional final contest and it’s offline. Then top teams from every region moved to world finals. World finals means the final stage of ICPC where best teams from every region participate and champions get prizes.
Google Code Jam
You can also check Smartphone Processors
Code Jam is a renowned programming contest which comes once a year. Google started it in 2003. Like icpc it has some stages but this is not a team contest. It’s an individual contest and top participants got prizes.
Facebook Hacker Cup
In 2011 Facebook Hacker Cup started. Facebook organize it once in a year and this contests are great opportunity to hire brilliant programmers.
Including these annual competitions there are many websites where they hold online contests regularly and thousands of people participate on those contests. This websites are called online judge.
So, Let’s take a look on some of these websites.
However, these websites have many practice problems and there is a great community for learning and helping about programming on these websites. People can learn algorithms and problem solving, practice and participate on online contests from these websites.