�������������� TABLE OF CONTENTS Founder’s Message 2 ������������������ Algorithm Competition Brackets 3 Semifinal Room 1 5 Semifinal Room 2 11 ���������������������� Semifinal Room 3 19 Component Competition Brackets 25 Design Final Room 26 ������������������ Development Final Room 28 Review Boards 30 SCHEDULE OF EVENTS

Wednesday, April 14 6:00pm - 8:00pm Welcome Reception Thursday, April 15 ������������������������������������������ 8:30am - 9:30am Breakfast, Sponsored by Yahoo! 10:00am - 11:45am Semifinal Room 1 �������������������������������������������� 11:45am - 1:00pm Lunch �������������������������������������������� 1:00pm - 2:45pm Semifinal Room 2 4:00pm - 5:45pm Semifinal Room 3 ���������������������������������������� 7:00pm - 8:45pm Wildcard Round 8:30pm - 11:00pm Yahoo! Gathering at MJ O’Connor’s Friday, April 16 ����������������� 7:30am - 9:00am Breakfast 8:00am - 12:00pm Component Competition Finals 12:00pm -1:00pm Lunch 1:00pm - 2:00 pm Yahoo! Technical Presentation 12:00pm - 3:30pm Review of Component Competition 3:00pm -4:45pm Coding Tournament Finals 5:00pm - 6:00pm Media Hour/Press Conference 6:00pm - 8:00pm Dinner and Awards Presentation

Table of Contents 1 FOUNDER’S MESSAGE ALGORITHM COMPETITION

Welcome to the 2004 TopCoder® Collegiate Challenge, sponsored by Yahoo!® Since last year’s Collegiate Challenge, TopCoder has grown by more than 13,000 Semifinal Rounds Wildcard Round Final Round Champion members. Membership continues to steadily increase and currently stands at more than 38,000 members. Many of the finalists will be familiar to long-standing TopCoder members. With the membership growth, some new faces will spice up tomek the competition. bstanescu

We started the Algorithm Competition of the TCCC 04 with more than 700 Eryx students. Of the final 24, eight have been previous onsite finalists, but only one is a returning finalist from the 2003 Collegiate Challenge, and 16 are here for the AdrianKuegel first time. The competition has broadened internationally, with seven finalists from lars the US and 17 from other countries around the world. Many of the students have traveled a great distance to participate in the finals. TopCoder welcomes each of Ruberik you. mickle

This is TopCoder’s second major tournament to include a Component Competition. RalphFurmaniak While participation in the Component Competition still has far to go for it to match the Algorithm participation, it is growing nicely (from 142 component rated members during the TCO to 154 now). For those who are unaware, TopCoder reid members can compete to develop commercial software for our customers in the form of components and applications. Our Component Competitions bring a bladerunner real-world dimension to the tournament by measuring design and development ability. TopCoder continues to be very excited about Jan_Kuipers expanding the Component Competition presence. aneubeck

Of course, without our sponsors none of this would be possible. Yahoo! has been antimatter tremendous to work with. They are truly a company that ‘gets it’. They have been working very closely with us to make sure that this event is the best one yet. We Ryan rd once again welcome NVIDIA as a sponsor. This is NVIDIA’s 3 major sponsorship skanthak of a TopCoder event. They are, quite simply, the quintessential class act. Their dedication to driving their organization through talent couldn’t be clearer. kalmakka

I would like to personally thank the TopCoder staff. It would be impossible to find a more dedicated, hard working group of people. Maintaining a large population of John Dethridge members doing a myriad of work would not be possible without their dedication and hard work. I would also like to thank all of the members who build our systems, ZorbaTHut write problems, review designs and code, and administer contests. dary

Once again, I welcome you all to the 2004 TopCoder Collegiate Challenge, tjq sponsored by Yahoo! As always, best of luck to you in the Arena! grotmol haha

petko

Jack Hughes dark_lord Founder, TopCoder, Inc.

2 Founder’s Message Algorithm Competition Brackets 3 ALGORITHM COMPETITION01 SEMIFINAL WHAT I REALLY LEARNED FROM ROOM TOPCODER WHILE IN COLLEGE... warsaw • How to improve my coding performance under panic attacks, tomek during the last 10 minutes of a round. – adic university • To recheck a solution, even if it works for the given examples. – AdrianKuegel

• Fast thinking – aksonov bstanescu • To enjoy looking at others source code – aksonov • That you should not program at 3:30 in the morning. – aneubeck warsaw • That regular competition is a must for top ranking. – aneubeck university Eryx • That you should think about each detail of a problem before starting to code. – aneubeck • More ways to apply DP. – antimatter AdrianKuegel • That despite how much I have already learned, there’s still a long way to go. – antimatter • Nearly every algorithm I know. – aussie • That elegant code is the winning code – bladerunner lars • STL rules – bladerunner • That I really should use Java and not C++ (this one really hasn’t sunk in yet, unfortunately) – bsauerwine Ruberik • That you should choose a non-boring handle if you plan on competing regularly! –bsauerwine • How to apply programming techniques and algorithms to new problems – bstanescu mickle • Not to forget the algebra and geometry that I learned in High School. – bstanescu

RalphFurmaniak

4 Algorithm Competition Semifinalists 5 tomek Warsaw University Seed: 1 Seed: 10 Warsaw University Eryx

Tomasz Czajka ������ ���������� ���������� ������ ���������� ���������� Eryk Kopczyñski Warsaw, Poland ������� ���� ������ ������� ���� ������ Warsaw, Poland ������� ������� Current Rating: 3472 ���������� ����� � ���������� ����� � Current Rating: 2804 Current Ranking: 1 ���������� ��������� � ������ ���������� ��������� � ������ Current Ranking: 13 Rating Percentile: 99.83 Rating Percentile: 99.99 ��������� �� �������� ���� ������ ��������� �� �������� ���� ������ Number of Ratings: 34 Number of Ratings: 20 ������ ������ Highest Rating: 3547 ������������ �� ������������ �� Highest Rating: 2808 Lowest Rating: 1816 ������� ������������ �� ������� ������� ������������ � ������ Lowest Rating: 1594 ������� ��������� ������ ������� ��������� ������ TC Do you develop software utilizing an TC Which TopCoder member do you most � �� ��� � �� ��� object oriented or component based admire and why? TC Have you participated in TopCoder TC In your opinion, who is currently the most approach? Why? TC Yarin for getting Sweden to get paid. ������� ������� ������� ������� ������� ������ Software component projects in a influential person in technology? TC Usually - if I do develop software. design, development or reviewer EK Thomas Edison (His inventions are still I try to make the code clean and TC Please describe a special talent you have role? If so, what did you think of around.) well separated, so it often ends up (other than programming) or tell us some- ������� ����������� ���������� ������� ����������� ���������� the experience? If not, what would packed in classes. thing about you that would surprise others. entice you to participate? TC What would be your “Dream job”? TC I can’t stop playing Monopoly. ������� ���� ������ ������� ���� ������ EK I would like to participate in a EK Earn $1,000,000 each day, without doing design competition, but I need to anything (so I can also do something else) TC Describe the most challenging ���������� ����� �� ������ ���������� ����� �� ������ system you have played a role in TC Tell us the best joke you know. have time to know what is it about, ������ ������� developing. TC Polish Airlines flight, just after a difficult ���������� ��������� � ���������� ��������� � and to see some examples to know TC Please describe a special talent you have what I am expected to do. (other than programming) or tell us some- TC A natural language processing landing. Pilot: Whew! That runway was ��������� ��� �������� ���� ������ ��������� �� �������� ���� ������ system at IBM Research. short! Co-pilot: Yeah! And wide, too! thing about you that would surprise others. ������������ �� ������ ������������ �� ������ TC Do you develop software utilizing an EK I don’t drink caffeine. object oriented or component based TC What is your favorite all-time ������� ������������ �� ������ ������� ������������ �� ������ TopCoder problem? approach? Why? ������ ������ TC To challenge or not to challenge. :-) ������� ��������� ������� ��������� EK I use OOP (of course), but I do not � �� ��� � �� ��� use components. I don’t see why I ������� ������� ������� ������� ������� ������ need to use them.

bstanescu George Mason University Seed: 8 Seed: 15 University of Ulm AdrianKuegel

