Recently, I have started solving problems consistently but faced a major issue, that I am unable to make logics more efficiently. Like, whenever I starts solving some problem, I read it twice or thrice then heading towards making the code, which I am good at. But, after solving whenever I see the tutorials or the solutions, I often finds myself making a too much large codes, which is not even needed. Just a small piece of code with a little bit of conditions on it, and BOOM! code runs.
I don't know where am I lacking, either I should focus on complex mathematics, so that I could figure out loop holes (LOL), or I should work on how should I find the most easiest way to solve the problem. However, its been 2 years I've started programming and solved many problem either on HackerRank, or some random questions from Books, but not when i have started on CodeForces, I sometimes feel like I haven't practiced anything till now.
Although, finding these difficulties is common for a new programmer, but now I want to know how can I improve myself and how can I make my codes or solutions more precise and efficient which takes less time, space, and most concerning — lesser lines of code.
If the reader have some tips, tricks, or some suggestion then do let me know, as now I am eager to learn more of them.