Pug’s Place

Never gonna give you up…

Archive for the 'acm' Category

Programming Contest Results

First, I must berate my readers. My last post was a gambit to cause a flurry of comments on my blog. I remarked to Odette as I was posting it, “I’m going to have 10 comments on this post by the time I wake up tomorrow.” I can’t believe you people - where were the mass posts of “BURN HER!?” Gosh, I even quoted the scene number as the title - it should have at least been obvious to Carmen if no one else. You’ve disappointed me. What have I done to earn your indifference?

Anyway…

The Entire Group (including Dave!)This weekend was the culmination of several hundred hours of coding practice this semester: the southeast regional semifinal of the ACM international collegiate programming contest (see last year or the year before). Preparing UF’s teams for this contest has been a massive time drain for me since the semester started and has been a primary reason for not updating this blog much. So, results… While standings aren’t available on the contest website yet, UF’s top teams scored 5th and 9th. Our 5th place team was UF 127.0.0.1 solving 7 of the 10 problems in the 5 hour time period. My team, UF: A Series of Tubes, scored 9th overall solving 5 problems in the time allotted. UF Slinky+Escalator=InfiniteFun also did well, solving two problems officially while having nearly-complete solutions for several more as the time expired.

I’m very happy with the way things turned out and I’m proud of UF. We’ve made huge headway in the last two years. Heck, for the first 3 and a half hours of the contest my team was #2 or #3 on the leader-board - I heard some mentions from the #1 team (who was seated adjacent to us) about their surprise at this. Muwahaha. I know that I did the best I could have done; in particular, I solved the top-tier problems. See, in each problem-set there tend to be a few problems which only the absolute best teams solve. I solved those three and solved two of them first… But that was my role, solve the subjectively hard-looking problems which would take a while. :)
Despite not winning a trip to Japan for any of our teams, I’m labeling this a success! Even better, we have a great core group of committed coders sticking around this year, and of course they are only going to get better. At the end of the day I just hope my legacy persists in a better light than that of Kevin (who previously ‘led’ the group)… but I like to think it will. :)
Finally, for some random craziness look at the Uncyclopedia entry for Chess, especially if you’re Tempest or easily amused. Definitely look at the “Pieces” section.

Other random updates: I’ve interviewed with Harris Corporation in Melbourne, FL. Monday evening I have a phone interview with Google in Phoenix and then the end of this week I’m interviewing with General Dynamics C4 Systems Group in Phoenix. In the mean time I have a midterm and some projects going on. But I’m just a little busy this time, not crazy busy like before.

5 comments

Well, that’s over.

Yesterday, Saturday, UCF drove up here for that Programming Contest I effectively organized. It went … fine, though it started late due to a series of printer problems. This was problematic since printer access during a competition is an absolute must: when you have three people using one computer, it’s highly useful to be able to print your buggy code and fix it on paper while another teammate is coding their solution to a different problem.

After moving everything into place and setting up the whole contest my brain was already mostly fried. This wasn’t helped any by my team’s handicap: My team, the most elite UF team, joined the most elite UCF team in attacking a different problem-set than the other 7 teams. In particular, we had to handle the 2004 ACM Collegiate World Finals problem set [PDF]. The other, less experienced teams luckily were given a problem-set containing some much easier problems (to keep them from being discouraged… like my team was! :) ). Unfortunately the world finals problems were very, very tough and we, the UF elite team, were very out of practice in comparison to UCF’s elite team (since they’re going to world finals in a month). So… we got stomped. But hell, that happens sometimes and I’m sure it was good for us anyway.

We had 28 UF students, 6 UCF students and 5 UCF faculty/staff there. I, as the organizer, had the fun of worrying about everything, setting up most of the technical stuff and then eventually giving the speech at the end, awarding prizes and shaking peoples’ hands. Yay.

The big thing for me is that it is OVER. Now all I have to do is get the school to reimburse me for all of the things I purchased with my own credit card (like all of the food)… Note to self: I’m never organizing another one of these.

Oh, and the other big thing is that in addition to being OVER, it seems to have served its purpose - most of the UF competitors were new to the sport and are now very interested in joining the team. That was the reason we did all of this, to inspire more people to join up. Here’s hoping that worked.

The rest of the weekend has been spent reading and then performing an aborted trip to the Osceola Gun Range which was, no joke, full. We couldn’t park. Ah well, we’re going to beat the crowd next weekend.

Tau - 11 days until Spring Break.

2 comments

Chasing Jimbo, New ‘Top Music’ list, programming contests

Several topics to toss in tonight’s update, so I’ll go in order.

1. Chasing Jimbo Wales

A group I’m involved in here on campus (Florida Free Culture) has arranged and secured funding to bring Jimbo (Jimmy) Wales to UF on Wednesday, April 12 2006. Jimbo is the founder of Wikipedia (and the whole of Wikimedia’s offerings, actually). He’s The Man behind the open encyclopedia concept. Anyway, I’m helping in various small ways to make sure this thing happens. We’ve just kicked into super- ultra- mega- crazy organizing mode to do all of the invites, secure panelists for a panel about various free culture-ish topics to occur after Jimbo’s keynote speech, publicize and followup the event in a positive way.