Bogdan Stanescu ������ ���������� ���������� ������ ���������� ���������� Adrian Kuegel Rockville, MD ������� ���� ������ ������� ���� ������ Ulm, Germany ������� ������ Current Rating: 2935 ���������� ����� � ���������� ����� � Current Rating: 2573 Current Ranking: 11 ���������� ��������� � ������ ���������� ��������� � ������� Current Ranking: 27 Rating Percentile: 99.65 Rating Percentile: 99.86 ��������� �� �������� ���� ������ ��������� �� �������� ���� ������ Number of Ratings: 58 Number of Ratings: 41 ������ ������ Highest Rating: 2943 ������������ �� ������������ � Highest Rating: 2573 Lowest Rating: 1800 ������� ������������ �� ������ ������� ������������ � ������ Lowest Rating: 1336 ������� ��������� ������ ������� ��������� ������ TC If you could choose to work for any TC Describe the most challenging system you TC What is most important to you in � �� ��� � �� ��� company in the world, which would have played a role in developing. a job (e.g., technology exposure, TC What is the last CD you listened to? it be and why? BS An prototype that ������� ������� ������ ������� ������� ������ recognition, benefits, salary)? AK Tatu (200 km/h in the wrong lane) BS My own company :) allows a user who has no training in AK For me, salary isn’t so important; Computer Science or Math to create a the working atmosphere and TC Reveal your most embarrassing or exciting TC Do you develop software utilizing an knowledge base (like the knowledge base ������� ����������� ���������� ������� ����������� ���������� recognition are more important. coding moment. object oriented or component based in an Expert System). It combines a variety AK Most embarrassing: Last year in Round approach? Why? of algorithms for learning with a methodol- ������� ���� ������ ������� ���� ������ TC Describe the most challenging 2, I had 3 almost working programs, but system you have played a role in I finished with a score of -50. I corrected BS Object oriented - yes. Component ogy that makes full use of the capabilities ���������� ����� �� ������ ���������� ����� �� ������ based - more or less. The project I of such a user (for instance, we assume developing. the last mistake in my program for the ������ ������ am currently working on uses a few that the user is able to understand ���������� ��������� �� ���������� ��������� �� AK During my internship at IBM, I hard problem in the last second and worked with 4 other students on a couldn’t submit it, and my program for the reusable components developed “beautified” logic expressions, but is not ��������� ��� �������� ���� ������ ��������� ��� �������� ���� ������ by others (such as an XML Pull capable to write them). prototype for a system that makes easy problem returned 0/2 instead of 0/1. ������ ������ Parser). Most of its “personal” code ������������ ��� ������������ �� speech recordings searchable with Most exciting: SRM 167; it was the first the database DB2. time I finished all 3 problems successfully. is loosely structured into compo- TC In your opinion, who is currently the most ������� ������������ ��� ������ ������� ������������ �� ������ nents but they are not completely influential person in technology? ������ ������ separable and reusable, since they BS Scott Adams, the creator of Dilbert. ������� ��������� ������� ��������� TC What is your favorite all-time TC What will you do with the money if you win were only written for this project. � �� ��� � �� ��� TopCoder problem? the grand prize in this tournament? ������� ������� ������ ������� ������� ������ AK RangeGame AK Buy a car.

6 Algorithm Competition Semifinalists Algorithm Competition Semifinalists 7 lars University of Waterloo Seed: 16 Seed: 46 Duke University mickle

Lars Hellsten ������ ���������� ���������� ������ ���������� ���������� Benjamin Mickle Waterloo, Canada ������� ���� ������ ������� ���� ������ Durham, NC ������ ������ Current Rating: 2747 ���������� ����� � ���������� ����� � Current Rating: 2036 Current Ranking: 15 ���������� ��������� � ������� ���������� ��������� � ������ Current Ranking: 135 Rating Percentile: 98.25 Rating Percentile: 99.81 ��������� �� �������� ���� ������ ��������� �� �������� ���� ������ Number of Ratings: 77 Number of Ratings: 81 ������ ������ Highest Rating: 2747 ������������ � ������������ �� Highest Rating: 2204 Lowest Rating: 1646 ������� ������������ � ������ ������� ������������ � ������ Lowest Rating: 837 ������� ��������� ������ ������� ��������� ������ TC What types of companies are you LH I have not participated. One of the reasons TC If you could choose to work for any � �� ��� � �� ��� most interested in working for is that I find design more interesting when company in the world, which would TC Which TopCoder member do you most (e.g., size, industry)? Why? the task is complex; an entire application ������� ������� ������ ������� ������� ������ it be and why? admire and why? LH I’d enjoy working at a smaller rather than a component, for instance. BM Pixar, because I like movies. BM dgarthur, because I know him, and he’s company where my work really Microsoft also seems nice. So does pretty cool. He’s also smarter than the makes a big difference, everybody TC What is your favorite all-time ������� ����������� ���������� ������� ����������� ���������� Google. It would depend on what average bear. knows everybody else, and there TopCoder problem? type of work they would let me do. isn’t a large bureaucratic hierarchy. LH There are many good ones. A few that ������� ���� ������ ������� ���� ������ TC Please describe a special talent you have TC Describe the most challenging (other than programming) or tell us some- come to mind are: Yarin’s TapeDeck ���������� ����� �� ������ ���������� ����� �� ������ TC If you could choose to work for any problem; Eeyore’s BinaryQuipu; and system you have played a role in thing about you that would surprise others. ������ ������ company in the world, which would SkewHeaps from TCO2003, which I ���������� ��������� �� ���������� ��������� �� developing. BM Many an individual has been stunned to BM I wrote an Othello program that had the point of temporary paralysis by the it be and why? think was written by vorthys. ��������� ��� �������� ���� ������ ��������� ��� �������� ���� ������ LH Sony Pictures, because I always good AI, and that was pretty hard at stacks of empty Coca-Cola cans sitting on ������ ������ wanted to be an action star. TC Which TopCoder member do you most ������������ ��� ������������ ��� the time. my desk. admire and why? ������� ������������ ��� ������ ������� ������������ ��� ������ TC Have you participated in TopCoder LH ZorbaTHut. He does so well without any TC What is your favorite all-time TC Tell us the best joke you know. ������ ������ Software component projects in a formal training in math or CS. ������� ��������� ������� ��������� TopCoder problem? BM “TV ads show you how detergents take design, development or reviewer � �� ��� � �� ��� BM I liked Yarin’s knapsack variant that out bloodstains. I think if you’ve got a role? If so, what did you think of ������� ������� ������ ������� ������� ������ involved merging the results of two bloodstained T-shirt, maybe laundry isn’t the experience? If not, what would sub-problems. your biggest problem.” - Jerry Seinfeld entice you to participate? Ruberik Queen’s University Seed: 38 Seed: 91 University of Waterloo RalphFurmaniak

Bartholomew Furrow ������ ���������� ���������� ������ ���������� ���������� Ralph Furmaniak Kingston, Canada ������� ���� ������ ������� ���� ������ London, Canada ������� ������� Current Rating: 2407 ���������� ����� � ���������� ����� � Current Rating: 2279 Current Ranking: 43 ���������� ��������� � ����� ���������� ��������� � ����� Current Ranking: 68 Rating Percentile: 99.12 Rating Percentile: 99.44 ��������� �� �������� ���� ������ ��������� �� �������� ���� ������ Number of Ratings: 31 Number of Ratings: 13 ������ ������ Highest Rating: 2407 ������������ � ������������ �� Highest Rating: 2279 Lowest Rating: 1549 ������� ������������ � ������ ������� ������������ � ������ Lowest Rating: 1645 ������� ��������� ������ ������� ��������� ������ TC Describe the most challenging TC What is the last CD you listened to? TC Describe the most challenging � �� ��� � �� ��� system you have played a role in BF “Couldn’t Have Said it Better” system you have played a role in developing. by Meat Loaf. ������� ������� ������ ������� ������� ������ developing. TC Please describe a special talent you have BF A piece of software to solve a RF During last summer, I worked with (other than programming) or tell us some- system of 1078 polynomials in 34 TC Tell us the best joke you know. a UWO mathematics professor thing about you that would surprise others. unknowns that couldn’t be solved BF Why do ducks have webbed feet? To ������� ����������� ���������� ������� ����������� ���������� (Stuart Rankin) in developing a RF Aside from hobbies such as martial arts by Maple or Mathematica. It used a stamp out fires. Why do elephants have visualization program and website, and bongo playing, my real passion is Rational class and Gaussian flat feet? To stamp out burning ducks. ������� ���� ������ ������� ���� ������ for the growing field of Knot Theory. math, and I have just been awarded the rank of Putnam Fellow. elimination. ���������� ����� �� ������ ���������� ����� � ������ TC Please describe a special talent you have TC What is your favorite all-time ������ ������ TC Which TopCoder member writes the (other than programming) or tell us some- ���������� ��������� �� ���������� ��������� � TopCoder problem? TC Which TopCoder member writes the most RF BinaryQuipu from SRM 175 (and elegant code during TopCoder most elegant code during TopCoder thing about you that would surprise others. ��������� �� �������� ���� ������ ��������� �� �������� ���� ������ competitions? BF It took me an hour to incorrectly memorize Snap) taught me to never explicitly competitions? ������ ������ BF John Dethridge, if by ‘elegant’ you 20 digits of e before I gave up. ������������ �� ������������ �� generate a graph if you can help it. RF The writer. mean ‘entirely illegible.’ Seriously, ������� ������������ �� ������ ������� ������������ �� ������ though, I do admire the brevity of TC What is the last CD you listened to? TC What would be your “Dream job”? ������ ������ his code -- although it’s horribly ������� ��������� ������� ��������� RF “The Power to Believe” by King RF Interesting, exciting, high-paid, leaving inelegant. I don’t really know of � �� ��� � �� ��� Crimson enough spare time. Is that so much to ask? anyone whose code I read and think ������� ������� ������ ������� ������� ������ “Wow, that’s gorgeous.”

