Friday, November 7, 2003

ACM ICPC Regional Manila 2003

Hello everyone, I'd like to talk about my 5 days in Manila (competing in ACM ICPC Regional Manila).

Day 1, Take off to Manila (4 Nov 2003)

Early in the morning (3 AM) I checked my email for the last time before going to Manila just to say "I'm taking off". I packed my stuff and head straight to the airport. At the airport, we, BiNus Team assemble together (Felix Halim, Christian, Nicholas IS, Thompson SN -> Coach) and with their parents. The flight to Philiphine took 7-8 hours because we have to transit to Singapore. It was a tiring flight.


Me (Felix Halim) and Christian (our TA in Computer Graphics)


Mr. Thompson (Coach) and Nicholas
We are in the plane heading to Manila

At 2 PM, we met with 3 guides from University of Asia and the Pacific (UA&P). Two of them are girls (Sayine and Glyza) and one of them is a boy (Niko). The girls speak English fluently and both of them can drive a car, Wow.

We were escorted by the girls to Richmonde Hotel by a car. I'm surprised that the girl, Glyza drive so easy in the middle of traffic. Hahaha... (I can't drive a car, only motorcycles). We all like the guides and become close to them.

At night we were going to Mega Mall escorted by our loyal guides. The mall is similar to the mall in Jakarta (Indonesia). It kinda useless to buy souvernir here.

After that, we head to McDonald and have dinner together (along with the guides). I love the Spaghetti. It's hard to find Spaghetti in Jakarta :(


We eat dinner together in McDonald! Wow!
Love Ko To artinya I like this

Day 2, Registration and Hawaiian Party (5 Nov 2003)

We feel refreshed after take a bath in Richmonde Hotel (it has hot shower). After doing some training (observing the problems from ACM ICPC at AIZU which is already over then).


We were training using laptops lent by Binus :o

In the afternoon, we, accompanied with the two guides, head to the University of Asia and the Pacific (the guides are the students of UA&P). The contest is held here in this university. Today is the registration day. Matrix Reloaded is played in the theatre to fill the spare time waiting for the team's queue for registration. We got ACM ICPC clothes here.


This is the University of Asia and the Pacific
Where the regional contest is held!

This night we have Hawaiian party! Most of the teams didn't use Hawaiian clothes, only Indonesian teams that wore the brightest clothes.


Hawaian party, we use bright clothes
Sayine and Glyza are at the middle


Our team wear the most funkiest clothes!
Glyza said that I look like Jackie Chan when I was laughing hard :O


Picture with STT Telkom's Team at the back

Also in hawaiian party, they held a game and they serve some food, Spaghettiiiii... I ate a lot! One plate full of Spaghetti. It's a pity that people that queue at the back didn't get the Spaghetti :-O And for the most funkiest, brightest clotes got a doll called "poring" in Ragnarok.


Those who wear the most funkiest clothes will get a reward
The reward is a doll, called "poring" in Ragnarok :-)

After that we head to Richmonde Hotel to take a rest.

Day 3, Trial and Run (6 Nov 2003)

Today we were going to UA&P (Univ of Asia and the Pacific) to test and familiarize the computers that will be used in the contest. We tried to submit several test problems using PC^2 and try using different compilers. Although several bugs occurred, its been fixed by tomorrow.


We are testing the PC^2 and the compilers
Also try to submit problems given for the trial session

When trial and run session has over, we entered the theatre to discuss the error occurred during the trial and run session. Just before that, a movie "Terminator 3" is played for waiting the contestants assembled in the thethre.

After that, we were going to Shangri-La Mall to have dinner. It was a big mall. We take a walk to the book store there, and found something unusual! There is no comix book such as Conan, Kindaichi, Kungfu Boy, Dragon Ball, Pitcher, Harlem Beat, etc.. But the good thing is, the books for Computer Science & others are cheaper compared to the books in Indonesia.


We, again accompanied with the two guides who are very nice and pretty...
The girl at the right is Glyza, one of our guide. She is pretty, isn't she?


We are eating in Shangrila Mall (Richmonde doesn't provide dinner!)
The girl at the left is Sayine, also one of our guide

Day 4, Contest Proper (7 Nov 2003)

Today is the contest day! After warming up with problems from Aizu and India which is very hard, we went straight to the UA&P for registration and head to the Lab for contest.

When the contest starts, we immediately search for the easiest problem :)

Our first solved problem

It is decided that problem A is the most easiest one. But we had 4 wrong answer before got it Accepted! It's all because of floating point error! Here is the problem: sometimes the result of division is not exactly a whole number, but really close to the whole number. And because the expected result is the truncated result of the division, we always have wrong integer as the output (always less 1 than the expected output).

Example: the result of the division is 5.999999999999999999999

The correct answer is 6. But if you truncate the result it would result 5!!!!

The solution is to add EPSILON 0.000000001 to the result: 5.99999999999999 + 0.0000000000001 = 6.0000000000001 and then the result is truncated become 6 which is correct... Piyuh!!!

Our second solved problem

The second easiest problem after problem A is problem C. It is easy but take some time to code!

