Programming Competition
The International Collegiate Programming Contest (ICPC) is a programming competition put on by ACM to find the best of the best programmers and problem solvers out there. The competitions are a lot of fun, and you can even get a free year of membership in ACM's national organization.
The next competition is October 13th in Melbourne, FL (FIT) Contest Homepage
Practices will be on Wednesdays and Thursdays from 5:00 - 5:45 in the C4 lab (ENB 220).
If you are interested, you should:
- Contact Dr. Turner
- Make sure you are eligible using this decision tree
- Come to the practices
- Review your Java
- Burn a contest CD
Quick facts about the competition:
- It's FREE!
- Teams of 3, one computer, use their system (Ubuntu Linux).
- About 11 problems over 5 hours. Scored on time.
Some helpful Java classes to review
- Scanner and Formatter as well as printf
- Wrapper classes Boolean, Character, Double, Integer
- The java.util collection classes ArrayList, BitSet, HashMap, HashSet, LinkedList, Stack, TreeMap, TreeSet
- The java.util class StringTokenizer
- The java.util.regex classes Matcher and Pattern
- The java.math class BigInteger
Knowledge of the following data structures, algorithms, and programming techniques will also be useful:
- Basic data structures: stacks, queues, heaps, arrays, lists
- Basic algorithms: sorting, searching
- Binary trees
- Brute-force search
- Backtracking search
- Generating all permutations or combinations of a set
- Recursion
- Dynamic Programming
- Graphs and their algorithms, including breadth-first search, depth-first search, minimum spanning trees, shortest paths, topological sort, and transitive closure
- Basic parsing techniques such as recursive descent, operator precedence, or infix-to-postfix conversion
Helpful Links:
Strategies
Program Submission Example
Sample Problems
More Sample Problems
Contest CD
ICPC homepage