8 Algorithm Competition Semifinalists Algorithm Competition Semifinalists 9 ALGORITHM COMPETITION02 SEMIFINAL WHAT I REALLY LEARNED FROM ROOM TOPCODER WHILE IN COLLEGE...

• To calculate the complexity of the algorithms that I use. – charleston reid • To type faster. – charleston • Memorization saves lives (and/or gets programs to run in under 8 seconds) – connect4 • Sometimes, it is much better to be lucky than talented. bladerunner – connect4 • Looking at other people’s code can teach you a lot of techniques (as well as make you kick yourself for not seeing something that simple....) – connect4 Jan_Kuipers • Dynamic programming & lots of fancy algorithms. – dark_lord • Bug tracing (even other people’s code) – dark_lord • Getting up early in the morning (3AM is insane - I’ll never aneubeck complain about 6AM ever again...) – dark_lord • How lousy I often perform in the middle of the night – dary • To pay close attention to details. – dary antimatter • Programming contests are really fun. – dgarthur • It is a small world, and the people who excel at one contest will excel at others. – dgarthur • There is always somebody better! – dgarthur Ryan • I learned that I am able to work efficiently at night. – Eryx • I learned that tomek is really good. – Eryx • Pay attention to detail while programming. – gepa skanthak • That the real world should have system tests. – gladius • That college courses should allow a challenge phase on tests or assignments. – gladius kalmakka

10 Algorithm Competition Semifinalists 11 reid Massachusetts Institute of Technology Seed: 2 Seed: 11 Utrecht University Jan_Kuipers

Reid Barton ������ ���������� ���������� ������ ���������� ���������� Jan Kuipers Arlington, MA ������� ���� ������ ������� ���� ������ Utrecht, Netherlands ������� ����� Current Rating: 3061 ���������� ����� � ���������� ����� � Current Rating: 2681 Current Ranking: 4 ���������� ��������� � ������ ���������� ��������� � ������� Current Ranking: 19 Rating Percentile: 99.75 Rating Percentile: 99.95 ��������� �� �������� ���� ������ ��������� �� �������� ���� ������ Number of Ratings: 43 Number of Ratings: 28 ������ ������ Highest Rating: 3210 ������������ �� ������������ �� Highest Rating: 2681 Lowest Rating: 1855 ������� ������������ � ������ ������� ������������ � ������ Lowest Rating: 1411 ������� ��������� ������ ������� ��������� ������ TC What is most important to you in socket programming to solving linear TC If you could choose to work for any � �� ��� � �� ��� a job (e.g., technology exposure, programming problems. company in the world, which would a living out of it... Organizing programming recognition, benefits, salary)? ������� ������� ������ ������� ������� ������ it be and why? contests is also big fun... I think my dream RB Freedom to work on projects I find TC Which TopCoder member writes the most JK Probably a university, but I don’t job would be a combination of these three interesting. elegant code during TopCoder know which. things. competitions? ������� ����������� ���������� ������� ����������� ���������� TC Do you develop software utilizing an RB I generally find tomek’s code particularly TC What is your favorite all-time TC Reveal your most embarrassing or object oriented or component based easy to read. That could be because his ������� ���� ������ ������� ���� ������ TopCoder problem? exciting coding moment. JK This year’s favorite is definitely JK Exciting: winning the Dutch Olympiad approach? Why? solutions are often similar to mine. ���������� ����� �� ������ ���������� ����� �� ������ RB I tend to write in a functional style “Counterfeit Coins” (SRM 185). without ever having participated in a ������ ������ because I find it offers the greatest TC Please describe a special talent you have ���������� ��������� �� ���������� ��������� � Unfortunately I didn’t participate in programming contest before. Embarrass- that SRM, but on the other hand I ing: Participating in the ACM Regional 5 expressive power for the kinds of (other than programming) or tell us some- ��������� ��� �������� ���� ������ ��������� �� �������� ���� ������ problems I want to solve. thing about you that would surprise others. doubt whether I would have solved times and never proceeding to the World ������ ������ RB I have studied piano for the past 15 years. ������������ ��� ������������ �� that problem. Finals. TC Describe the most challenging ������� ������������ ��� ������ ������� ������������ �� ������ system you have played a role in TC What is your favorite software TC What would be your “Dream job”? TC Please describe a special talent you have ������ ������ developing. development tool? ������� ��������� ������� ��������� JK Getting the chance to do challeng- (other than programming) or tell us some- RB I helped develop a system for RB The GNU Environment � �� ��� � �� ��� ing research in something that really thing about you that would surprise others. automatically measuring available ������� ������� ������ ������� ������� ������ interests me... Or participating in JK I’m also very good at physics and bandwidth in networks: the project programming contests every week represented the Netherlands during the involved everything from low-level and being so good, that I can make International Physics Olympiad. bladerunner National Taras Shevchenko University of Kiev Seed: 6 Seed: 14 Swiss Federal Institute of Technology aneubeck

Alexander Grushetsky ������ ���������� ���������� ������ ���������� ���������� Alexander Neubeck Kiev, Ukraine ������� ���� ������ ������� ���� ������ Zurich, Switzerland ������� ������ Current Rating: 2987 ���������� ����� � ���������� ����� � Current Rating: 2596 Current Ranking: 9 ���������� ��������� � ������ ���������� ��������� � ������� Current Ranking: 25 Rating Percentile: 99.68 Rating Percentile: 99.88 ��������� �� �������� ���� ������ ��������� �� �������� ���� ������ Number of Ratings: 47 Number of Ratings: 17 ������ ������ Highest Rating: 2987 ������������ �� ������������ �� Highest Rating: 2596 Lowest Rating: 1814 ������� ������������ �� ������� ������� ������������ � ������ Lowest Rating: 1807 ������� ��������� ������ ������� ��������� ������ TC Are you looking to get a full-time AG The complex software product for Mo- TC What types of companies are you � �� ��� � �� ��� job as a software developer in the torola: research and development of vector most interested in working for (e.g., next year? and raster algorithms (I am really proud of ������� ������� ������ ������� ������� ������ size, industry)? Why? TC Which TopCoder member do you most AG Yes. I complete my Master Degree some of them), VBA automation and COM AN I’m interested in augmented reality, admire and why? here in Ukraine in June, and I am programming and other assignments. computer graphics, robotics, and AN SnapDragon and tomek. tomek because of thinking about moving to the US ������� ����������� ���������� ������� ����������� ���������� computer vision. Therefore midsize his incredible steadiness and SnapDragon to work. TC Which TopCoder member writes the most or big companies, which have because of his elegant code. elegant code during TopCoder competi- ������� ���� ������ ������� ���� ������ knowledge in those topics and share this knowledge between the TC What are your favorite 1.) software TC What is most important to you in tions? ���������� ����� �� ������ ���������� ����� � ������ a job (e.g., technology exposure, AG SnapDragon. BTW, I like my code too. :-) teams are favored. development tools and 2.) software ������ ������ recognition, benefits, salary)? ���������� ��������� �� ���������� ��������� � design tools? TC Have you participated in TopCoder AN For programming I prefer xemacs and AG I like to create new things, have TC Reveal your most embarrassing or exciting ��������� ��� �������� ���� ������ ��������� �� �������� ���� ������ challenging tasks, and the freedom coding moment. Software component projects in a cmake, because it simply works and I’m ������ ������ to solve them, and when my results AG Embarrassing: when I spilt the coffee on ������������ ��� ������������ �� design, development or reviewer used to this editor. Maybe the next version role? If so, what did you think of of eclipse will be my favorite. can be estimated by their true my keyboard during my 3rd SRM after ������� ������������ ��� ������ ������� ������������ �� ������ worth. submitting the easy problem (the SRM the experience? If not, what would ������ ������ was over for me). ������� ��������� ������� ��������� entice you to participate? TC Describe the most challenging � �� ��� � �� ��� AN I haven’t participated because I system you have played a role in ������� ������� ������ ������� ������� ������ prefer to spend my spare time with developing. other hobbies like piano playing or table tennis.

12 Algorithm Competition Semifinalists Algorithm Competition Semifinalists 13 antimatter Massachusetts Institute of Technology Seed: 30 Seed: 51 University of British Columbia skanthak

