Date: 2023-02-17 / 4:00 ~ 5:00 PM
Location: MSC W301
Competitive programming is a mind-sport that has been growing in popularity exponentially over the past years, with tens of thousands of programmers taking part in online competitions every day. Out of these competitions, the ICPC stands out as the biggest and most prestigious competition for university students, with more than 50,000 students each year competing to become ICPC World Champions. Despite this popularity, there isn't much research analyzing the competition and ways to design methodologies for training students. In this study, we looked at previous ICPC competitions to tag problems and determine which theoretical knowledge is most valuable for students to enable them to solve as many problems as possible. We also examined the thought process of a competitive programmer while solving a problem, resulting in a general flowchart algorithm for solving problems, that we have tested on ICPC problems to show its applicability. Finally, we used this knowledge to design a series of competitive programming practice meetings for students of Emory University, and tracked their improvement through time to judge our methodology, culminating in their participation at the ICPC Southeast Regional, and the university's qualification to the North America Championship.