What is Competitive Programming?

What is Competitive Programming?


What is Competitive Programming?

In this video, I describe what Competitive Programming is all about, including benefits like jobs from top companies!

Winning Google Kickstart Round A:    • Winning Google Kickstart Round A 2020…  

More videos about competitive programming will be coming soon!

If this was helpful, consider liking or subscribing!

Website: https://williamlin.io/
Instagram: https://www.instagram.com/tmwilliamli
Twitter: https://twitter.com/tmwilliamlin168

Warsaw University solves the first problem of ICPC World Finals 2019:    • Warsaw University solves the first pr…  
Swarthmore College solves problem A:    • Swarthmore College solve problem A  


Content

23.44 -> Come on come on
27.68 -> Yes!!!
29.15 -> You might have seen my video of winning Google Kickstart Round A and you might have no idea what's going on.
35.6 -> If you haven't seen it, be sure to check it out.
37.804 -> The video will probably appear somewhere on the screen and I'll also provide a link in the description.
43.79 -> Competitive programming, or CP for short, is a mind sport where participants need to write programs to solve well-defined problems.
52.58 -> Those problems are often related to algorithms, data structures, math, and logic.
57.41 -> The programs of the contestants are judged by many different factors including how much time the programs take
64.489 -> and how much memory the programs use.
67.102 -> There are many benefits to doing CP which I'll describe later.
70.98 -> If you don't completely understand what I just said
74.539 -> then that's okay. I'll show you a really simple example of a problem right now.
81.05 -> Here we have a problem where we are asked to compute the sum of two integers.
87.4 -> So the input that we're given is two integers and a is the first integer and b is the second integer.
95.96 -> We're supposed to return the sum of the two integers and this should be pretty simple
101.84 -> for anyone who has a bit of programming experience.
105.95 -> So if we go to the code here,
109.25 -> we just need to type
111.08 -> return a plus b and that'll solve the problem.
115.43 -> To check if our program is correct, we'll submit this program and
121.22 -> it will be judged against a few test cases to see if the program is correct.
129.86 -> Our program got accepted and
133.01 -> Yeah, so that's great.
134.29 -> This is a very simple example. The actual problems you see in CP will be much harder than this.
141.86 -> Basically for each problem you need to write a program that takes in some input
148.97 -> and processes the input and outputs the answer.
152.15 -> By the way, if you want to try this out yourself, this site is called HackerRank and
158.39 -> it's one of the well-known sites for CP.
161.95 -> Also, I used C++ in this example, but you can use any language to solve CP problems, like Java or Python.
171.21 -> Now, in contests, you basically have a bunch of these problems that you need to solve.
175.5 -> The contestants are generally ranked by the number of problems that they solve, the time that they take to solve those problems,
181.95 -> and the number of incorrect attempts that they make.
185.61 -> I'll explain the scoring for this Codeforces contest briefly.
189.8 -> In this contest, there are six problems from A to F and each problem has a maximum score shown at the top.
196.71 -> So problem A has a maximum score of 500 and problem E has a maximum score of 2500.
205.35 -> After each minute of the contest, the scores of the problems decrease by a small fraction.
212.25 -> As you can see here, I solved problem A within the first minute of the contest,
217.8 -> so the score did not decrease at all and I got the full 500 points for this problem.
223.98 -> I solved problem F much later in the contest
226.61 -> so my score for problem F is much lower than the maximum score for problem F.
232.98 -> Lastly your total score is just the sum of your scores for the individual problems and
239.52 -> contestants are ranked according to the scores.
243.33 -> So now I will go over the benefits of doing CP.
247.23 -> First of all, doing CP helps you prepare for coding interviews for major companies like FAANG, which stands for Facebook, Amazon,
255.3 -> Apple, Netflix, and Google.
257.82 -> Questions that are asked in coding interviews are basically just easy-to-medium-leveled CP problems and that's why you see many of the top
265.77 -> competitive programmers ending up with a job at these companies.
269.89 -> The second benefit, which only applies to secondary school students, is Olympiads.
275.12 -> Informatics Olympiads are basically just CP contests for high school students.
280.14 -> Each country has a national contest and a training camp,
283.4 -> for example, the USA has the USA computing Olympiad.
287.84 -> Each country ultimately selects four students to represent their country in the International Olympiad in informatics.
295.23 -> Obtaining a medal in the International Olympiad in informatics is a huge boost for applying to certain prestigious universities.
304.21 -> Some countries even have rules which will guarantee your admission to those universities.
309.6 -> If you represent Taiwan and obtain a medal, for example, you're guaranteed admission to National Taiwan University,
316.77 -> which is basically the best university in Taiwan.
320.79 -> Lastly, CP is fun. I consider CP to be no different than any other esport
326.39 -> so that's why you may have noticed I set the category of my channel to games.
330.44 -> I just love the feeling of satisfaction
333.48 -> when I paste together the final part of a problem, code and submit my program, and see the green "Accepted" status on my program
341.37 -> after hours of hard work.
343.35 -> During contests, I love the rush of adrenaline as I race time to innovate solutions for the problems presented before me.
351.63 -> For me, the tiny green status
354.25 -> ignites exhilaration that an athlete and their fans would experience after a goal.
359.48 -> If you are interested in competitive programming then be sure to subscribe as I'll be posting more information about how you can start competitive programming.
369.54 -> I also have a Discord server and the link is in the description below
374.09 -> I will be posting solutions to various contests on the server and you can also discuss CP with other members on the server.
382.95 -> That's basically it. Thanks for watching!

Source: https://www.youtube.com/watch?v=ueNT-w7Oluw