Hubert Hwang ������ ���������� ���������� ������ ���������� ���������� Sebastian Kanthak Cambridge, MA ������� ���� ������ ������� ���� ������ Vancouver, Canada ������� ������ Current Rating: 2673 ���������� ����� � ���������� ����� � Current Rating: 2245 Current Ranking: 21 ���������� ��������� � ������� ���������� ��������� � ����� Current Ranking: 81 Rating Percentile: 98.95 Rating Percentile: 99.73 ��������� �� �������� ���� ������ ��������� �� �������� ���� ������ Number of Ratings: 85 Number of Ratings: 32 ������ ������ Highest Rating: 2714 ������������ �� ������������ � Highest Rating: 2245 Lowest Rating: 1268 ������� ������������ � ������ ������� ������������ � ������ Lowest Rating: 1662 ������� ��������� ������ ������� ��������� ������ TC Have you participated in TopCoder TC Please describe a special talent you have � �� ��� � �� ��� Software component projects in a (other than programming) or tell us some- TC If you could choose to work for any TC Reveal your most embarrassing or exciting design, development or reviewer thing about you that would surprise others. ������� ������� ������ ������� ������� ������ company in the world, which would coding moment. role? If so, what did you think of HH I play guitar, drums, and piano, and I also it be and why? SK Not understanding an easy problem the experience? If not, what would sing. SK Probably Sun or IBM, because both everybody else gets, because I’m too entice you to participate? ������� ����������� ���������� ������� ����������� ���������� are doing good research. excited at the start of the contest. HH No, not yet. I think it’s interesting, TC What is your favorite all-time TopCoder but I don’t have too much faith in my problem? ������� ���� ������ ������� ���� ������ TC What are your favorite 1.) software TC Please describe a special talent you have development tools and 2.) software (other than programming) or tell us some- ability to design and develop proj- HH I don’t think I have one however, there are ���������� ����� �� ������ ���������� ����� � ������ ects yet. I haven’t learned enough those that I have good memories about: design tools? thing about you that would surprise others. ������ ������ about design principles to this point. SlidingGame from SRM 133, because it ���������� ��������� �� ���������� ��������� � SK XEmacs and/or IntelliJ SK I like to play the clarinet. was the first Division I Hard I ever solved; ��������� ��� �������� ���� ������ ��������� �� �������� ���� ������ TC What are your favorite 1.) software Skyscraper from SRM 139, because that TC Which TopCoder member writes the TC Do you develop software utilizing an object ������ ������ development tools and 2.) software was the Hard problem in my only SRM ������������ ��� ������������ �� most elegant code during TopCoder oriented or component based approach? competitions? Why? design tools? win; ToyPatrol from SRM 78 because it ������� ������������ ��� ������ ������� ������������ �� ������ HH For personal projects, I’ve mostly was the Hard problem in my first SRM, SK I don’t know, but Eeyore’s write-ups SK Yeah, everybody does. Only in contests ������ ������ just used emacs and g++/jikes, period. ������� ��������� ������� ��������� in pseudo-python are pretty nice. there is no time for object orientation. nothing bigger. I suppose this will � �� ��� � �� ��� have to change if I ever develop ������� ������� ������ ������� ������� ������ anything large, but that hasn’t hap- pened yet. Ryan University of Texas at Austin Seed: 37 Seed: 83 University of Oslo kalmakka

Ryan Pai ������ ���������� ���������� ������ ���������� ���������� David Narum Austin, TX ������� ���� ������ ������� ���� ������ Lovenstad, Norway ������� ������� Current Rating: 2515 ���������� ����� � ���������� ����� � Current Rating: 2112 Current Ranking: 32 ���������� ��������� � ������� ���������� ��������� � ������� Current Ranking: 109 Rating Percentile: 98.59 Rating Percentile: 99.57 ��������� �� �������� ���� ������ ��������� �� �������� ���� ������ Number of Ratings: 74 Number of Ratings: 15 ������ ������ Highest Rating: 2515 ������������ �� ������������ � Highest Rating: 2112 Lowest Rating: 1354 ������� ������������ � ������ ������� ������������ � ������ Lowest Rating: 1483 ������� ��������� ������ ������� ��������� ������ TC What types of companies are you Software component projects in a design, � �� ��� � �� ��� most interested in working for (e.g., development or reviewer role? If so, what TC If you could choose to work for any TC Reveal your most embarrassing or exciting size, industry)? Why? did you think of the experience? If not, ������� ������� ������ ������� ������� ������ company in the world, which would coding moment. RP The perfect work place for me what would entice you to participate? it be and why? DN The most embarrassing must be when I would have the right company RP I have not. I would be more likely to com- DN Blizzard. I would be assisting in realized during an SRM that I had used culture. A place that’s laid back; one pete if there was an analog to the practice ������� ����������� ���������� ������� ����������� ���������� making some of the most enjoyed int’s where I needed long long’s. So I fixed that has freedom to explore ideas rooms of the algorithm competition. games in the world, which cannot it and resubmitted, but forgot to press without having to continually “go by ������� ���� ������ ������� ���� ������ be a bad thing. recompile, so I submitted exactly the same as before. the book.” TC Which TopCoder member do you most ���������� ����� � ������ ���������� ����� � ����� admire and why? TC Do you develop software utilizing an ������ ������ TC What is most important to you in RP I most admire radeye. He’s been around ���������� ��������� �� ���������� ��������� � object oriented or component based TC Please describe a special talent you have approach? Why? (other than programming) or tell us some- a job (e.g., technology exposure, long enough and performed well enough ��������� ��� �������� ���� ������ ��������� �� �������� ���� ������ recognition, benefits, salary)? to earn my respect. But above that he also DN Currently object oriented. I feel that thing about you that would surprise others. ������ ������ RP To me, the most important part of a is a master of multiple subjects and sup- ������������ ��� ������������ �� it allows for easier handling. DN I play the bass guitar, but claiming to have any talent is perhaps pushing it. job is the quality of my colleagues. ports competitions. ������� ������������ ��� ������ ������� ������������ �� ������ The perfect environment would TC Which TopCoder member writes the ������ ������ have coworkers competent enough TC In your opinion, who is currently the most ������� ��������� ������� ��������� most elegant code during TopCoder TC Describe the most challenging system you to understand me but also not so influential person in technology? � �� ��� � �� ��� competitions? have played a role in developing. esoteric as to go over my head. RP As sad as I am to admit it, I would have to ������� ������� ������ ������� ������� ������ DN dark_lord. That’s why I’ve mimicked DN An eventreporter system for the say Bill Gates. He has the resources to put his style :) production of instruments for Norwegian TC Have you participated in TopCoder toward any good idea that he sees. Electro Optics.

14 Algorithm Competition Semifinalists Algorithm Competition Semifinalists 15 Make Competition Work For You

Employment Services Events and Sponsorship Application Development Component Catalogs

Whether you’re evaluating your in-house staff or those of an Whether your company seeks to identify and recruit the best TopCoder Software is the first company to bring competition TopCoder has created catalogs of infrastructure components in outsourcer, only TopCoder, with its member base of thousands of talent, develop and recognize internal employees, reward to the process of software development. TopCoder Software both .NET and Java to serve as the building blocks of software competing developers, can give you enough of a statistical base individuals attending a developer event or simply to sell leverages several ingredients to deliver high quality software applications. TopCoder Component Catalog subscriptions can to get a handle on how good a developer really is. Only TopCoder technology products and services, TopCoder can provide applications at a low cost: take the load off. Think of it as a huge common code repository for has a large enough problem set and technology base to be able expertise and experience in executing online and onsite events. • The world-renowned COMPETITION PLATFORM of which you’re not footing the entire bill. to determine specific skill in a specific area. Only TopCoder can TopCoder has the ability to customize a competition to help TopCoder affords us the highest quality development • The world-renowned TOPCODER MEMBER BASE of give you access to or help you test hundreds or thousands of our clients reach their goals and objectives. We have executed resources. more than 38,000 great developers is utilized to build chunks