This should end up being a really fun event. First, Jimbo will be giving a keynote about Wikipedia, research and higher education (among other things I’m sure). Then he’ll be sitting on a panel with four other persons addressing specifics about open access to research information, open file formats (instead of MS Word files, for example) among other topics. Hopefully it’ll attract plenty of influential people, and even some students.

Amusingly, it’s about 8 people (including E. and myself) who are managing this whole task.

2. New ‘Top Music’ list

Since I’ve somewhat stopped using IMMS my favorite music list was getting rather stale. I’ve changed it now to show the songs I’ve played the most in the last week. Might be more entertaining.

3. Programming Contests

The UF ACM Programming Team is hosting programming contests here this semester to get more explosure and generate more student interest. The first of these contests was last weekend - 10 students competed, what I’d call an excellent turnout for our first try. I assisted in judging, so I couldn’t win anything. :) We’re planning at least two more, one of which is rather large, is in 10 days and is being put together by a large amount of sweat from my brow.

On February 25th the University of Central Florida is driving three teams and support personnel here to compete against seven UF programming teams in a full-scale 5 hour programming contest. I’ve reserved a computer lab and a classroom, garnered support from my department’s chairman, purchased $300 in prizes, had guest accounts created for computer access, acquired money to purchase food and drinks for competitors and advertised, advertised, advertised. Amazingly, a quick count in the RSVP account shows that we are only one person shy of our effective maximum number of UF students. So it looks like from a turnout aspect we’ll be success full!

My team consists of myself, Tim Smith and Justin Michalczak. We are “Team gump/tion zebra”, an ‘in’ joke, referring to the third line of the sample input of one of the problems Tim wrote for last weekend’s contest.

Oh, and last night I judged the “First Annual Codeslingers Shootout” at the Gator Linux Users Group meeting. The problem was selected by the LUG organizer, Clint, and was the classic Game Show problem:

Monty shows you three curtains.

Behind two of the curtains there is a silly gag prize. Behind one of the curtains is a really nice prize (like a new car). The prizes are randomly distributed before each game. But, there is always one nice prize and two silly prizes. Monty asks you to pick one of the curtains. Monty then opens one of the curtains that has a silly gag prize behind it. The audience has a good laugh.

Then Monty turns to you and says, “I’ll give you a choice. You may stick with your original selection or you can switch doors right now.”

What should you do? There are 3 possible answers: One, keep your original selection. Two, switch. Or, three, it doesn’t matter.

Your program will show either by algorithm or simulation the one correct answer from these 3.

The winner was Eric Lavigne, “Fastest Codeslinger 2006″, who wrote a correct solution in 9 minutes in ~12 lines of CLISP. I wrote two reference solutions in 15 minutes before the contest in both C++ and Java and they’re here, if you’re interested: [Java, C++]. Amusingly (and not at all obviously), the solution is to always switch doors. See basically, when you select one of the doors in the beginning you have a 1/3 chance of getting the grand prize. Then a door is removed, but your original selection still has a 1/3 chance of being right. The probability of your first choice does not improve. Which means that the remaining door has a 2/3 chance of being right. Since 2/3 > 1/3, you should always change doors.Edit: Correct fraction size. 1/3+1/2 did not = 1. Was tired, sorry. :)

People can debate this solution for hours because it does totally fly in the face of common sense, but programatically you can simulate (or calculate) exactly what happens to the probabilities and see that yes, you should always switch.

4. Class Notes

I noticed something which amused me today. Let me frame it in the form of a question: Those of you taking classes now, how many pages of notes have you taken for your courses so far this semester?

At present, 1.5 months into a 4 month term, I’ve taken the following volume of notes:

  • Distributed Operating Systems: 3 lines, one of which is the name of the course (misspelled as “Distributed Oberoning Systems”
  • Concurrent Programming: 2.2 pages, front and back
  • Networking Security: 1 page, front and back

Now, I do write very small, but still… I realized today that I don’t kill nearly as many trees as the majority of the people in my classes. Yet I still learn the material. At some point in the last four years I figured out that no matter how detailed I make my notes, I never go back and re-read them so, well, why take heavy notes?

Anyway, I’d love to be amused by your experiences / utter hatred. Flame on. :)

5. Other news

James and I bought Sunkist last weekend. I’m sipping at one now. Orange soda is so underrated.

In addition to all of this, I’ve been playing Grand Theft Auto: Vice City (which I recieved at the end of January) and occasionally doing homework. I know, I should be working on Gpremacy. I will soon, I will…

8 comments

UF Programming Competition #1

Today was the first open UF programming competition my group has put together. We had 10 competitors and Tim and myself acting the part of Judges/Proctors. At the end of the 3 hour competition everyone there had solved at least one problem so that was a testament to UF having decent competitors. Really, there were only two Programming Team members competing there today and one of them is retired (since he’s attended too many competitions).

It went well, despite some initial hangups getting the contest environment to work properly.

This was sort of the rehearsal for the larger competition in two weeks I’m organizing. UCF in Orlando is sending up three teams (of three persons each) to compete with 7 more teams from UF. We’re assembling people right now. I’ve purchased the prizes, reserved the rooms and done most of the advertising, but it’s a lot of work. Hopefully it will turn out well.

Amusingly, on all of the advertisements I wrote as the tagline: “FOOD, PRIZES AND ETERNAL GLORY!”

Now off to see the California Guitar Trio perform, live.

No comments