I am sort of a newbie to all this.I am good with syntaxes and basic data types in C.C++.
I saw a lot of problems in Codechef and when I think of a solution I dont know where to start
From where do u start when u see a problem the first time??
Is it algorithm which u think of,or data types u intend to use or any other?
By seeing all those awesome solutions I sometimes feel scared wether I can ever do things like that?
Everyone is a newbie at some time, so no need to worry
Start solving practice problems, the “easy” ones. They will mainly require array as data structure. But even the easy problems require knowledge of “algorithms”, “data-structures”, and most importantly “maths”.
For algorithms I know 2 excellent books “Introduction to algorithms” by Cormen, and “Algorithms in C” by Sedgewick. Important topics - Dynamic Programming, Graphs, Heaps, Sorting, Searching
You will gain knowledge gradually. And do give your best during live contests.
With experience, you will most of the time, quickly recognize the algorithm and data structure required.