candidates at once. hundreds of competitions and are uniquely qualified to handle the • Market-driven application DEVELOPMENT METHODOLOGY of code that form the basis of applications. There are a variety of ways to work with TopCoder for recruiting: necessary details to effectively carry out a successful competition, manages the application development process for the benefit • TopCoder components are PEER-REVIEWED and including: • SPONSORING TOPCODER TOURNAMENTS gives of our customers. competition tested using TopCoder Software’s proprietary you access to thousands of developers (both collegiate and • TopCoder DEVELOPS ALL ASPECTS OF EACH EVENT, • Applications are broken into COMPONENTS that are competition based development methodology. This approach professional) who compete every year. including rules, regulations, eligibility, registration, event developed in parallel. ensures high quality through the use of extensive functional • PRIVATE LABEL EVENTS let you target a geography, website, competition manual, practice rooms, problem and performance testing. • RE-USABLE SOFTWARE components in the TopCoder specific technology or specific domain knowledge (retail, writing, testing, and coordination. Software catalogs drive down cost while increasing the level • Documentation of these components is SUPERLATIVE AND biology, financial services – anything your company works • TopCoder PROVIDES SUPPORT and administration of quality and speed of delivery to levels not attainable under CONSISTENT, ensuring that developers using these in). These events can bring anywhere from tens to thousands during events for registration, practice rooms, competition any other model. components know exactly what they’re getting and exactly of competitors right to your doorstep. You’ll know right away arena, chat sessions, FAQs, prize money administration and how they should be used. who’s good and who’s not. distribution. • TopCoder Software REVIEW BOARDS make sure every piece of code is tested and reviewed for adherence to • Documentation adheres to all of the most RECOGNIZED • TOPCODER TESTING is a tool that allows you to test your • TopCoder can market events to an international member standards, readability and maintainability. DESIGN STANDARDS, including UML diagrams such as normal flow of candidates for development proficiency. This base of more than 38,000 DEVELOPERS. use cases, class diagrams, sequence diagrams, JavaDocs • EXACTING STANDARDS are enforced when developing tool can be modified by problem and technology content to • TopCoder provides RESULTS VERIFICATION and and much more. TopCoder Software components under our competitive focus in on exactly what you are looking for. dissemination after each event, as well as completed model to make sure they are usable across a wide range of Choose a subscription level that suits your needs: per developer • TOPCODER JOB POSTINGS get your job opportunities software design documents, working components and code software projects. or enterprise level, for one catalog or all. No matter what you straight in front of the TopCoder member base. submissions. choose, you will be taking a large step toward making your TopCoder Software is with you every step of the way. Right Whichever offering you choose, you’ll be sending a strong signal • TopCoder provides FLEXIBLE COMPETITION shop more productive, quality oriented and, perhaps, quite a bit from the start we assign a project manager to work with you to to your candidates: you’re serious about software development and PLATFORMS such as algorithm, software component relieved. specify requirements, make sure the process is smooth and, most you’re only looking to hire the best. design, and software component development. importantly, provide you a window on the actual development process. Talk about flipping the balance of power. Instead of being at the mercy of some consultant, offshore or outsourcing firm, you’re in control. You’re driving the bus. Finally.

Evaluating the problem solving skills and technical abilities of our members Member Growth (April 2001 - December 2003)

1000

950

900

850

800

750 35000 700

650 Professionals 30000 600 Overall Average Rating: 994.08 550 25000 Students 500 450 20000 400

350 15000 Total Members: 35,179* 300 Professionals: 16,168* 250 10000 Number of Members of Number 200 Students: 19,011* 150 5000 100 *As of December 31, 2003 50 0 Apr'01 Jun Aug Oct Dec Feb'02 Apr Jun Aug Oct Dec Feb'03 Apr Jun Aug Oct Dec 0 0 0 0 0 0 0 0 00 00 0 0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 7 8 90 70 000 1 -5 -6 -7 -9 000 1 40 50 6 1-200 1-3 1-4 1 1-8 1 -1 -1 -1 0-1 0 0 1-1 1-12001-13 1-1 1-1 1-1 1-1 1 1-200 1-21 1-22 1-23 1-24 1-25 1-26 1-2 1-28 1-29 1-3 1-3 1-3200 4 501 601 7 80 0 0 0 0 0 0 0 0 0 0 10 20 30 901 601 7 80 00 10 11 120 13 140 150 1 1 1 190 200 21 220 23 240 25 26 270 28 29 3 310 Rating WWW.TOPCODER.COM ALGORITHM COMPETITION03 SEMIFINAL WHAT I REALLY LEARNED FROM ROOM TOPCODER WHILE IN COLLEGE...

• That programming at 3 o’clock AM is far more difficult than doing it during the day. – Jan_Kuipers John Dethridge • That although I’m probably the best coder at my university, there are people who are *MUCH* better than me. – Jan_Kuipers

• That working under so much time pressure is really difficult. ZorbaTHut – Jan_Kuipers • That just knowing high-level descriptions of algorithms isn’t enough; it’s good to be able to actually sit down and code them up correctly and quickly. – John Dethridge dary • That your professors may be knowledgeable, but often you can code much better and faster than they can. – John Dethridge • ... press ‘compile’ before ‘submit’ – kalmakka tjq • Introducing yourself by your TC handle at parties usually attracts strange looks. – lars • It is possible to write programs that run longer than 8 seconds. – lars grotmol • Yelling out “admins” to ask a question during an exam is not a good idea. – lars • I realized the difference between a program and a project after developing components at TopCoder. – loveislife haha • A passion in everything. I have seen it. Be it coding/ challenging/results. TopCoder generates a passion among everyone. – loveislife • I’m not good at counting (0,1,...,5 are 6 numbers). – mickle petko • I have dyslexic tendencies under stress. – mickle • Red Bull is no substitute for practice. – mickle

dark_lord

18 Algorithm Competition Semifinalists 19 John Dethridge Melbourne University Seed: 3 Seed: 12 Royal Institute of Technology dary

John Dethridge ������ ���������� ���������� ������ ���������� ���������� David Rydh Glen Iris, Australia ������� ���� ������ ������� ���� ������ Göteborg, Sweden ������� ����� Current Rating: 3114 ���������� ����� � ���������� ����� � Current Rating: 2537 Current Ranking: 3 ���������� ��������� � ������ ���������� ��������� � ������� Current Ranking: 30 Rating Percentile: 99.61 Rating Percentile: 99.96 ��������� �� �������� ���� ������ ��������� �� �������� ���� ������ Number of Ratings: 69 Number of Ratings: 15 ������ ������ Highest Rating: 3337 ������������ �� ������������ �� Highest Rating: 2662 Lowest Rating: 1908 ������� ������������ �� ������ ������� ������������ � ������ Lowest Rating: 1857 ������� ��������� ������ ������� ��������� ������ TC Describe the most challenging TC Which TopCoder member do you most TC Reveal your most embarrassing or � �� ��� � �� ��� system you have played a role in admire and why? exciting coding moment. TC Describe the most challenging system you developing. JD Reid Barton. He has an impressive col- ������� ������� ������ ������� ������� ������ DR When I scored 0 points the first day have played a role in developing. JD Probably the code for my honors lection of mathematics and informatics in IOI’97, Cape Town. DR The most challenging programming thesis or my PhD thesis. olympiad gold medals from when he was I’ve done was probably done in “the old at school. ������� ����������� ���������� ������� ����������� ���������� TC Please describe a special talent you ages” when writing all, or much code, in TC What is your favorite all-time have (other than programming) or assembly language and tweaking every TopCoder problem? TC Please describe a special talent you have ������� ���� ������ ������� ���� ������ tell us something about you that instruction. Mostly graphical demos and would surprise others. screensavers, but also some minor games. JD Probably Meteor. It’s a shame (other than programming) or tell us some- ���������� ����� �� ������ ���������� ����� � ������ that round had to be cancelled. thing about you that would surprise others. DR I can juggle with 5 balls. ������ ������� Generally, my favorite writers are JD I’m one of the best laser tag players in ���������� ��������� �� ���������� ��������� � TC In your opinion, who is currently the most TC What is most important to you in influential person in technology? Lars Backstrom, Brett Bernstein, Australia! ��������� ��� �������� ���� ������ ��������� �� �������� ���� ������ Jimmy Mårdell, axchma, and Nathan a job (e.g., technology exposure, DR Steve Jobs ������ ������ Bronson. I’ve probably missed some TC What is the last CD you listened to? ������������ ��� ������������ �� recognition, benefits, salary)? DR An interesting and meaningful job, other good writers too. JD “Use Your Illusion II” by Guns ‘n’ Roses. ������� ������������ ��� ������ ������� ������������ �� ������ combined with a good environ- ������� ��������� ������ ������� ��������� ������ ment, e.g., competent co-workers, � �� ��� � �� ��� etc. Things such as technology ������� ������� ������ ������� ������� ������ exposure, recognition, benefits and salary are not so important.

ZorbaTHut Stony Brook University Seed: 4 Seed: 13 Hong Kong University of Science and Technology tjq

