Introduction

Aadam
Competitive Programming
3 min readJul 17, 2016

First of all, let me introduce the purpose of this publication and what can you expect from it. Speaking of expectations, you can’t expect anything about a product beforehand, if you don’t know anything about its creator. For example, if you know a theory was proposed by Einstein, then automatically you’ll expect it to be good. The question of it being actually good or not comes later. Similarly, if you find a theory proposed by someone you’ve never even heard of, you won’t expect much from it. So, for that purpose, I’ll first introduce myself:

Who am I?

My name is Aadam and I am from Pakistan. I am currently pursuing a Graduate degree in Computer Science from University of Haripur (UOH) and expect it to be completed in 2018. In my 1st semester at the University, I was given the honor to become the youngest student ever to participate in a Speed Programming competition from my University. Although, at that time, I didn’t know any advanced programming concepts (hell I didn’t even know what Object Oriented Programming was)and didn’t know anything about Data Structures and Algorithms, I was still chosen by my prestigious teacher because of my passion for programming and my track record , as I was very good in programming assignments and could easily pick up new concepts and solve problems. What’s more amazing is that I was able to secure the third position for my University in that competition. Now, I don’t know whether the problems were too easy or I was too good, although I believe it was the former, but it was a huge deal for me and gave me a lot of confidence. After that, I’ve participated in many programming competitions and was able to secure a position or two.

What to expect

I am somewhat better in solving programming problems than other students at my University, but looking at the online competition sites like TopCoder, CodeForces etc. and reading some of the ACM ICPC problem statements, I realize that I am no good at all. I’m like a figure among ciphers, and I have a long journey ahead of me to become a good Competitive Programmer.

I have taken the Data Structure and Algorithms course in the University, but it was no good at all, at least for me, because in the whole 2 semesters, there wasn’t even a single program explained in the lectures or given as an assignment. It was too basic, as there was no introduction to the Dynamic programming and many basic algorithms, which are quite necessary for Competitive Programming nowadays, were simply neglected. So, now I have to do this all by myself, either by taking online courses or by reading books or most probably, by doing both.

Here I’ll show the courses I’m taking, the books I’m reading and the problems that I’m solving in order to achieve my goal i-e to become a “red” belt TopCoder and an above average Competitive Programmer. This is going to be a diary, of sorts, where I’ll document the hurdles I surpass and the paths I choose, in order to reach my destiny. I’ll visit many worlds (online competition sites) along the way and document the treasures (advantages) and traps (disadvantages) they have in store. And most of all, I’ll also list here, the magic spells (source code) that I’ve used to slay or stun many beasts (programming problems) that I encounter on my journey and there are going to be a lot of spells, each unique and different from the other, as there are monsters.

Wish me luck as I embark on this thrilling adventure so I could reach my desired destination. And if you want to tag along with me, I’d certainly appreciate it. It’s good to have a companion on a long journey.

--

--

Aadam
Competitive Programming

I am a passionate individual with a zest for knowledge which drives me to learn about new concepts and technologies.