Hello I am a first year student and at the start of the year I sign up for an extracurricular( I don't know how to translate from Romanian) which was "Competitive programming". I started working on codeforces and another Romanian websites problems to better myself. However since that in the 11th and 12th grade I needed to fast forward all the basic C++ algorithms and data structeres so I can pass my national exam and the admission exam for my university I wasn't able to focus on learning C++ for CP. Now, I work in my free time codeforces problems and participated in a few contests, but I am dissapointed in me, because I don't seem to improve. My question is how can I get better or evolve myself? Are there websites or books where I can learn or practice? Or do I just keep doing problems and learn form mistakes or tutorials?

Just DON'T solve any more 800 rated problem...solve 40/50 problem from 900,1000,1100 serially... if you don't feel comfortable after solving 50 problem from any rating then you can solve 10/20 more. Soon you will reach Pupil.... :)

So I should challenge myself on harder problems? I mean I could give it a try, thank you!

yep

learn some topics to master the basics first and after that keep practicing and learning new advanced topics then you will see that you are getting better and your rate will increase that will push you to complete what you have started and reach high ratings but really at the begging of CP its very difficult and disappointing with learning and practicing you will be good

ImportantReview This

Avoid These Mistakes

Thank you so much for those resources!

No problem bro You're Welcome

solve 4-5 problems per day) it will be enough if you still have studies

That is what I am trying to do, but as mentioned in other comments I should do harder problems to learn more

exactly

try to solve problems with a difficulty greater than 1800 (of any subject) for a time of 1 to 2 hours (I do it 1 hour) if you do not find any solution or have no idea, learn algorithms if you think it can help you, try 45 minutes more to solve the problem, and if you get nothing, ask for help or read the editorial (reading the editorial is not the same as reading code) and try again to solve the problem, if you get nothing then change the problem for a while and keep learning new techniques.

I have done that and it has worked for me when learning DP, you can decrease the difficulty of the problems but I recommend that you do not do less than 1500.

you can practice in Stepik, in this course