Ben Wilhelm ������ ���������� ���������� ������ ���������� ���������� Jiqing Tang Seattle, WA ������� ���� ������ ������� ���� ������ Hong Kong ������� ������ Current Rating: 3020 ���������� ����� � ���������� ����� � Current Rating: 2462 Current Ranking: 6 ���������� ��������� � ������ ���������� ��������� � ����� Current Ranking: 36 Rating Percentile: 99.53 Rating Percentile: 99.92 ��������� �� �������� ���� ������ ��������� �� �������� ���� ������ Number of Ratings: 131 Number of Ratings: 77 ������ ������ Highest Rating: 3198 ������������ �� ������������ �� Highest Rating: 2888 Lowest Rating: 840 ������� ������������ �� ������ ������� ������������ � ������ Lowest Rating: 1438 ������� ��������� ������ ������� ��������� ������ TC If you could choose to work for any BW I have no idea. I tend not to track single � �� ��� � �� ��� company in the world, which would people - generally I’ve found major TC What is most important to you in TC Which TopCoder member do you most it be and why? changes in technology are the result of ������� ������� ������� ������� ������� ������ a job (e.g., technology exposure, admire and why? BW My own. :) I want to make games, hundreds of people, and the “influential” recognition, benefits, salary)? JT Yarin, he is usually the right person to ask and I want to make the games *I* people are just the ones who are good at JT The satisfaction of achievement questions of. want. So, I want to own my own figuring out where it’s going and ������� ����������� ���������� ������� ����������� ���������� from the job. company. pretending they told it to go that way. TC Reveal your most embarrassing or exciting ������� ���� ������ ������� ���� ������ TC Describe the most challenging coding moment. system you have played a role in JT Most exciting: TCO2003 Semifinal room 4, TC What are your favorite 1.) software TC Which TopCoder member writes the most ���������� ����� �� ������ ���������� ����� �� ������ development tools and 2.) software elegant code during TopCoder developing. I love lbackstrom’s writing a lot. Most em- ������ ������ design tools? competitions? ���������� ��������� �� ���������� ��������� �� JT A voice recording and replay barrassing: I found that a bug in my code system, using 80C51. crashed the whole app when I was helping BW Lately, the only major dev tool I’ve BW *falls over laughing* I don’t know, but I ��������� ��� �������� ���� ������ ��������� ��� �������� ���� ������ been using is GNU Make. I got fed don’t imagine they’re ranked very high. others to program. ������ ������ up with MSVC’s project manage- ������������ ��� ������������ ��� TC In your opinion, who is currently the most influential person in technol- TC Please describe a special talent you have ment. The only software design TC Please describe a special talent you have ������� ������������ ��� ������ ������� ������������ ��� ������ tools I use are my brain, Notepad, (other than programming) or tell us some- ogy? (other than programming) or tell us some- ������ ������ and occasionally - if it’s really really thing about you that would surprise others. ������� ��������� ������� ��������� JT Bill Gates thing about you that would surprise others. tough - paper. BW Coding’s just a hobby for me - it’s not � �� ��� � �� ��� JT I am good at playing the game “King of the really my focus, just a handy tool. ������� ������� ������ ������� ������� ������ Fighters 97”. TC In your opinion, who is currently the most influential person in technology?

20 Algorithm Competition Semifinalists Algorithm Competition Semifinalists 21 grotmol Norwegian University of Science and Technology Seed: 31 Seed: 60 Sofia University petko

Oeyvind Grotmol ������ ���������� ���������� ������ ���������� ���������� Petko Minkov Valencia, Spain ������� ���� ������ ������� ���� ������ Sofia, Bulgaria ������� ������� Current Rating: 2614 ���������� ����� � ���������� ����� � Current Rating: 2133 Current Ranking: 24 ���������� ��������� � ������� ���������� ��������� � ������ Current Ranking: 104 Rating Percentile: 98.65 Rating Percentile: 99.69 ��������� �� �������� ���� ������ ��������� �� �������� ���� ������ Number of Ratings: 22 Number of Ratings: 17 ������ ������ Highest Rating: 2614 ������������ �� ������������ � Highest Rating: 2168 Lowest Rating: 1293 ������� ������������ �� ������� ������� ������������ � ������ Lowest Rating: 1690 TC If you could choose to work for any task is complicated because of the scarce ������� ��������� ������ ������� ��������� ������ TC company in the world, which would computing resources available. What is most important to you in � �� ��� � �� ��� tomek, and having inhuman solving speed. it be and why? a job (e.g., technology exposure, ������� ������� ������� ������� ������� ������ Also radeye and snewman, because OG I have not really decided that yet, TC Which TopCoder member do you most recognition, benefits, salary)? PM they’re far from their programming contest but if I were to choose now, I would admire and why? Challenge, fun, variety, company years, and are still very good. Anyway, I say NVIDIA since the graphics OG Reid Barton for his four gold medals from culture, colleagues, technology don’t feel like I admire anyone, I just think processor market is where raw the International Mathematical Olympiad. exposure. ������� ����������� ���������� ������� ����������� ���������� that some coders here are definitely the performance matters most. There I participated myself three of those years, ������� ���� ������ ������� ���� ������ TC world’s best. I could really make a difference by so I know that the problems are a lot Have you participated in TopCoder Software component projects in a using my talents to boost transistor harder than programming tasks. ���������� ����� � ������� ���������� ����� � ������ TC What would be your “Dream job”? utilization to the maximum. design, development or reviewer ���������� ��������� � ������ ���������� ��������� �� ������ PM Solving contest problems and being paid TC Reveal your most embarrassing or exciting role? If so, what did you think of the experience? If not, what would crazy amounts of money for that! TC Describe the most challenging coding moment. ��������� �� �������� ���� ������ ��������� �� �������� ���� ������ system you have played a role in OG In the last TCCC I also reached the fourth entice you to participate? ������������ �� ������ ������������ �� ������ PM TC What are your favorite 1.) software de- developing. round and wanted to go to the finals. I’ve participated and I think it’s great. I’ve learned new things and in the velopment tools and 2.) software design OG The most challenging system I So I played high and attacked the hard ������� ������������ �� ������ ������� ������������ �� ������ tools? have developed myself is perhaps problem, but did not finish it on time. future I plan to participate again. I ������� ��������� ������ ������� ��������� ������ PM VS.NET - I’ve really liked it ever since I a frequency hopping protocol and Afterwards I found out that only one had find it quite a satisfying experience. � �� ��� � �� ��� switched from using RHIDE/gpp/Borland software for Chipcon CC1010, solved the hard problem, I could easily TC C++ for DOS. I am looking forward to an integrated 300-1000 MHz RF have solved the other two problems and ������� ������� ������ ������� ������� ������ Which TopCoder member do you seeing Whidbey, MS promises some nice transceiver and microcontroller. The a high score on the easy plus a challenge most admire and why? PM features in it. would have been sufficient to advance. SnapDragon, being older than haha University of Illinois at Urbana - Champaign Seed: 33 Seed: 80 University of Oslo dark_lord

Zheng Shao ������ ���������� ���������� ������ ���������� ���������� Geir Engdahl Urbana, IL ������� ���� ������ ������� ���� ������ Slependen, Norway ������� ������� Current Rating: 2638 ���������� ����� � ���������� ����� � Current Rating: 2055 Current Ranking: 22 ���������� ��������� � ������� ���������� ��������� � ������� Current Ranking: 128 Rating Percentile: 98.34 Rating Percentile: 99.72 ��������� �� �������� ���� ������ ��������� �� �������� ���� ������ Number of Ratings: 46 Number of Ratings: 69 ������ ������ Highest Rating: 2638 ������������ �� ������������ � Highest Rating: 2055 Lowest Rating: 1559 ������� ������������ �� ������� ������� ������������ � ������� Lowest Rating: 1036 ������� ��������� ������ ������� ��������� ������ given score could be achieved using the TC What types of companies are you TC Reveal your most embarrassing or exciting NFL rules. I remember using four nested � �� ��� � �� ��� TC Describe the most challenging most interested in working for (e.g., coding moment. system you have played a role in for-loops for this, but then I had a look at size, industry)? Why? ZS Embarrassing: One of my bugs kept my ������� ������� ������ ������� ������� ������ developing. John Dethridge’s code, which achieved it ZS Information retrieval and data teammates debugging for more than 3 GE Multris, an online multiplayer Tetris- with only one loop! I thought it was impos- mining. Like search engine, hours. I thought it was their mistake, not like game. This system involves a C sible, but pondering his code thoroughly, web-based application, bioinformat- mine. ������� ����������� ���������� ������� ����������� ���������� program running as a server, a Java I had an AHA! experience and began to ics and so on. Because my area Exciting: My first VB program - a little applet with the game logic and a understand DP. Now if only John D had is data mining and I want to find game magically runs without compiling ������� ���� ������ ������� ���� ������ CGI-script for high scores. continued to write code in an understand- some exciting work that might help errors, in the summer just before high ���������� ����� �� ������ ���������� ����� �� ������ able fashion, imagine all the insights I everyone’s everyday life. school. TC What are your favorite 1.) software could have had... ������ ������ ���������� ��������� �� ���������� ��������� �� development tools and 2.) software TC In your opinion, who is currently the TC Which TopCoder member writes the most ��������� ��� �������� ���� ������ ��������� ��� �������� ���� ������ design tools? TC Which TopCoder member do you most most influential person in elegant code during TopCoder GE 1) Emacs ;) 2) I’ve only used Posei- admire and why? ������ ������ technology? competitions? ������������ ��� ������������ ��� don for UML, but it is rather nice! GE Pops has been active in the TC commu- ZS Bill Gates. With money, he can ZS SnapDragon ������� ������������ �� ������ ������� ������������ �� ������ nity for as long as I can remember, and develop whatever he wants. TC What is your favorite all-time has made several plugins, written great ������� ��������� ������ ������� ��������� ������ TC Which TopCoder member do you most TopCoder problem? features, made lots of software for TCS, TC What is the last CD you listened to? admire and why? � �� ��� � �� ��� GE NFL. I can’t remember from which and is a really active (THE most active?) ZS Together (By S.H.E, from Taiwan) ZS tomek - almost always the No.1 player. ������� ������� ������ ������� ������� ������ SRM, but I believe it was sometime round table poster. In particular, he started Fast and accurate. in spring 2002. The problem was the thread I’ve enjoyed reading most ‘You to calculate in how many ways a know you’re a TopCoder when...’ 22 Algorithm Competition Semifinalists Algorithm Competition Semifinalists 23 COMPONENT COMPETITION

