I'm just starting my first semester in computer science and have been practicing LeetCode every couple of days. I'm curious about competitive programming (CP), but I've noticed that most people I know who do CP have backgrounds in math Olympiads, which I don't have. Although I enjoy solving problems on LeetCode, I often find it time-consuming and I feel like I'm still a beginner without sufficient knowledge in data structures and algorithms (I've only done CS50 for that). Some of my peers say I should jump into CP right away, but I've read online that it's better to be comfortable with medium-level LeetCode problems before starting CP. This has left me feeling confused and a bit unworthy compared to those who do CP. Any advice?
3 Answers
I think you might be confusing CP with CrossFit. Competitive programming is about solving algorithmic challenges, while CrossFit is a fitness routine. Stick with learning CP if that’s what you’re interested in!
First off, CP stands for competitive programming, not what you're jokingly implying. It’s actually a common term in the programming community. As for whether you should jump in, starting competitive programming now can be beneficial, but make sure you keep practicing LeetCode to build your foundation at the same time. Balance is key!
Absolutely, you should start competitive programming! It’s a great way to improve your problem-solving skills. Just remember to take it at your own pace and enjoy the journey rather than compare yourself to others. Everyone starts somewhere, and the CP community can be really supportive!
Yeah, starting now will only benefit you! The skills you learn will definitely help with LeetCode too.
Exactly! A mix of both can really enhance your skills!