ACM Programming Contest Results
An anonymous submitter writes: "Shanghai Jiao Tong University has won the 2002 ACM International Collegiate Programming Contest with six of nine problems solved. Also solving six problems were MIT (2nd), University of Waterloo (3rd), Tsinghua University (4th), and Stanford University (5th). You can view the problems online, as well as the final standings. Congratulations to all!"
Thats the sound of those questions flying past way above my head...
For those who are unable to view PDFs.
Here is the problems PDF in text format
Waterloo had some problems with D. Their first submission was about halfway in, but was judged incorrect. They had 2-3 hours to fix it but never did figure out what was wrong, which is probably just bad luck. If they time spent on D had been used to do another problem, they would have saved a lot of penalty minutes too (of course, it's easy to say that after the fact).
The 3rd place finish is still very impressive, all things considered. Waterloo has now solved the same number of problems as the winning team (for which they now award the "gold medal") for an unprecedented 7 years, I believe, even though participation in the contest has more than tripled in that time and the competition is stiffer than ever.
UW CS tution is about CAD$5400/year. MIT tuition is about US$26,000 (CAD $40,000) per year.
Paul
Many of the ACM competitors from English speaking countries compete weekly at TopCoder.
College students and professionals alike compete against each other to solve 3-problem sets within 75 minutes (choice of C++ or Java or C#).
Under 18 are allowed to compete as well, but not eligible for prizes.
That Fortran 90 wasn't one of the supported languages for the championship. They are allowing C, C++, Java, and Pascal. If you're a problem solver, you know your Fortran. And these are math problems, evidently. So I'm baffled as to why it's not an option. Before I see the deluge of "Fortran is dying" comments, it is still heavily used for engineering problem solving, I know for a fact, so don't give me that crap.
I remember years past when I was on the team competing for my university. Locals, not International. One year we had several of our guys graduate (IIRC), and were short on filling in with CS students. Well, we ended up with a Chemical Engineer who could program, and I tell you it was a blessing. He brought a whole different viewpoint to the table on how to solve things, because of having different techniques needed for his discipline.
Iterative estimation of math problems to get the needed significant digits instead of actually trying to solve it, that sort of thing. Helped all of us open our eyes for "non-CS" ways to solve stuff.
=Blue(23)
LITTLE GIRL: But which cookie will you eat FIRST? C. MONSTER: Me think you have misconception of cookie-eating process.
As an American who did a postdoctoral stint at Waterloo, I'm proud of UW's rating in the ACM contests. But like football games, I realize that that it has little to do with the worth of the university. Do you seriously believe that, for example, poorly funded Latin American and Eastern European universities are truly better than, for, example, Cal Tech? And yet that is what would be implied by taking the rankings seriously. Some schools are just really into the contests and have organized coaching and practice sessions, and other schools just don't care much.
Additionally, I'm always been amused by the Canadian ignorance of university tuition in the States. Sure private universities like MIT and Harvard cost a lot of money. But public universities are more or less as cheap as Canadian universties and still produce first class research. BSD UNIX was developed at UC-Berkeley. Mosaic (the ancestor of both Mozilla and IE) was developed at UIUC.
When I was a sophomore(?) in high school around 1980, some friends and I entered a programming contest. I don't remember which one it was; it may even have been an ACM contest.
Anyway, we got a bunch of problems. I ended up taking the hardest one, which would probably take all the time allotted, while the others worked on cranking out the simpler one.
Here was the question: You have a salesman that must travel through a series of cities. Write a program to find the shortest route.
I had never heard of the Travelling Salesman problem before.
So I diligently tried to solve the problem. But for some strange reason, I kept running into cases that made it difficult to find the optimal, shortest route. I worked my ass off for the 2 or 3 hours that we had, and ended up running out time. I was sure there "had to be a solution", otherwise, why would they give us the problem?
It wasn't f***ing fair, and I'm still f***ing pissed about it to this day. :)
Sometimes it's best to just let stupid people be stupid.
...even moderately offended by the lack of functional languages offered to the contestants?
(I'm (not (one) of those) rabid, foaming LISP advocates) that insists *everything* is better with functional languages... but... I do believe there is a time and place for just about every style of programming. Some of those questions looked very much like the "time and place" for a nice modern functional language like Haskell. Even Scheme would've been nice... Miranda, some flavour of ML... anything.
Perhaps there is some reasoning behind this that I'm missing. I guess I just thought it was sad that the ACM seems to be promoting the view that functional languages are too 'esoteric' even for use in a programming contest.
Yes, I agree. Not just functional, either; lots of their problems would be exquisitely tackled by a logic programming language like prolog or twelf. It saddens me that ACM is not progressive enough to encorporate even "known good languages" into their allowed set (yet would easily fall to Yet Another Procedural Language with corporate backing like Java).
;)
There are lots of things that suck about the ACM contest, anyway. Personally, I think that the ICFP contest is much better, because:
- You can use any language, number of teammates, resources, etc.
- You get several days
- The problems are more interesting (sometimes unsolved)
- Work at home