WHAT I REALLY LEARNED FROM DESIGN TOPCODER WHILE IN COLLEGE... adic

• That sometimes a step back still means evolution as long as Tomson you don’t give up. – MPhk • That you are always competing with yourself; the other competitors are just intermediate levels that you need to outrun. – Mphk MPhk • Unless you are named after a flower, there is always someone to look up to and learn from. – RalphFurmaniak • Don’t challenge programs written in languages you don’t know. – reid Kiev Technological aksonov • I understand why I need to comment my code. – roma College • Never assume an assignment is more important than an SRM. – Ruberik • Three great + three terrible is better than three good performances. – Ruberik DEVELOPMENT • That DP can’t solve all the world’s problems, but it comes pretty close. – Ryan roma • The true meaning of the quote “When in doubt, use brute force.” – Ken Thompson – Ryan • How to set my biological clock. – tomek Indian Institute • To code real fast. – tomek of Technology loveislife • Insights for software design. – Tomson Bombay • You meet so many excellent programmers and designers from all over the world. – Tomson • Simplify, simplify, simplify. Or, alternatively, just simplify. (It’s gladius simpler that way.) – ZorbaTHut

UiB preben

24 Component Competition Finalists 25 adic Babes-Bolyai University Seed: 2 Seed: 4 Babes-Bolyai University MPhk

Adrian Nicolae Carcu ������ ���������� ���������� ������ ���������� ���������� Mihai Pasca

Bistrita, Romania ����� ��� ������� ������ ����� ��� ������� ������ Bristrita, Romania Algorithm Rating: 2294 ����������� ����� � ������ ����������� ����� � ������ Algorithm Rating: 1158 Design Rating: 1690 ����� ���� ������� ������ ����� ���� ������� ������ Design Rating: 1353 Development Rating: 1819 Development Rating: N/A ����������� ����� � ������ ����������� ����� � ������ Competition Earnings: $3,735.10 � �� ��� � �� ��� Competition Earnings: $630.00 ����� ������������ � ����� ������������ � ����� ����� � ����� ����� �

TC What types of companies are you TC In your opinion, who is currently the most TC What types of companies are you most interested in working for (e.g., influential person in technology? most interested in working for (e.g., experience? If not, what would entice you size, industry)? Why? AC I think some companies can be considered size, industry)? Why? to participate? AC I’d like to make software for soft- influential, not individuals. Sun and Micro- MP I would like to work in companies MP I participate in TopCoder Software ware development (programming soft have an important role because of the involved in research because I component projects as a designer and re- tools, IDEs, compilers, UML tools). Java vs. .NET battle. ������� ����������� ���������� ������� ����������� ���������� find this best suits my innovative viewer. TopCoder Software is a continuous spirit - always in search of new and competition, always exposing competitors TC Do you develop software utilizing an TC Please describe a special talent you have ����� ��� ������� ������ ����� ��� ������� ������ improved ways of doing things. to new and challenging tasks; a competi- object oriented or component based (other than programming) or tell us some- tion in which recognition of the effort and ����������� ����� � ������ ����������� ����� � ������ approach? Why? thing about you that would surprise others. TC If you could choose to work for any appreciation of the result plays a central AC Yes, object oriented, because I AC I like riding bicycles. I like to make one-day ����� ���� ������� ������ ����� ���� ������� ������ company in the world, which would role. I like the experience so much that I consider it to be the best paradigm tours with my bike outside my town. So it be and why? would never want to be an employee of ����������� ����� �� ������ ����������� ����� � ������ at this moment. far the greatest distance I’ve been able to MP I would love to work for IBM or TopCoder and lose eligibility for submitting � �� ��� � �� ��� cover in one day has been 180Km (111.6 ����� ������������ �� ����� ������������ � Google, because they represent, component solutions or reviewing them. TC Describe the most challenging miles). in my opinion, the most innovative ����� ����� �� ����� ����� � system you have played a role in companies in the world. TC Which TopCoder member do you most developing. admire and why? AC An OCL compiler and evaluator (a TC Have you participated in TopCoder MP I believe all TopCoder members deserve to query language for getting informa- Software component projects in a be admired for competing and staying mo- tion out of UML models). design, development or reviewer tivated to go beyond their own limitations. role? If so, what did you think of the

Tomson Shanghai Jiao Tong University Seed: 3 Seed: 1 Kiev Technological College aksonov

Changxi Zheng ������ ���������� ���������� ������ ���������� ���������� Pavlo Aksonov

Shanghai, China ����� ��� ������� ������ ����� ��� ������� ������ Kiev, Ukraine Algorithm Rating: 1653 ����������� ����� � ������ ����������� ����� � ������ Algorithm Rating: 1636 Design Rating: 1542 ����� ���� ������� ������ ����� ���� ������� ������ Design Rating: 1384 Development Rating: 832 Development Rating: 1626 ����������� ����� � ������ ����������� ����� � ������ Competition Earnings: $1,408.00 � �� ��� � �� ��� Competition Earnings: $8,812.55 ����� ������������ � ����� ������������ � ����� ����� � ����� ����� �

TC If you could choose to work for any I could see the design, the code from all TC If you could choose to work for any company in the world, which would over the world with different insights, company in the world, which would AK 1) .NET Visual Studio 2) Poseidon, it be and why? different styles, and different patterns. It’s it be and why? Rational Rose CZ If I could be so lucky :), I’d choose an exciting experience. AK Microsoft or Sun, because they are IBM, I think. That’s because not leaders of software technologies TC What would be your “Dream job”? only is IBM the IT company with the TC What are your favorite 1.) software de- ������� ����������� ���������� ������� ����������� ���������� (.NET, J2EE). AK Primary system architect in a big hi-tech most strength in the world, but IBM velopment tools and 2.) software design company also always stands on the forefront tools? ����� ��� ������� ������ ����� ��� ������� ������ TC Have you participated in TopCoder of computer science, from hardware CZ In Java, I prefer Intellij. In C#, I prefer the Software component projects in a TC Please describe a special talent you have ����������� ����� � ������ ����������� ����� � ������ to software, from computer chip to Microsoft Visual Studio. In C++, I like gcc. design, development or reviewer (other than programming) or tell us some- new development tools, etc. And the design tool: Rational Rose is very ����� ���� ������� ������ ����� ���� ������� ������ role? If so, what did you think of thing about you that would surprise others. convenient. the experience? If not, what would AK I like to photograph, paint and draw. Cur- ����������� ����� � ������ ����������� ����� �� ������ TC Have you participated in TopCoder entice you to participate? rently I’m studying painting and drawing. � �� ��� � �� ��� Software component projects in a TC Please describe a special talent you have ����� ������������ � ����� ������������ �� AK I participated in a design, develop- They’re great hobbies that allow me to design, development or reviewer (other than programming) or tell us some- ment and reviewer role. It provides totally relax. ����� ����� � ����� ����� �� role? If so, what did you think of thing about you that would surprise others. a really great experience in the the experience? If not, what would CZ I think I’ve talent in some sports, especially software development process. entice you to participate? fishing and billiards. There are lakes and CZ Yes, I have participated in design, rivers in my campus. Every time I go to fish, TC What are your favorite 1.) software development and review. I learned I always get a fish. :) development tools and 2.) software a lot from this work. For example, design tools?

26 Component Competition Finalists - Design Component Competition Finalists - Design 27 roma National Taras Shevchenko University of Kiev Seed: 1 Seed: 4 Queen’s University gladius

Roman Koshlyak ������ ���������� ���������� ������ ���������� ���������� Gary Linscott