The problem is to search a word in 3 dimensional matrix and find the previous or the next word after the searched word. It has 26 directions!

At first, I solve this using 1 function for 1 direction. After I realize that there are 26 directions, I give up and rewrite all the code from scratch. I changed it to recursion with 26 branches. But I forgot to add some directions until Nicholas and Christian spoke about direction that going up :)

We submit this problem 3 times to get it Accepted!

Our third solved problem

Contest nearly over, we spent too much time on problem A and C. Near the end of the contest, we submit 2 problems: H and B. Christian and Nicholas solve problem H, and I solve problem B.

Problem B is also a recursion problem! The problem is: given the interconnection of the atoms in two hydrocarbon molecules. Determine if the two hydrocarbon molecule are identical or not.

Our solution was: determine the root for the first molecule (molecule can be represented by tree data structure), then brute force for the root for the second molecule and each root for the second molecule, we compare it with the first molecule. If all the interconnection from the root to the leaf is exactly the same, then the molecules are identical, and the algorithm stops here.

This problem is the critical problem! If only we didn't solve this problem, BiNus wouldn't have reached 9'th position. Maybe we'll be dropped from the Top 10.

Recursion problem is really hard to debug, we encounter problems during debugging this problem. Fortunately, in the last minutes, our program gave the correct answer for the sample input (ONLY). The contest will be over in 1 minute! I don't have time to test the program for another testcase! Hurriedly, I submit the code to the judge (two times using different compilers, Turbo C++ and GNU C++). We didn't know the judge reply because the contest is over and the PC^2 is not functioning anymore.

Before I submit problem B, Christian & Nicholas submit problem H. So, in the last minutes, there are 2 problems that were submitted: B dan H. We are all very curious about the result!

The ranklist was beeing freeze so we can't see the standings. Our team was at 8'th position and we are sure if the last 2 problems we submit are all wrong, then we will be dropped from the Top 10!

Sayine & Glyza congratulate us after the contest was over, that relaxed us a bit.

Then the Coaches assembled in Coach Briefing, to introduce the Judges. We then took our "Almamater" jacket at Richmonde Hotel (who knows that we'll be in Top 10). Then head back to UA&P for the AWARDS NIGHT.


We are in awards night now
We are sitting at the VIP seats :)

The universities are called from the bottom to the first. We are hoping that our team is not called before Top 10. And YESS, our team is not called!

The Top 10 teams are asked to go to the podium to receive Certificate and gift from IBM (we got ballpoint and pencil).


Our team go up to the podium : (Mr. Thompson, Christian, Felix Halim, and Nicholas)
Certificates and IBM gift (ballpoint and pencil) are hold by Mr. Thompson

After Awards Night, we took a rest. But, we are really curious about the last 2 problems submitted! We are not sure which problem (B or H) is accepted! But we know one of them is accepted since the announcement said that BiNus solved 3 problems.

This night Sayine wanted to go home, this is our last picture with Sayine.


Our last meeting with Sayine, our nice guide.


Take photos with Parahyangan University, we all happy
This picture take place in Richmonde Hotel


These photos is taken after contest (look at the balloons!)
Take last picture with Glyza, our nice guide.

Day 5, Fly back to Jakarta (8 Nov 2003)

Early in the morning, we heard news about TERRORISTS at Manila airport! Fortunately, they manage to secure the area before we went to the airport in the afternoon.


This is the last picture (taken by Glyza)
Also this is the last meeting with Glyza, our nice guide.
The picture is taken outside the Richmonde Hotel

Don't know why we have to arrive 4 hours earlier before departure. We are quite bored then. Fortunately there are laptops. I could spent the time with the laptops. Christian and Nicholas played the Magic the Gathering :)

In the plane, it was bad. I cannot sleep well, besides, about which problem (B or H) is accepted still bothering my mind. And to make it worse, we have to transit to Singapore.


This is in Changi Airport (we have to transit here!)


We don't have work to do, just taking the picture... heheheh..


In the plane, we are heading home... Jakarta, we are coming!


We have arrived safely at the Soekarno Hatta Airport
The picture is blur because we take the picture on the moving escalator :-P

At last, we arrive in Jakarta safely with a little headache. And after I arrived home, I immediately check which problem is accepted to completely remove my curiousity and also saying "I'm BACK" to my friends.

Apparently, problem B is the accepted one (the problem that finds out if the two molecules are identical or not).

YEAH!!! I was screaming then! It denotes that my recursion is correct in the first attempt!

Imagine that near the end of the contest, I only check my program using sample input and submit it at the last 1 minute) and got accepted. It seems that I still have sharp mind about recursion.

Besides, Nicholas and Christian help a lot during the contest time. At least they found the idea to add EPSILON 0.0000001 in solving problem A! If they didn't find the error, my mental would be down and I woudln't have enough courage to continue to solve other problems. Thanks for Nicholas and Christian, although they didn't get accepted in problem H, at least they help to build up my spirit again :-)

Next year our team will have new personel and hopefully we'll enter the WORLD FINAL!!! :)

The End