ACM sponsors a programming contest that includes local, regional, and international events. Last year we traveled to the University of South Alabama on Saturday, October 25 to compete in the 2008 regional tournament for a berth in the 2009 world finals to be held in Stockholm, Sweeden! We didn’t qualify for the world finals, but we still came home as a winning team by winning the 1st timers competition!

Our Fall 2009 weekly meetings are **Wednesday, 4:00-5:30** in Russell Hall, Room 311. On this page, I will post problems that we solve and topics that we discuss during our practices.

### 2010 Practices

#### Wednesday, October 13, 2010

We began a solution for the “Dog Judging” problem from the 2007 regional competition.

- Dog Judging (SER 2007) – a program for checking consistency of dog judging scores [partial solution]

#### Wednesday, September 29, 2010

We covered using the Scanner class for file input and output and then solved the second problem “Base-d timing” from the 2007 regional competition.

- Base-D (SER 2007) – a program for checking times in different basesĀ [solution]

### 2009 Practices

#### Wednesday, October 28, 2009

We designed a solution, but didn’t have time to finish the implementation during practice. I went ahead and posted a solution that I completed later in the evening.

- Polygon (SER 2005) – a program for determining if a set of line segments forms a polygon [solution]

#### Wednesday, October 21, 2009

We worked on a problem today inspired by a theory from mathematics known as the Goldbach conjecture.

- Goldbach (SER 2005) – a program for finding a sum of primes to add up to a number [solution]

#### Wednesday, October 14, 2009

Today we covered the concept of recursion. Then we were able to solve the hardest problem from the 2005 2005 southeastern regional competition!

- WeveGotYourNumber (SER 2005) – a program for describing numbers by counting their digits [solution]

#### Wednesday, October 7, 2009

We briefly covered the use of FileInputStream and Scanner for reading text files. Then we discussed in a bit more detail how the Scanner class can be used to parse strings. Finally, we worked through the first steps in solving a problem from the 2005 southeastern regional competition.

- BritishGrid (SER 2005) – a program for automating the position of a company telephone receptionist [partial solution] [complete solution]

#### Wednesday, September 30, 2009

We went over slides describing the ACM competition for new programmers unfamiliar with the competition. Then we went over powerpoint slides reviewing the Vector class. Finally, we solved a problem from the 2005 southeastern regional competition.

- AutoReceptionist (SER 2005) – a program for automating the position of a company telephone receptionist [solution]

### 2008 Practices

#### Wednesday, October 22, 2008

We again looked at the Linux environment that we will be using during the actual competition and examined a simple technique for modifying our programs to read input from stdin instead of from a file. Then we attempted the sixth problem from the 2006 Southeastern regional competition:

- Pebbles (SER 2006) – game advice for an old Chinese game

#### Wednesday, October 15, 2008

We explored the Linux environment that we will be using during the actual competition. Then we attempted the fifth problem from the 2006 Southeastern regional competition involving the specification of logical mazes:

- Logical Mazes (SER 2006) – parse a logical maze and output it in an ASCII art format [solution]

#### Wednesday, October 1, 2008

We solved the fourth problem from the 2006 Southeastern regional competition involving the mowing of “cyber-unit square lawns”:

- Lawn Mowing (SER 2006) – time taken to mow a cyber-lawn

#### Wednesday, September 24, 2008

We solved the second problem from the 2006 Southeastern regional competition very quickly and then moved onto the third problem used in that year’s competition:

- Divisibility (SER 2006) – divisible by 3 [solution]
- Cubes (SER 2006) – folding colored cubes

#### Wednesday, September 17, 2008

We solved the first problem from the 2006 Southeastern regional competition:

- DRAM (SER 2006) – dram palindrome finder [solution]

### 2007 Practices

#### Wednesday, November 28, 2007

We practiced some more with regular expressions within the Eclipse search box, and then we worked on the following problem from SER 2003:

- Election (SER 2003) – list candidates on ballot fairly [solution]

#### Wednesday, November 14, 2007

We spent the entire practice working on the problem from SER 2003 listed below.

- Accounting Woes (SER 2003) – determine ticket sales [solution]

#### Wednesday, November 7, 2007

We spent the entire practice working with regular expressions. We demonstrated how to use regular expressions within search boxes that support this capability. We used Eclipse to search through Java code. We also used regular expressions to find patterns within HTML files — essentially creating a miniature parser.

#### Wednesday, October 31, 2007

Regular expression overview from the Java tutorial and this problem below:

- Treasure Island (SER 2003) – search word puzzles for words [solution]

#### Wednesday, October 24, 2007

We briefly discussed last week’s solution and then spent the rest of the time working in two teams on the first “game” problem we have attempted.

- Saved by Zero (SER 2002) – score an interesting board game [solution]

#### Wednesday, October 17, 2007

We spent the entire practice working on the problem listed below. A key part of the solution was the use of a SortedMap.

- Name that Tune? (SER 2002) – scan for copyright violations [solution]

#### Wednesday, October 10, 2007

At the beginning of practice, I covered a few more features of the Java Collections library. The updated powerpoint presentation is available online. We attempted another problem from SER 2002:

- I Can’t Drive 55 (SER 2002) – determine speeding fines and tolls [solution]

#### Wednesday, October 3, 2007

At the beginning of practice, I went over a short powerpoint presentation introducing the java.util.Vector class. I also demonstrated some of the features of Vector using CollectionsExample.java. Finally, we attempted one of the harder problems from SER 2002:

- Village People (SER 2002) – determine ages for villagers [solution]

#### Wednesday, September 26, 2007

For this first practice, I briefly described what our practices will be like — namely, solving problems and discussing specific programming strategies, techniques, and tips along the way. We then attempted to solve the following two problems:

- Abba (SER 2002) – create “club names” for students by rearranging letters [solution]
- We are the Champions (SER 2002) – determine winners for a tournament using tie breakers [solution]

### 2008 Southeast Regional Programming Competition

#### Saturday, October 25, 2008

Congratulations to “The Red C”! Samford’s inaugural programming team took first place in the first-timer’s competition at the University of South Alabama in Mobile, Alabama. The competition was intense. Follow the action as it happened in my live blog of the event, or read the summary complete with a photograph of our Starbucks celebration.