Kiev, Ukraine ����� ��� ������� ������ ����� ��� ������� ������ Nepean, Canada Algorithm Rating: 1646 ����������� ����� � ������ ����������� ����� � ������ Algorithm Rating: 1797 Design Rating: N/A ����� ���� ������� ������ ����� ���� ������� ������ Design Rating: N/A Development Rating: 997 Development Rating: 714 ����������� ����� � ������ ����������� ����� � ������ Competition Earnings: $144.00 � �� ��� � �� ��� Competition Earnings: $1,296.00 ����� ������������ � ����� ������������ � ����� ����� � ����� ����� �

TC If you could choose to work for any RK 1) Intellij IDEA – the best. 2) I have only company in the world, which would worked with Poseidon, but it works so TC If you could choose to work for any TC What would be your “Dream job”? it be and why? slowly, it cannot be the best :) company in the world, which would GL Playing tennis professionally. RK IBM it be and why? TC Which TopCoder member do you most GL Currently, Microsoft, as they have TC Tell us the best joke you know. TC Have you participated in TopCoder admire and why? ������� ����������� ���������� ������� ����������� ���������� an amazing work environment. All GL How many programmers does it take to Software component projects in a RK bladerunner. I know him - we were on the of the people there know how to do change a light bulb? One, but it will take design, development or reviewer same ACM team. He is my idle. ����� ��� ������� ������ ����� ��� ������� ������ their jobs exceptionally well. him a few weeks, and when it is done the role? If so, what did you think of electrical system will not work any more. ����������� ����� � ������ ����������� ����� � ������ the experience? If not, what would TC What will you do with the money if you win TC Describe the most challenging entice you to participate? the grand prize in this tournament? ����� ���� ������� ������ ����� ���� ������� ������ system you have played a role in TC What is the last CD you listened to? RK I have written some TopCoder RK I will try to create my own software developing. GL The Tragically Hip - In Violet Light. ����������� ����� � ������ ����������� ����� � ������ software component projects in a company, where I will employ students. GL A high performance game engine � �� ��� � �� ��� development role. I think that this Every day, I see many talented people at ����� ������������ � ����� ������������ � for the Gameboy Advance, along is very good experience, because my university who, on one hand want to with the toolset to support it on the ����� ����� � ����� ����� � now I know that I can do something work, but on the other hand, cannot work PC side. useful. This is not only for fun. full-time as is usually required in Ukraine.

TC What are your favorite 1.) software TC What would be your “Dream job”? development tools and 2.) software RK I want to be a businessman, maybe a political design tools? figure. I know I cannot be a famous soccer player. loveislife Indian Institute of Technology - Bombay Seed: 2 Seed: 3 University of Bergen preben

Harsh Jain ������ ���������� ���������� ������ ���������� ���������� Preben Solheim

Mumbai, India ����� ��� ������� ������ ����� ��� ������� ������ Bergen, Norway Algorithm Rating: 981 ����������� ����� � ������ ����������� ����� � ������ Algorithm Rating: 814 Design Rating: N/A ����� ���� ������� ������ ����� ���� ������� ������ Design Rating: N/A Development Rating: 853 Development Rating: 819 ����������� ����� � ������ ����������� ����� � ������ Competition Earnings: $48.00 � �� ��� � �� ��� Competition Earnings: $551.00 ����� ������������ � ����� ������������ � ����� ����� � ����� ����� �

TC What types of companies are you TC What are your favorite 1.) software de- most interested in working for (e.g., velopment tools and 2.) software design TC If you could choose to work for any TC Which TopCoder member do you most size, industry)? Why? tools? company in the world, which would admire and why? HJ Big names like Intel, IBM, Google, HJ 1) Eclipse (rulzzzz), Emacs (rockzzzzz) 2) it be and why? PS snewman because he shows that age Yahoo!, etc. have always attracted Poseidon PS Sun Microsystems because they does not matter. me. I would like to be a part of one TC In your opinion, who is currently the most ������� ����������� ���������� ������� ����������� ���������� invented Java. of them. influential person in technology? TC Please describe a special talent you have HJ I believe, Bill Gates. ����� ��� ������� ������ ����� ��� ������� ������ TC In your opinion, who is currently the (other than programming) or tell us some- TC If you could choose to work for any most influential person in technol- thing about you that would surprise others. ����������� ����� � ������ ����������� ����� �� ������ company in the world, which would TC Reveal your most embarrassing or exciting ogy? PS Once I bench pressed 120 kg (264 lbs). it be and why? coding moment. ����� ���� ������� ������ ����� ���� ������� ������ PS James Gosling HJ Quite difficult to answer. But if I HJ 24 hours before submitting the CVS Client TC What would be your “Dream job”? ����������� ����� � ������ ����������� ����� � ������ get a choice of my own, it would be component has been most exciting. TC Which TopCoder member writes the PS Write Java code all day. � �� ��� � �� ��� Google or Yahoo!. - not because I Coding has never been embarrassing for ����� ������������ � ����� ������������ �� most elegant code during TopCoder visit them daily but because I am me. Its always fun :) competitions? ����� ����� � ����� ����� � really a very great fan of these two. PS snewman

28 Component Competition Finalists - Development Component Competition Finalists - Development 29 DESIGN REVIEW BOARD DEVELOPMENT REVIEW BOARD

WishingBone pzhao

WishingBone graduated from Zhejiang University and Jiazhi Wu pzhao graduated with a BS from Tsinghua University Peng Shao enjoys meeting outstanding programmers world-wide Hangzhou, China in Beijing, China. He competed in ACM 1998 and his Vancouver, Canada through his participation in the review boards Algorithm Rating: 2725 team finished in 7th place in the final round. Pzhao enjoys being a member of the review board because he Algorithm Rating: 1963 Design Rating: 1322 Design Rating: N/A believes testing is crucial to guaranteeing high quality Development Rating: 1290 Development Rating: 1122 Competition Earnings: $5,710.50 software. Competition Earnings: $441.00

kyky AdamSelene

Sergey Kalinichenko kyky graduated from the Moscow Institute of Electronic AdamSelene has reviewed several components Gregory Eldridge Technology with a BS in Computer Engineering and San Francisco, CA including Phonetic Pattern Matching, Java FTP and the Winter Springs, FL also earned an MS in Computer Science from the New Algorithm Rating: 1855 Value Object Generator components. AdamSelene is Jersey Institute of Technology. kyky enjoys being part Algorithm Rating: 1694 Design Rating: 1271 also certifing completed TopCoder components. of the review board because he feels looking at other Design Rating: 797 Development Rating: N/A Development Rating: N/A Competition Earnings: $9,885.00 people’s designs gives him the chance to learn from the thinking that went into the design and that’s in addition Competition Earnings: $1,869.50 to the aesthetic pleasure of looking at good designs.

Ken_Vogel mishagam

Kenneth Vogel Ken Vogel has reviewed over 20 components including mishagam reviews both .NET and Java solutions as a Mikhail Gambarian Lexington, MA .NETand Java submissions. He has also earned over member of the review board. He is also the winning Cayce, SC $3,000 from TopCoder Software by reviewing compo- developer of the .NET Math Expression Evaluator Algorithm Rating: 2189 nents and submitting more than five winning component Algorithm Rating: 1547 Design Rating: 1424 component. designs. Design Rating: 802 Development Rating: N/A Development Rating: 1074 Competition Earnings: $5,689.75 Competition Earnings: $1,100.00

ABOUT THE REVIEW BOARDS

ivern DESIGN REVIEW BOARD Highly rated and experienced TopCoder members fill the ranks of the Architecture Design Review Board. These members screen Javier Fernandez-Ivern ivern has reviewed the DNS Query, Magic Numbers, and review all design submissions to ensure the components meet the functional requirements, are documented properly and contain Cheney, WA Integer Utility and more then 10 other components. the appropriate sequence, use case and class diagrams. Additionally, the Architecture Design Review Board recommends design Ivern has earned over $900 dollars reviewing enhancements and verifies the design is flexible enough to be reused and customized in the future. Algorithm Rating: 1466 components. Design Rating: N/A Development Rating: N/A DEVELOPMENT REVIEW BOARD Competition Earnings: $825.00 TopCoder Software utilizes past component development winners and accomplished TopCoder competitors to staff the Development Review Board. These reviewers verify that each development submission meets the required functionality, coding style, adheres to the component design and contains a suitable test suite. Furthermore, to certify the component belongs in the TopCoder catalog, the development review board adds a suite of test cases including stress, accuracy and failure tests to the component. Component Competition Review Board

30 Review Board Members Review Board Members 31 MEASURING OUR SUCCESS

Total Time Spent Learning and Competing in TopCoder Applet for 2003 142,785 hours online

Visual Basic C# 987 hrs 8,933 hrs

C++ 61,569 hrs Java 71,296 hrs

International Representation Top 10 Countries by Membership (12,386 members from 163 countries) 3000

2500

2000

1500

1000

500

0 n an ed. U. K. India China Canada Poland Australia Germany Swede Pakist Russian F

32 TopCoder Statistics