About
This page has information about our club and what we do. If you have a question we don't answer here, feel free to ask in the Discord server or to message an officer.
What is competitive programming?
Competitive programming is pretty much exactly what it sounds like. You (and a team, usually) compete with others to try to solve a series of programming problems as fast as you can. Doing well in competitive programming competitions requires a solid foundation of well-known data structures and algorithms as well as the ability to combine them in novel ways or to come up with new ones matching the particulars of a problem.
What does the Competitive Programming Club do?
Naturally, the primary purpose of the Competitive Programming Club is to prepare our members for competitive programming competitions, like ICPC. To prepare, we give lectures, host and participate in various practice contests, and more generally provide a time and space to interact with and ask questions of more experienced programmers.
However, the skills we teach are also applicable much more broadly than just the contest setting! Proficiency in problem solving and knowledge of data structures and algorithms are essential for any personal or professional software engineering work, and many attend meetings just to sharpen these skills.
We also host our own programming events here on campus. We host an annual mock-ICPC contest called the Buckeye Programming Competition with problems created by our leadership team. We also occasionally host the Arcade of Code, which is a more laid back, beginner-friendly contest featuring a bracket-style tournament and wacky programming challenges (like 'shortest source code' or 'no control flow').
If you have any other questions about what we do, feel free to contact the leadership team
Who can join? How can I join?
Anyone can attend meetings! All you have to do is show up. Upcoming events, including times and room numbers, can be found on the schedule page. If you're interested in becoming an official member on the roster, for the purpose of voting in elections or for any other reason, you'll need to attend at least four meetings and fill out the attendance form at each.
Do I need to bring anything to the meetings?
We don't have the ability to provide any technology, so you should bring your own computing device. A laptop works best, but you may be able to get away with a tablet like an iPad with some effort. Programming with a smartphone, while commendable, is extremely uncomfortable, so it is not recommended, nor is programming with a smart watch, VR headset, or microwave oven.
We also recommend bringing something to write on for diagramming, which can be immensely useful for problem solving of any kind.
What is the International Collegiate Programming Competition?
The International Collegiate Programming Competition (or ICPC) is an international programming competition for college students, it turns out. We participate in the competition every year, in at least the regional competition, the East Central North American regional (or ECNA). We frequently advance beyond the regional, to the North American Championship. In order to represent our team at ICPC, you need to do well in the North American Qualifier contest which occurs during the August semester.
For more information, check out our page on the competition or ICPC's official website.
I'd to help out with the club!
Thanks for your interest! Direct message someone in the leadership team and we can discuss what you're interested in and where you could contribute.
I have so many more questions.
The Discord server is a great place for questions! You can also check out the leadership page for more options.