A goodbye letter to 2018

Today, the results for the December 2018 contest came out. I got 409 points in the Gold Division, much better than any of my previous Gold scores but still worse than I expected. As 2018 passes into 2019, I took time to contemplate the difficulties and achievements of the past two years.

2016 - 2017

My first USACO contest in December 2016 went quite smoothly; all of the questions were moderately challenging, but I ended getting all but one correct. That one problem stumped me for quite a while; in the end, I got only half credit for the question. Overall, I got 800 points out of the total 1000 points. However, I was still quite happy knowing I would definitely cross the promotion threshold, which I did.

New Year's came and went, and soon, it was time for my second USACO contest. I was now in the Silver division, a tad harder than the Bronze division but not too much harder; after trying my best, I got 223 points out of the total 1000 points. When the 4-hour timer ran out, I sighed, knowing that I still tried my best.

I soon knew what I needed to improve - I could write code that works on the first try, but normally, this was very rare. Most of the time, my code would not work, and I didn't know how to make it work. Later on, I would come to know and master this process, "debugging".

After much practice, I still felt that I wasn't ready for the next month's competition. However, when I took it, to my great surprise, I almost got every problem correct! At almost full score (967 out of 1000), I was stunned and elated at the same time. Of course, I was promoted to the Gold division.

For the last contest in March, I completely winged it with the knowledge I knew. I only got 1/10 of one problem correct (33 out of 1000), and by pure luck, one of the problems were declared "invalid" by the judges, raising my score to 50 out of 1000.

I spent the rest of the year learning and practicing the algorithms and data structures for the Gold division.

2017 - 2018

I learned a lot about advanced algorithms and data structures, but it still was not enough. My progress was apparent; in the December 2017 contest, I got 200 out of 1000 points. Continuously learning, I slowly crawled up to a peak on February 2018 (324 out of 1000 points) and got a slightly lower score on March, the most difficult competition.

I encountered many difficulties along the way, most notably having algorithms that were too slow no matter what advanced algorithms I used. Along the way, I learned many heuristics I could use to determine how to optimize my code, but they weren't enough; in any Gold contest, I lost hundreds of points on "time limit exceeded" errors, a subtle way of saying my code was too slow.

Over the summer and autumn, I once again learned a lot new things, and I felt I was ready to take on the new year.

2018 +

This December, I got 409 points, my highest every in Gold. I nearly got one whole question correct (before succumbing to an algorithm that was too slow), and it was my highest score in the Gold division. I have high hopes for the rest of the year, and I hope that by the end of 2019, I can be a Platinum division participant. Then and again, by looking at the Gold division promotion charts, I am about 4 to 6 years younger than other (almost) equally-leveled contestants, so I feel that I have plenty of time on my path to the International Olympiad in Informatics.

Comments

Popular posts from this blog

USACO Training "subset": Subset Sums

USACO 2018 Open: Talent Show

OpenJudge 1768: Kadane's Algorithm on 2D Arrays